QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Public Types | Public Slots | Public Member Functions | List of all members
QgsComposerHtml Class Reference

#include <qgscomposerhtml.h>

Inheritance diagram for QgsComposerHtml:
Inheritance graph
[legend]

Public Types

enum  ContentMode { Url, ManualHtml }
 Source modes for the HTML content to render in the item. More...
 
- Public Types inherited from QgsComposerMultiFrame
enum  ResizeMode { UseExistingFrames = 0, ExtendToNextPage, RepeatOnEveryPage, RepeatUntilFinished }
 Specifies the behaviour for creating new frames to fit the multiframe's content. More...
 
- Public Types inherited from QgsComposerObject
enum  DataDefinedProperty {
  NoProperty = 0, AllProperties, TestProperty, PresetPaperSize,
  PaperWidth, PaperHeight, NumPages, PaperOrientation,
  PageNumber, PositionX, PositionY, ItemWidth,
  ItemHeight, ItemRotation, Transparency, BlendMode,
  ExcludeFromExports, MapRotation, MapScale, MapXMin,
  MapYMin, MapXMax, MapYMax, MapAtlasMargin,
  MapLayers, MapStylePreset, PictureSource, SourceUrl
}
 Data defined properties for different item types. More...
 
enum  PropertyValueType { EvaluatedValue = 0, OriginalValue }
 Specifies whether the value returned by a function should be the original, user set value, or the current evaluated value for the property. More...
 

Public Slots

void loadHtml (const bool useCache=false, const QgsExpressionContext *context=nullptr)
 Reloads the html source from the url and redraws the item. More...
 
void recalculateFrameSizes () override
 Recalculates the frame sizes for the current viewport dimensions. More...
 
virtual void refreshDataDefinedProperty (const QgsComposerObject::DataDefinedProperty property=QgsComposerObject::AllProperties, const QgsExpressionContext *context=nullptr) override
 
void refreshExpressionContext ()
 
- Public Slots inherited from QgsComposerMultiFrame
void recalculateFrameRects ()
 Forces a recalculation of all the associated frame's scene rectangles. More...
 
virtual void recalculateFrameSizes ()
 Recalculates the portion of the multiframe item which is shown in each of it's component frames. More...
 
void update ()
 Forces a redraw of all child frames. More...
 
- Public Slots inherited from QgsComposerObject
virtual void refreshDataDefinedProperty (const DataDefinedProperty property=AllProperties, const QgsExpressionContext *context=nullptr)
 Refreshes a data defined property for the item by reevaluating the property's value and redrawing the item with this new value. More...
 
virtual void repaint ()
 Triggers a redraw for the item. More...
 

Public Member Functions

 QgsComposerHtml (QgsComposition *c, bool createUndoCommands)
 
 ~QgsComposerHtml ()
 
void addFrame (QgsComposerFrame *frame, bool recalcFrameSizes=true) override
 Adds a frame to the multiframe. More...
 
ContentMode contentMode () const
 Returns the source mode for item's HTML content. More...
 
virtual QString displayName () const override
 Get multiframe display name. More...
 
bool evaluateExpressions () const
 Returns whether html item will evaluate QGIS expressions prior to rendering the HTML content. More...
 
double findNearbyPageBreak (double yPos) override
 Finds the optimal position to break a frame at. More...
 
QString html () const
 Returns the HTML source displayed in the item if the item is using the QgsComposerHtml::ManualHtml mode. More...
 
double maxBreakDistance () const
 Returns the maximum distance allowed when calculating where to place page breaks in the html. More...
 
bool readXML (const QDomElement &itemElem, const QDomDocument &doc, bool ignoreFrames=false) override
 Reads multiframe state information from a DOM element. More...
 
void render (QPainter *p, const QRectF &renderExtent, const int frameIndex) override
 Renders a portion of the multiframe's content into a painter. More...
 
void setContentMode (ContentMode mode)
 Sets the source mode for item's HTML content. More...
 
