Qt 4.8
Public Functions | Protected Functions | Friends | List of all members
QTextTableFormat Class Reference

The QTextTableFormat class provides formatting information for tables in a QTextDocument. More...

#include <qtextformat.h>

Inheritance diagram for QTextTableFormat:
QTextFrameFormat QTextFormat

Public Functions

Qt::Alignment alignment () const
 Returns the table's alignment. More...
 
qreal cellPadding () const
 Returns the table's cell padding. More...
 
qreal cellSpacing () const
 Returns the table's cell spacing. More...
 
void clearColumnWidthConstraints ()
 Clears the column width constraints for the table. More...
 
int columns () const
 Returns the number of columns specified by the table format. More...
 
QVector< QTextLengthcolumnWidthConstraints () const
 Returns a list of constraints used by this table format to control the appearance of columns in a table. More...
 
int headerRowCount () const
 Returns the number of rows in the table that define the header. More...
 
bool isValid () const
 Returns true if this table format is valid; otherwise returns false. More...
 
 QTextTableFormat ()
 Constructs a new table format object. More...
 
void setAlignment (Qt::Alignment alignment)
 Sets the table's alignment. More...
 
void setCellPadding (qreal padding)
 Sets the cell padding for the table. More...
 
void setCellSpacing (qreal spacing)
 Sets the cell spacing for the table. More...
 
void setColumns (int columns)
 Sets the number of columns required by the table format. More...
 
void setColumnWidthConstraints (const QVector< QTextLength > &constraints)
 Sets the column width constraints for the table. More...
 
void setHeaderRowCount (int count)
 Declares the first count rows of the table as table header. More...
 
- Public Functions inherited from QTextFrameFormat
qreal border () const
 Returns the width of the border in pixels. More...
 
QBrush borderBrush () const
 Returns the brush used for the frame's border. More...
 
BorderStyle borderStyle () const
 Returns the style of the frame's border. More...
 
qreal bottomMargin () const
 Returns the width of the frame's bottom margin in pixels. More...
 
QTextLength height () const
 Returns the height of the frame's border rectangle. More...
 
bool isValid () const
 Returns true if the format description is valid; otherwise returns false. More...
 
qreal leftMargin () const
 Returns the width of the frame's left margin in pixels. More...
 
qreal margin () const
 Returns the width of the frame's external margin in pixels. More...
 
qreal padding () const
 Returns the width of the frame's internal padding in pixels. More...
 
PageBreakFlags pageBreakPolicy () const
 Returns the currently set page break policy for the frame/table. More...
 
Position position () const
 Returns the positioning policy for frames with this frame format. More...
 
 QTextFrameFormat ()
 Constructs a text frame format object with the default properties. More...
 
qreal rightMargin () const
 Returns the width of the frame's right margin in pixels. More...
 
void setBorder (qreal border)
 Sets the width (in pixels) of the frame's border. More...
 
void setBorderBrush (const QBrush &brush)
 Sets the brush used for the frame's border. More...
 
void setBorderStyle (BorderStyle style)
 Sets the style of the frame's border. More...
 
void setBottomMargin (qreal margin)
 Sets the frame's bottom margin in pixels. More...
 
void setHeight (qreal height)
 Sets the frame's height. More...
 
void setHeight (const QTextLength &height)
 Sets the frame's height. More...
 
void setLeftMargin (qreal margin)
 Sets the frame's left margin in pixels. More...
 
void setMargin (qreal margin)
 Sets the frame's margin in pixels. More...
 
void setPadding (qreal padding)
 Sets the width of the frame's internal padding in pixels. More...
 
void setPageBreakPolicy (PageBreakFlags flags)
 Sets the page break policy for the frame/table to policy. More...
 
void setPosition (Position f)
 Sets the policy for positioning frames with this frame format. More...
 
void setRightMargin (qreal margin)
 Sets the frame's right margin in pixels. More...
 
void setTopMargin (qreal margin)
 Sets the frame's top margin in pixels. More...
 