void setEvaluateExpressions (bool evaluateExpressions)
 Sets whether the html item will evaluate QGIS expressions prior to rendering the HTML content. More...
 
void setHtml (const QString &html)
 Sets the HTML to display in the item when the item is using the QgsComposerHtml::ManualHtml mode. More...
 
void setMaxBreakDistance (double maxBreakDistance)
 Sets the maximum distance allowed when calculating where to place page breaks in the html. More...
 
void setUrl (const QUrl &url)
 Sets the URL for content to display in the item when the item is using the QgsComposerHtml::Url mode. More...
 
void setUserStylesheet (const QString &stylesheet)
 Sets the user stylesheet CSS rules to use while rendering the HTML content. More...
 
void setUserStylesheetEnabled (const bool stylesheetEnabled)
 Sets whether user stylesheets are enabled for the HTML content. More...
 
void setUseSmartBreaks (bool useSmartBreaks)
 Sets whether the html item should use smart breaks. More...
 
QSizeF totalSize () const override
 Returns the total size of the multiframe's content. More...
 
const QUrlurl () const
 Returns the URL of the content displayed in the item if the item is using the QgsComposerHtml::Url mode. More...
 
QString userStylesheet () const
 Returns the user stylesheet CSS rules used while rendering the HTML content. More...
 
bool userStylesheetEnabled () const
 Returns whether user stylesheets are enabled for the HTML content. More...
 
bool useSmartBreaks () const
 Returns whether html item is using smart breaks. More...
 
bool writeXML (QDomElement &elem, QDomDocument &doc, bool ignoreFrames=false) const override
 Stores state information about multiframe in DOM element. More...
 
- Public Member Functions inherited from QgsComposerMultiFrame
 QgsComposerMultiFrame (QgsComposition *c, bool createUndoCommands)
 Construct a new multiframe item. More...
 
virtual ~QgsComposerMultiFrame ()
 
bool _readXML (const QDomElement &itemElem, const QDomDocument &doc, bool ignoreFrames=false)
 Restores state information about base multiframe object from a DOM element. More...
 
bool _writeXML (QDomElement &elem, QDomDocument &doc, bool ignoreFrames=false) const
 Stores state information about base multiframe object in DOM element. More...
 
QgsCompositioncomposition ()
 Returns the parent composition for the multiframe. More...
 
QgsComposerFramecreateNewFrame (QgsComposerFrame *currentFrame, QPointF pos, QSizeF size)
 Creates a new frame and adds it to the multi frame and composition. More...
 
bool createUndoCommands () const
 Returns whether undo commands should be created for interactions with the multiframe. More...
 
void deleteFrames ()
 Removes and deletes all child frames. More...
 
virtual QSizeF fixedFrameSize (const int frameIndex=-1) const
 Returns the fixed size for a frame, if desired. More...
 
QgsComposerFrameframe (int i) const
 Returns a child frame from the multiframe. More...
 
int frameCount () const
 Returns the number of frames associated with this multiframe. More...
 
int frameIndex (QgsComposerFrame *frame) const
 Returns the index of a frame within the multiframe. More...
 
virtual QSizeF minFrameSize (const int frameIndex=-1) const
 Returns the minimum size for a frames, if desired. More...
 
void removeFrame (int i, const bool removeEmptyPages=false)
 Removes a frame from the multiframe. More...
 
virtual Q_DECL_DEPRECATED void render (QPainter *p, const QRectF &renderExtent)
 Renders a portion of the multiframe's content into a painter. More...
 
ResizeMode resizeMode () const
 Returns the resize mode for the multiframe. More...
 
void setCreateUndoCommands (bool enabled)
 Sets whether undo commands should be created for interactions with the multiframe. More...
 
void setResizeMode (ResizeMode mode)
 Sets the resize mode for the multiframe, and recalculates frame sizes to match. More...
 
- Public Member Functions inherited from QgsComposerObject
 QgsComposerObject (QgsComposition *composition)
 Constructor. More...
 
virtual ~QgsComposerObject ()
 