void setWidth (qreal width)
 Convenience method that sets the width of the frame's border rectangle's width to the specified fixed width. More...
 
void setWidth (const QTextLength &length)
 Sets the frame's border rectangle's width. More...
 
qreal topMargin () const
 Returns the width of the frame's top margin in pixels. More...
 
QTextLength width () const
 Returns the width of the frame's border rectangle. More...
 
- Public Functions inherited from QTextFormat
QBrush background () const
 Returns the brush used to paint the document's background. More...
 
bool boolProperty (int propertyId) const
 Returns the value of the property specified by propertyId. More...
 
QBrush brushProperty (int propertyId) const
 Returns the value of the property given by propertyId; if the property isn't of QVariant::Brush type, Qt::NoBrush is returned instead. More...
 
void clearBackground ()
 Clears the brush used to paint the document's background. More...
 
void clearForeground ()
 Clears the brush used to paint the document's foreground. More...
 
void clearProperty (int propertyId)
 Clears the value of the property given by propertyId. More...
 
QColor colorProperty (int propertyId) const
 Returns the value of the property given by propertyId; if the property isn't of QVariant::Color type, an invalid color is returned instead. More...
 
qreal doubleProperty (int propertyId) const
 Returns the value of the property specified by propertyId. More...
 
QBrush foreground () const
 Returns the brush used to render foreground details, such as text, frame outlines, and table borders. More...
 
bool hasProperty (int propertyId) const
 Returns true if the text format has a property with the given propertyId; otherwise returns false. More...
 
int intProperty (int propertyId) const
 Returns the value of the property specified by propertyId. More...
 
bool isBlockFormat () const
 Returns true if this text format is a BlockFormat; otherwise returns false. More...
 
bool isCharFormat () const
 Returns true if this text format is a CharFormat; otherwise returns false. More...
 
bool isFrameFormat () const
 Returns true if this text format is a FrameFormat; otherwise returns false. More...
 
bool isImageFormat () const
 Returns true if this text format is an image format; otherwise returns false. More...
 
bool isListFormat () const
 Returns true if this text format is a ListFormat; otherwise returns false. More...
 
bool isTableCellFormat () const
 Returns true if this text format is a TableCellFormat; otherwise returns false. More...
 
bool isTableFormat () const
 Returns true if this text format is a TableFormat; otherwise returns false. More...
 