const QgsCompositioncomposition () const
 Returns the composition the item is attached to. More...
 
QgsCompositioncomposition ()
 
virtual QgsExpressionContextcreateExpressionContext () const
 Creates an expression context relating to the objects' current state. More...
 
QStringList customProperties () const
 Return list of keys stored in custom properties for the object. More...
 
QVariant customProperty (const QString &key, const QVariant &defaultValue=QVariant()) const
 Read a custom property from the object. More...
 
QgsDataDefineddataDefinedProperty (const DataDefinedProperty property) const
 Returns a reference to the data defined settings for one of the item's data defined properties. More...
 
virtual bool readXML (const QDomElement &itemElem, const QDomDocument &doc)
 Sets item state from DOM element. More...
 
void removeCustomProperty (const QString &key)
 Remove a custom property from the object. More...
 
void setCustomProperty (const QString &key, const QVariant &value)
 Set a custom property for the object. More...
 
void setDataDefinedProperty (const DataDefinedProperty property, const bool active, const bool useExpression, const QString &expression, const QString &field)
 Sets parameters for a data defined property for the item. More...
 
virtual bool writeXML (QDomElement &elem, QDomDocument &doc) const
 Stores item state in DOM element. More...
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
 QObject (QObject *parent, const char *name)
 
virtual ~QObject ()
 
bool blockSignals (bool block)
 
QObjectchild (const char *objName, const char *inheritsClass, bool recursiveSearch) const
 
const QObjectList & children () const
 
const char * className () const
 
bool connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const QObject *receiver, const char *method)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method)
 
void dumpObjectInfo ()
 
void dumpObjectTree ()
 
QList< QByteArraydynamicPropertyNames () const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name) const
 
QList< T > findChildren (const QRegExp &regExp) const
 
QList< T > findChildren (const QString &name) const
 
bool inherits (const char *className) const
 
void insertChild (QObject *object)
 
void installEventFilter (QObject *filterObj)
 
bool isA (const char *className) const
 
bool isWidgetType () const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const
 
void moveToThread (QThread *targetThread)
 
const char * name () const
 
const char * name (const char *defaultName) const
 
QString objectName () const
 
QObjectparent () const
 
QVariant property (const char *name) const
 
void removeChild (QObject *object)
 
void removeEventFilter (QObject *obj)
 
void setName (const char *name)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const
 
int startTimer (int interval)
 
QThreadthread () const
 

Additional Inherited Members

- Signals inherited from QgsComposerMultiFrame
void changed ()
 Emitted when the properties of a multi frame have changed, and the GUI item widget must be updated. More...
 
void contentsChanged ()
 Emitted when the contents of the multi frame have changed and the frames must be redrawn. More...
 
- Signals inherited from QgsComposerObject
void itemChanged ()
 Emitted when the item changes. More...
 
- Static Public Member Functions inherited from QObject
bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Protected Slots inherited from QgsComposerMultiFrame
void handleFrameRemoval (QgsComposerItem *item)
 Called before a frame is going to be removed. More...
 
void handlePageChange ()
 Adapts to changed number of composition pages if resize type is RepeatOnEveryPage. More...
 
- Protected Member Functions inherited from QgsComposerObject
bool dataDefinedEvaluate (const QgsComposerObject::DataDefinedProperty property, QVariant &expressionValue, const QgsExpressionContext &context=QgsExpressionContext()) const
 Evaluate a data defined property and return the calculated value. More...
 
- Protected Member Functions inherited from QObject
bool checkConnectArgs (const char *signal, const QObject *object, const char *method)
 
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const char *signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const char *signal)
 
int receivers (const char *signal) const
 
QObjectsender () const
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *event)
 
- Static Protected Member Functions inherited from QObject
QByteArray normalizeSignalSlot (const char *signalSlot)
 
- Protected Attributes inherited from QgsComposerMultiFrame
bool mCreateUndoCommands
 True: creates QgsMultiFrameCommands on internal changes (e.g. More...
 
QList< QgsComposerFrame * > mFrameItems
 
ResizeMode mResizeMode
 
- Protected Attributes inherited from QgsComposerObject
QgsCompositionmComposition
 
QgsObjectCustomProperties mCustomProperties
 Custom properties for object. More...
 
QMap< QgsComposerObject::DataDefinedProperty, QStringmDataDefinedNames
 Map of data defined properties for the item to string name to use when exporting item to xml. More...
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 32 of file qgscomposerhtml.h.

Member Enumeration Documentation

◆ ContentMode

Source modes for the HTML content to render in the item.

Enumerator
Url 

Using this mode item fetches its content via a url

ManualHtml 

HTML content is manually set for the item

Definition at line 39 of file qgscomposerhtml.h.

Constructor & Destructor Documentation

◆ QgsComposerHtml()

QgsComposerHtml::QgsComposerHtml ( QgsComposition c,
bool  createUndoCommands 
)

Definition at line 38 of file qgscomposerhtml.cpp.

◆ ~QgsComposerHtml()

QgsComposerHtml::~QgsComposerHtml ( )

Definition at line 91 of file qgscomposerhtml.cpp.

Member Function Documentation

◆ addFrame()

void QgsComposerHtml::addFrame ( QgsComposerFrame frame,
bool  recalcFrameSizes = true 
)
overridevirtual

Adds a frame to the multiframe.

Parameters
frameframe to add
recalcFrameSizesset to true to force recalculation of all existing frame sizes
See also
removeFrame

Implements QgsComposerMultiFrame.

Definition at line 334 of file qgscomposerhtml.cpp.

◆ contentMode()

ContentMode QgsComposerHtml::contentMode ( ) const
inline

Returns the source mode for item's HTML content.

Returns
ContentMode for the item's source
See also
setContentMode
url
html
Note
added in 2.5

Definition at line 65 of file qgscomposerhtml.h.

◆ displayName()

QString QgsComposerHtml::displayName ( ) const
overridevirtual

Get multiframe display name.

Returns
display name for item
Note
added in version 2.5

Reimplemented from QgsComposerMultiFrame.

Definition at line 475 of file qgscomposerhtml.cpp.

◆ evaluateExpressions()

bool QgsComposerHtml::evaluateExpressions ( ) const
inline

Returns whether html item will evaluate QGIS expressions prior to rendering the HTML content.

If set, any content inside [% %] tags will be treated as a QGIS expression and evaluated against the current atlas feature.

Returns
true if html item will evaluate expressions in the content
See also
setEvaluateExpressions
Note
added in QGIS 2.5

Definition at line 113 of file qgscomposerhtml.h.

◆ findNearbyPageBreak()

double QgsComposerHtml::findNearbyPageBreak ( double  yPos)
overridevirtual

Finds the optimal position to break a frame at.

Parameters
yPosmaximum vertical position for break
Returns
the optimal breakable position which occurs in the multi frame close to and before the specified yPos
Note
added in version 2.3

Reimplemented from QgsComposerMultiFrame.

Definition at line 361 of file qgscomposerhtml.cpp.

◆ html()

QString QgsComposerHtml::html ( ) const
inline

Returns the HTML source displayed in the item if the item is using the QgsComposerHtml::ManualHtml mode.

Returns
HTML displayed in item
See also
setHtml
contentMode
Note
added in 2.5

Definition at line 103 of file qgscomposerhtml.h.

◆ loadHtml

void QgsComposerHtml::loadHtml ( const bool  useCache = false,
const QgsExpressionContext context = nullptr 
)
slot

Reloads the html source from the url and redraws the item.

Parameters
useCacheset to true to use a cached copy of remote html content
contextexpression context for evaluating data defined urls and expressions in html
See also
setUrl
url

Definition at line 127 of file qgscomposerhtml.cpp.

◆ maxBreakDistance()

double QgsComposerHtml::maxBreakDistance ( ) const
inline

Returns the maximum distance allowed when calculating where to place page breaks in the html.

This distance is the maximum amount of empty space allowed at the bottom of a frame after calculating the optimum break location. This setting is only effective if useSmartBreaks is true.

Returns
maximum amount of empty space to leave when calculating page break locations
Note
added in 2.3
See also
setMaxBreakDistance
useSmartBreaks

Definition at line 163 of file qgscomposerhtml.h.

◆ readXML()

bool QgsComposerHtml::readXML ( const QDomElement itemElem,
const QDomDocument doc,
bool  ignoreFrames = false 
)
overridevirtual

Reads multiframe state information from a DOM element.

Implementations of readXML should also call the _readXML method to restore general multiframe properties.

Parameters
itemElemis DOM element
docis the DOM document
ignoreFramesset to false to avoid read state information about child frames from DOM
See also
_readXML

Implements QgsComposerMultiFrame.

Definition at line 497 of file qgscomposerhtml.cpp.

◆ recalculateFrameSizes

void QgsComposerHtml::recalculateFrameSizes ( )
overrideslot

Recalculates the frame sizes for the current viewport dimensions.

Definition at line 245 of file qgscomposerhtml.cpp.

◆ refreshDataDefinedProperty

void QgsComposerHtml::refreshDataDefinedProperty ( const QgsComposerObject::DataDefinedProperty  property = QgsComposerObject::AllProperties,
const QgsExpressionContext context = nullptr 
)
overridevirtualslot

Definition at line 581 of file qgscomposerhtml.cpp.

◆ refreshExpressionContext

void QgsComposerHtml::refreshExpressionContext ( )
slot

Definition at line 563 of file qgscomposerhtml.cpp.

◆ render()

void QgsComposerHtml::render ( QPainter painter,
const QRectF renderExtent,
const int  frameIndex 
)
overridevirtual

Renders a portion of the multiframe's content into a painter.

Parameters
painterdestination painter
renderExtentvisible extent of content to render into the painter.
frameIndexframe number for content
Note
added in version 2.5

Reimplemented from QgsComposerMultiFrame.

Definition at line 307 of file qgscomposerhtml.cpp.

◆ setContentMode()

void QgsComposerHtml::setContentMode ( ContentMode  mode)
inline

Sets the source mode for item's HTML content.

Parameters
modeContentMode for the item's source
See also
contentMode
setUrl
setHtml
Note
added in 2.5

Definition at line 56 of file qgscomposerhtml.h.

◆ setEvaluateExpressions()

void QgsComposerHtml::setEvaluateExpressions ( bool  evaluateExpressions)

Sets whether the html item will evaluate QGIS expressions prior to rendering the HTML content.

If set, any content inside [% %] tags will be treated as a QGIS expression and evaluated against the current atlas feature.

Parameters
evaluateExpressionsset to true to evaluate expressions in the HTML content
See also
evaluateExpressions
Note
added in QGIS 2.5

Definition at line 120 of file qgscomposerhtml.cpp.

◆ setHtml()

void QgsComposerHtml::setHtml ( const QString html)

Sets the HTML to display in the item when the item is using the QgsComposerHtml::ManualHtml mode.

Setting the HTML using this function does not automatically refresh the item's contents. Call loadHtml to trigger a refresh of the item after setting the HTML content.

Parameters
htmlHTML to display in item
See also
html
contentMode
loadHtml
Note
added in 2.5

Definition at line 111 of file qgscomposerhtml.cpp.

◆ setMaxBreakDistance()

void QgsComposerHtml::setMaxBreakDistance ( double  maxBreakDistance)

Sets the maximum distance allowed when calculating where to place page breaks in the html.

This distance is the maximum amount of empty space allowed at the bottom of a frame after calculating the optimum break location. Setting a larger value will result in better choice of page break location, but more wasted space at the bottom of frames. This setting is only effective if useSmartBreaks is true.

Parameters
maxBreakDistancemaximum amount of empty space to leave when calculating page break locations
Note
added in 2.3
See also
maxBreakDistance
setUseSmartBreaks

Definition at line 449 of file qgscomposerhtml.cpp.

◆ setUrl()

void QgsComposerHtml::setUrl ( const QUrl url)

Sets the URL for content to display in the item when the item is using the QgsComposerHtml::Url mode.

Content is automatically fetched and the HTML item refreshed after calling this function.

Parameters
urlURL of content to display in the item
See also
url
contentMode

Definition at line 99 of file qgscomposerhtml.cpp.

◆ setUserStylesheet()

void QgsComposerHtml::setUserStylesheet ( const QString stylesheet)

Sets the user stylesheet CSS rules to use while rendering the HTML content.

These allow for overriding the styles specified within the HTML source. Setting the stylesheet using this function does not automatically refresh the item's contents. Call loadHtml to trigger a refresh of the item after setting the stylesheet rules.

Parameters
stylesheetCSS rules for user stylesheet
See also
userStylesheet
setUserStylesheetEnabled
loadHtml
Note
added in 2.5

Definition at line 456 of file qgscomposerhtml.cpp.

◆ setUserStylesheetEnabled()

void QgsComposerHtml::setUserStylesheetEnabled ( const bool  stylesheetEnabled)

Sets whether user stylesheets are enabled for the HTML content.

Parameters
stylesheetEnabledset to true to enable user stylesheets
See also
userStylesheetEnabled
setUserStylesheet
Note
added in 2.5

Definition at line 465 of file qgscomposerhtml.cpp.

◆ setUseSmartBreaks()

void QgsComposerHtml::setUseSmartBreaks ( bool  useSmartBreaks)

Sets whether the html item should use smart breaks.

Smart breaks prevent the html frame contents from breaking mid-way though a line of text.

Parameters
useSmartBreaksset to true to prevent content from breaking mid-way through a line of text
See also
useSmartBreaks

Definition at line 442 of file qgscomposerhtml.cpp.

◆ totalSize()

QSizeF QgsComposerHtml::totalSize ( ) const
overridevirtual

Returns the total size of the multiframe's content.

Returns
total size required for content

Implements QgsComposerMultiFrame.

Definition at line 302 of file qgscomposerhtml.cpp.

◆ url()

const QUrl& QgsComposerHtml::url ( ) const
inline

Returns the URL of the content displayed in the item if the item is using the QgsComposerHtml::Url mode.

Returns
url for content displayed in item
See also
setUrl
contentMode

Definition at line 82 of file qgscomposerhtml.h.

◆ userStylesheet()

QString QgsComposerHtml::userStylesheet ( ) const
inline

Returns the user stylesheet CSS rules used while rendering the HTML content.

These overriding the styles specified within the HTML source.

Returns
CSS rules for user stylesheet
See also
setUserStylesheet
userStylesheetEnabled
Note
added in 2.5

Definition at line 184 of file qgscomposerhtml.h.

◆ userStylesheetEnabled()

bool QgsComposerHtml::userStylesheetEnabled ( ) const
inline

Returns whether user stylesheets are enabled for the HTML content.

Returns
true if user stylesheets are enabled
See also
setUserStylesheetEnabled
userStylesheet
Note
added in 2.5

Definition at line 200 of file qgscomposerhtml.h.

◆ useSmartBreaks()

bool QgsComposerHtml::useSmartBreaks ( ) const
inline

Returns whether html item is using smart breaks.

Smart breaks prevent the html frame contents from breaking mid-way though a line of text.

Returns
true if html item is using smart breaks
See also
setUseSmartBreaks

Definition at line 130 of file qgscomposerhtml.h.

◆ writeXML()

bool QgsComposerHtml::writeXML ( QDomElement elem,
QDomDocument doc,
bool  ignoreFrames = false 
) const
overridevirtual

Stores state information about multiframe in DOM element.

Implementations of writeXML should also call the _writeXML method to save general multiframe properties.

Parameters
elemis DOM element
docis the DOM document
ignoreFramesset to false to avoid writing state information about child frames into DOM
See also
_writeXML

Implements QgsComposerMultiFrame.

Definition at line 480 of file qgscomposerhtml.cpp.


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