bool isValid () const
 Returns true if the format is valid (i. More...
 
Qt::LayoutDirection layoutDirection () const
 Returns the document's layout direction. More...
 
QTextLength lengthProperty (int propertyId) const
 Returns the value of the property given by propertyId. More...
 
QVector< QTextLengthlengthVectorProperty (int propertyId) const
 Returns the value of the property given by propertyId. More...
 
void merge (const QTextFormat &other)
 Merges the other format with this format; where there are conflicts the other format takes precedence. More...
 
int objectIndex () const
 Returns the index of the format object, or -1 if the format object is invalid. More...
 
int objectType () const
 Returns the text format's object type. More...
 
 operator QVariant () const
 Returns the text format as a QVariant. More...
 
bool operator!= (const QTextFormat &rhs) const
 Returns true if this text format is different from the other text format. More...
 
QTextFormatoperator= (const QTextFormat &rhs)
 Assigns the other text format to this text format, and returns a reference to this text format. More...
 
bool operator== (const QTextFormat &rhs) const
 Returns true if this text format is the same as the other text format. More...
 
QPen penProperty (int propertyId) const
 Returns the value of the property given by propertyId; if the property isn't of QVariant::Pen type, Qt::NoPen is returned instead. More...
 
QMap< int, QVariantproperties () const
 Returns a map with all properties of this text format. More...
 
QVariant property (int propertyId) const
 Returns the property specified by the given propertyId. More...
 
int propertyCount () const
 Returns the number of properties stored in the format. More...
 
 QTextFormat ()
 Creates a new text format with an InvalidFormat. More...
 
 QTextFormat (int type)
 Creates a new text format of the given type. More...
 
 QTextFormat (const QTextFormat &rhs)
 Creates a new text format with the same attributes as the other text format. More...
 
void setBackground (const QBrush &brush)
 Sets the brush use to paint the document's background to the brush specified. More...
 
void setForeground (const QBrush &brush)
 Sets the foreground brush to the specified brush. More...
 
void setLayoutDirection (Qt::LayoutDirection direction)
 Sets the document's layout direction to the specified direction. More...
 
void setObjectIndex (int object)
 Sets the format object's object index. More...
 
void setObjectType (int type)
 Sets the text format's object type to type. More...
 
void setProperty (int propertyId, const QVariant &value)
 Sets the property specified by the propertyId to the given value. More...
 
void setProperty (int propertyId, const QVector< QTextLength > &lengths)
 Sets the value of the property given by propertyId to value. More...
 
QString stringProperty (int propertyId) const
 Returns the value of the property given by propertyId; if the property isn't of QVariant::String type, an empty string is returned instead. More...
 
QTextBlockFormat toBlockFormat () const
 Returns this format as a block format. More...
 
QTextCharFormat toCharFormat () const
 Returns this format as a character format. More...
 
QTextFrameFormat toFrameFormat () const
 Returns this format as a frame format. More...
 
QTextImageFormat toImageFormat () const
 Returns this format as an image format. More...
 
QTextListFormat toListFormat () const
 Returns this format as a list format. More...
 
QTextTableCellFormat toTableCellFormat () const
 Returns this format as a table cell format. More...
 
QTextTableFormat toTableFormat () const
 Returns this format as a table format. More...
 
int type () const
 Returns the type of this format. More...
 
 ~QTextFormat ()
 Destroys this text format. More...
 

Protected Functions

 QTextTableFormat (const QTextFormat &fmt)
 Creates a new table format with the same attributes as the given text format. More...
 
- Protected Functions inherited from QTextFrameFormat
 QTextFrameFormat (const QTextFormat &fmt)
 Creates a new frame format with the same attributes as the given text format. More...
 

Friends

class QTextFormat
 

Additional Inherited Members

- Public Types inherited from QTextFrameFormat
enum  BorderStyle {
  BorderStyle_None, BorderStyle_Dotted, BorderStyle_Dashed, BorderStyle_Solid,
  BorderStyle_Double, BorderStyle_DotDash, BorderStyle_DotDotDash, BorderStyle_Groove,
  BorderStyle_Ridge, BorderStyle_Inset, BorderStyle_Outset
}
 This enum describes different border styles for the text frame. More...
 
enum  Position { InFlow, FloatLeft, FloatRight }
 This enum describes how a frame is located relative to the surrounding text. More...
 
- Public Types inherited from QTextFormat
enum  FormatType {
  InvalidFormat = -1, BlockFormat = 1, CharFormat = 2, ListFormat = 3,
  TableFormat = 4, FrameFormat = 5, UserFormat = 100
}
 This enum describes the text item a QTextFormat object is formatting. More...
 
enum  ObjectTypes {
  NoObject, ImageObject, TableObject, TableCellObject,
  UserObject = 0x1000
}
 This enum describes what kind of QTextObject this format is associated with. More...
 
enum  PageBreakFlag { PageBreak_Auto = 0, PageBreak_AlwaysBefore = 0x001, PageBreak_AlwaysAfter = 0x010 }
 This enum describes how page breaking is performed when printing. More...
 
enum  Property {
  ObjectIndex = 0x0, CssFloat = 0x0800, LayoutDirection = 0x0801, OutlinePen = 0x810,
  BackgroundBrush = 0x820, ForegroundBrush = 0x821, BackgroundImageUrl = 0x823, BlockAlignment = 0x1010,
  BlockTopMargin = 0x1030, BlockBottomMargin = 0x1031, BlockLeftMargin = 0x1032, BlockRightMargin = 0x1033,
  TextIndent = 0x1034, TabPositions = 0x1035, BlockIndent = 0x1040, LineHeight = 0x1048,
  LineHeightType = 0x1049, BlockNonBreakableLines = 0x1050, BlockTrailingHorizontalRulerWidth = 0x1060, FirstFontProperty = 0x1FE0,
  FontCapitalization = FirstFontProperty, FontLetterSpacing = 0x1FE1, FontWordSpacing = 0x1FE2, FontStyleHint = 0x1FE3,
  FontStyleStrategy = 0x1FE4, FontKerning = 0x1FE5, FontHintingPreference = 0x1FE6, FontFamily = 0x2000,
  FontPointSize = 0x2001, FontSizeAdjustment = 0x2002, FontSizeIncrement = FontSizeAdjustment, FontWeight = 0x2003,
  FontItalic = 0x2004, FontUnderline = 0x2005, FontOverline = 0x2006, FontStrikeOut = 0x2007,
  FontFixedPitch = 0x2008, FontPixelSize = 0x2009, LastFontProperty = FontPixelSize, TextUnderlineColor = 0x2010,
  TextVerticalAlignment = 0x2021, TextOutline = 0x2022, TextUnderlineStyle = 0x2023, TextToolTip = 0x2024,
  IsAnchor = 0x2030, AnchorHref = 0x2031, AnchorName = 0x2032, ObjectType = 0x2f00,
  ListStyle = 0x3000, ListIndent = 0x3001, ListNumberPrefix = 0x3002, ListNumberSuffix = 0x3003,
  FrameBorder = 0x4000, FrameMargin = 0x4001, FramePadding = 0x4002, FrameWidth = 0x4003,
  FrameHeight = 0x4004, FrameTopMargin = 0x4005, FrameBottomMargin = 0x4006, FrameLeftMargin = 0x4007,
  FrameRightMargin = 0x4008, FrameBorderBrush = 0x4009, FrameBorderStyle = 0x4010, TableColumns = 0x4100,
  TableColumnWidthConstraints = 0x4101, TableCellSpacing = 0x4102, TableCellPadding = 0x4103, TableHeaderRowCount = 0x4104,
  TableCellRowSpan = 0x4810, TableCellColumnSpan = 0x4811, TableCellTopPadding = 0x4812, TableCellBottomPadding = 0x4813,
  TableCellLeftPadding = 0x4814, TableCellRightPadding = 0x4815, ImageName = 0x5000, ImageWidth = 0x5010,
  ImageHeight = 0x5011, FullWidthSelection = 0x06000, PageBreakPolicy = 0x7000, UserProperty = 0x100000
}
 This enum describes the different properties a format can have. More...
 

Detailed Description

The QTextTableFormat class provides formatting information for tables in a QTextDocument.

Note
This class or function is reentrant.

A table is a group of cells ordered into rows and columns. Each table contains at least one row and one column. Each cell contains a block. Tables in rich text documents are formatted using the properties defined in this class.

Tables are horizontally justified within their parent frame according to the table's alignment. This can be read with the alignment() function and set with setAlignment().

Cells within the table are separated by cell spacing. The number of pixels between cells is set with setCellSpacing() and read with cellSpacing(). The contents of each cell is surrounded by cell padding. The number of pixels between each cell edge and its contents is set with setCellPadding() and read with cellPadding().

qtexttableformat-cell.png

The table's background color can be read with the background() function, and can be specified with setBackground(). The background color of each cell can be set independently, and will control the color of the cell within the padded area.

The table format also provides a way to constrain the widths of the columns in the table. Columns can be assigned a fixed width, a variable width, or a percentage of the available width (see QTextLength). The columns() function returns the number of columns with constraints, and the columnWidthConstraints() function returns the constraints defined for the table. These quantities can also be set by calling setColumnWidthConstraints() with a vector containing new constraints. If no constraints are required, clearColumnWidthConstraints() can be used to remove them.

See also
QTextTable QTextTableCell QTextLength

Definition at line 842 of file qtextformat.h.

Constructors and Destructors

◆ QTextTableFormat() [1/2]

QTextTableFormat::QTextTableFormat ( )

Constructs a new table format object.

Definition at line 3262 of file qtextformat.cpp.

3263  : QTextFrameFormat()
3264 {
3266  setCellSpacing(2);
3267  setBorder(1);
3268 }
void setBorder(qreal border)
Sets the width (in pixels) of the frame&#39;s border.
Definition: qtextformat.h:816
QTextFrameFormat()
Constructs a text frame format object with the default properties.
void setObjectType(int type)
Sets the text format&#39;s object type to type.
Definition: qtextformat.h:367
void setCellSpacing(qreal spacing)
Sets the cell spacing for the table.
Definition: qtextformat.h:864

◆ QTextTableFormat() [2/2]

QTextTableFormat::QTextTableFormat ( const QTextFormat other)
explicitprotected

Creates a new table format with the same attributes as the given text format.

Warning
This function is not part of the public interface.

Definition at line 3280 of file qtextformat.cpp.

3281  : QTextFrameFormat(fmt)
3282 {
3283 }
QTextFrameFormat()
Constructs a text frame format object with the default properties.

Functions

◆ alignment()

Qt::Alignment QTextTableFormat::alignment ( ) const
inline

Returns the table's alignment.

See also
setAlignment()

Definition at line 872 of file qtextformat.h.

Referenced by QTextHtmlExporter::emitTable(), and QTextDocumentLayoutPrivate::layoutFlow().

873  { return QFlag(intProperty(BlockAlignment)); }
The QFlag class is a helper data type for QFlags.
Definition: qglobal.h:2289
int intProperty(int propertyId) const
Returns the value of the property specified by propertyId.

◆ cellPadding()

qreal QTextTableFormat::cellPadding ( ) const
inline

Returns the table's cell padding.

This describes the distance between the border of a cell and its contents.

Definition at line 867 of file qtextformat.h.

Referenced by QTextHtmlExporter::emitTable(), and QTextDocumentLayoutPrivate::layoutTable().

868  { return doubleProperty(TableCellPadding); }
qreal doubleProperty(int propertyId) const
Returns the value of the property specified by propertyId.

◆ cellSpacing()

qreal QTextTableFormat::cellSpacing ( ) const
inline

Returns the table's cell spacing.

This describes the distance between adjacent cells.

Definition at line 862 of file qtextformat.h.

Referenced by QTextHtmlExporter::emitTable(), and QTextDocumentLayoutPrivate::layoutTable().

863  { return doubleProperty(TableCellSpacing); }
qreal doubleProperty(int propertyId) const
Returns the value of the property specified by propertyId.

◆ clearColumnWidthConstraints()

void QTextTableFormat::clearColumnWidthConstraints ( )
inline

Clears the column width constraints for the table.

See also
columnWidthConstraints() setColumnWidthConstraints()

Definition at line 859 of file qtextformat.h.

Referenced by QTextCopyHelper::copy().

void clearProperty(int propertyId)
Clears the value of the property given by propertyId.

◆ columns()

int QTextTableFormat::columns ( ) const
inline

Returns the number of columns specified by the table format.

Definition at line 849 of file qtextformat.h.

Referenced by QTextTable::insertColumns(), and QTextTable::removeColumns().

850  { int cols = intProperty(TableColumns); if (cols == 0) cols = 1; return cols; }
int intProperty(int propertyId) const
Returns the value of the property specified by propertyId.

◆ columnWidthConstraints()

QVector< QTextLength > QTextTableFormat::columnWidthConstraints ( ) const
inline

Returns a list of constraints used by this table format to control the appearance of columns in a table.

See also
setColumnWidthConstraints()

Definition at line 856 of file qtextformat.h.

Referenced by QTextHtmlExporter::emitTable(), QTextTable::insertColumns(), QTextDocumentLayoutPrivate::layoutTable(), and QTextTable::removeColumns().

QVector< QTextLength > lengthVectorProperty(int propertyId) const
Returns the value of the property given by propertyId.

◆ headerRowCount()

int QTextTableFormat::headerRowCount ( ) const
inline

Returns the number of rows in the table that define the header.

Since
4.2
See also
setHeaderRowCount()

Definition at line 877 of file qtextformat.h.

Referenced by QTextDocumentLayoutPrivate::drawFrame(), QTextDocumentLayoutPrivate::drawTableCell(), QTextHtmlExporter::emitTable(), and QTextDocumentLayoutPrivate::layoutTable().

878  { return intProperty(TableHeaderRowCount); }
int intProperty(int propertyId) const
Returns the value of the property specified by propertyId.

◆ isValid()

bool QTextTableFormat::isValid ( ) const
inline

Returns true if this table format is valid; otherwise returns false.

Definition at line 847 of file qtextformat.h.

847 { return isTableFormat(); }
bool isTableFormat() const
Returns true if this text format is a TableFormat; otherwise returns false.
Definition: qtextformat.h:323

◆ setAlignment()

void QTextTableFormat::setAlignment ( Qt::Alignment  alignment)
inline

Sets the table's alignment.

See also
alignment()

Definition at line 895 of file qtextformat.h.

Referenced by QTextHtmlImporter::scanTable().

896 { setProperty(BlockAlignment, int(aalignment)); }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

◆ setCellPadding()

void QTextTableFormat::setCellPadding ( qreal  padding)
inline

Sets the cell padding for the table.

This determines the distance between the border of a cell and its contents.

Definition at line 892 of file qtextformat.h.

Referenced by QTextHtmlImporter::scanTable().

893 { setProperty(TableCellPadding, apadding); }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

◆ setCellSpacing()

void QTextTableFormat::setCellSpacing ( qreal  spacing)
inline

Sets the cell spacing for the table.

This determines the distance between adjacent cells.

Definition at line 864 of file qtextformat.h.

Referenced by QTextTableFormat(), and QTextHtmlImporter::scanTable().

865  { setProperty(TableCellSpacing, spacing); }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

◆ setColumns()

void QTextTableFormat::setColumns ( int  columns)
inline

Sets the number of columns required by the table format.

Warning
This function is not part of the public interface.
See also
columns()

Definition at line 885 of file qtextformat.h.

Referenced by QTextCopyHelper::copy(), QTextTablePrivate::createTable(), QTextTable::insertColumns(), QTextTable::removeColumns(), QTextHtmlImporter::scanTable(), and QTextTable::setFormat().

886 {
887  if (acolumns == 1)
888  acolumns = 0;
889  setProperty(TableColumns, acolumns);
890 }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

◆ setColumnWidthConstraints()

void QTextTableFormat::setColumnWidthConstraints ( const QVector< QTextLength > &  constraints)
inline

Sets the column width constraints for the table.

See also
columnWidthConstraints() clearColumnWidthConstraints()

Definition at line 853 of file qtextformat.h.

Referenced by QTextTable::insertColumns(), QTextTable::removeColumns(), and QTextHtmlImporter::scanTable().

854  { setProperty(TableColumnWidthConstraints, constraints); }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

◆ setHeaderRowCount()

void QTextTableFormat::setHeaderRowCount ( int  count)
inline

Declares the first count rows of the table as table header.

Since
4.2

The table header rows get repeated when a table is broken across a page boundary.

Definition at line 875 of file qtextformat.h.

Referenced by QTextHtmlImporter::scanTable().

876  { setProperty(TableHeaderRowCount, count); }
void setProperty(int propertyId, const QVariant &value)
Sets the property specified by the propertyId to the given value.

Friends and Related Functions

◆ QTextFormat

friend class QTextFormat
friend

Definition at line 882 of file qtextformat.h.


The documentation for this class was generated from the following files: