diff --git a/src/common/KReportAsyncItemBase.h b/src/common/KReportAsyncItemBase.h --- a/src/common/KReportAsyncItemBase.h +++ b/src/common/KReportAsyncItemBase.h @@ -22,6 +22,9 @@ #include "KReportItemBase.h" +/*! + * @brief Base class for items that are drawn asyncronously due to unknown loading times. + */ class KREPORT_EXPORT KReportAsyncItemBase : public KReportItemBase { Q_OBJECT @@ -33,7 +36,7 @@ Q_SIGNALS: void finishedRendering(); - + private: class Private; Private * const d; diff --git a/src/common/KReportDataSource.h b/src/common/KReportDataSource.h --- a/src/common/KReportDataSource.h +++ b/src/common/KReportDataSource.h @@ -23,17 +23,23 @@ #include "kreport_export.h" #include "config-kreport.h" -/** @brief Abstraction of report data source -*/ +/*! + * @brief Abstraction of report data source. + * + * A data source provides data to the report engine, usually from a + * database, but could also be implemented for text and other file formats + */ class KREPORT_EXPORT KReportDataSource { public: KReportDataSource(); virtual ~KReportDataSource(); - //! Describes sorting for single field - /*! By default the order is ascending. */ + /*! + * @brief Describes sorting for single field, + * By default the order is ascending. + */ class KREPORT_EXPORT SortedField { public: diff --git a/src/common/KReportDesign.h b/src/common/KReportDesign.h --- a/src/common/KReportDesign.h +++ b/src/common/KReportDesign.h @@ -42,37 +42,37 @@ ~KReportDesignReadingStatus(); KReportDesignReadingStatus(const KReportDesignReadingStatus &other); KReportDesignReadingStatus& operator=(const KReportDesignReadingStatus &other); - + //! @return true if the status is error. //! Equivalent of errorLineNumber() >= 0 && errorColumnNumber() >= 0. bool isError() const; - + //! Error message suitable for displaying to the user, translated. QString errorMessage() const; - - //! Detailed error message, partially translated. + + //! Detailed error message, partially translated. QString errorDetails() const; - + //! Line number (counting from 0) in which the error occured. -1 if there is no error. - int errorLineNumber() const; - + int errorLineNumber() const; + //! Column number (counting from 0) in which the error occured. -1 if there is no error. int errorColumnNumber() const; - + void setErrorMessage(const QString& msg); void setErrorDetails(const QString& details); void setErrorLineNumber(int line); void setErrorColumnNumber(int column); - + private: class Private; - Private * const d; + Private * const d; }; //! Sends information about the reading status @a status to debug output @a dbg. KREPORT_EXPORT QDebug operator<<(QDebug dbg, const KReportDesignReadingStatus& status); -//! The KReportDesign class represents a report design in .kreport format +//! @brief The KReportDesign class represents a report design in .kreport format class KREPORT_EXPORT KReportDesign { Q_DECLARE_TR_FUNCTIONS(KReportDesign) diff --git a/src/common/KReportDocument.h b/src/common/KReportDocument.h --- a/src/common/KReportDocument.h +++ b/src/common/KReportDocument.h @@ -34,8 +34,11 @@ } #endif -/** -*/ +/*! + * @brief Top level report document definition. + * A KReportDocment defines the design of a document, and is composed of multiple + * sections. + */ class KREPORT_EXPORT KReportDocument : public QObject { Q_OBJECT @@ -89,22 +92,22 @@ QString title() const; QPageLayout pageLayout() const; - + QString pageSize(); void setPageSize(const QString &size); -private: +private: friend class KReportPreRendererPrivate; friend class KReportPreRenderer; #ifdef KREPORT_SCRIPTING friend class KReportScriptHandler; friend class Scripting::Report; #endif - + //! TODO add support for labels QString labelType() const; void setLabelType(const QString &label); - + class Private; Private * const d; }; diff --git a/src/common/KReportItemBase.h b/src/common/KReportItemBase.h --- a/src/common/KReportItemBase.h +++ b/src/common/KReportItemBase.h @@ -53,18 +53,9 @@ }; -/* -class KReportLineStyle -{ -public: - int weight; - QColor lineColor; - Qt::PenStyle style; -}; -*/ - -/** -*/ +/*! + * @brief Base class for items that are drawn syncronously. + */ class KREPORT_EXPORT KReportItemBase : public QObject { Q_OBJECT @@ -153,7 +144,7 @@ //! Helper function mapping to screen units (pixels), @a ptSize is in points static QSizeF sceneSize(const QSizeF &ptSize); - + //! Helper function mapping from screen units to points, @a pos is in pixels static QPointF positionFromScene(const QPointF &pos); diff --git a/src/common/KReportPluginInterface.h b/src/common/KReportPluginInterface.h --- a/src/common/KReportPluginInterface.h +++ b/src/common/KReportPluginInterface.h @@ -39,7 +39,9 @@ #define KREPORT_PLUGIN_FACTORY(class_name, name) \ K_PLUGIN_FACTORY_WITH_JSON(class_name ## Factory, name, registerPlugin();) -//! An interface for plugins delivering KReport elements +/*! + * @brief An interface for plugins delivering KReport elements. + */ class KREPORT_EXPORT KReportPluginInterface : public QObject { Q_OBJECT diff --git a/src/common/KReportPluginManager.h b/src/common/KReportPluginManager.h --- a/src/common/KReportPluginManager.h +++ b/src/common/KReportPluginManager.h @@ -34,6 +34,9 @@ class QAction; class QString; +/*! + * @brief Manager class for finding and loading available plugins + */ class KREPORT_EXPORT KReportPluginManager : public QObject { Q_OBJECT diff --git a/src/common/KReportPluginMetaData.h b/src/common/KReportPluginMetaData.h --- a/src/common/KReportPluginMetaData.h +++ b/src/common/KReportPluginMetaData.h @@ -25,7 +25,9 @@ #include "kreport_export.h" -//! Information about a KReport plugin. +/*! + * @brief Information about a KReport plugin. + */ class KREPORT_EXPORT KReportPluginMetaData : public KPluginMetaData { public: diff --git a/src/common/KReportRenderObjects.h b/src/common/KReportRenderObjects.h --- a/src/common/KReportRenderObjects.h +++ b/src/common/KReportRenderObjects.h @@ -42,10 +42,10 @@ class OROImage; class OROSection; -// -// ORODocument -// This object is a single document containing one or more OROPage elements -// + +/*! + * @brief Represents a single document containing one or more OROPage elements + */ class KREPORT_EXPORT ORODocument : public QObject { Q_OBJECT @@ -57,114 +57,113 @@ QString title() const; void setTitle(const QString &title); - + /** * @brief Return the total number of pages in the document - * + * */ int pageCount() const; - + /** * @brief Return a pointer to a given page - * + * * @param index page number to find * @return OROPage* */ OROPage* page(int index); const OROPage* page(int index) const; - + /** * @brief Adds the supplied page to this document - * + * * Ownership of the page is tranferred the document - * + * * @param page an OROPage* to be added */ void addPage(OROPage* page); - + /** * @brief Returns the index of the supplied page in the document - * + * * @param page OROPage* to find * @return int page index */ int pageIndex(const OROPage* page) const; - + /** * @brief Removes the given page from the document - * + * * The page is also deleted - * + * * @param page OROPage* to delete */ void removePage(OROPage* page); /** * @brief Takes the page from the document but does not delete it - * + * * @param page OROPage* to take from the document */ void takePage(OROPage *page); - + /** * @brief Return the total number of sections in the document - * + * */ int sectionCount() const; - + /** * @brief Return a pointer to a given section - * + * * @param index section number to find * @return OROSection* */ OROSection* section(int index); const OROSection* section(int index) const; - + /** * @brief Adds the supplied sectin to the document - * + * * Ownership of the section is transferred to the document - * + * * @param section OROSection* to add to the document */ void addSection(OROSection* section); - + /** * @brief Removes the supplied section from the document - * + * * The section will also be deleted - * + * * @param section OROSection* to remove and delete */ void removeSection(OROSection *section); - + /** * @brief Takes the section from the document but does not delete it - * - * @param page OROSection* to take from the document + * + * @param section OROSection* to take from the document */ void takeSection(OROSection *section); - + void setPageLayout(const QPageLayout &layout); QPageLayout pageLayout() const; void notifyChange(int pageNo); - + Q_SIGNALS: void updated(int pageNo); - + private: class Private; Private * const d; }; -// -// OROPage -// This object is a single page in a document and may contain zero or more -// OROPrimitive objects all of which represent some form of mark to made on -// a page. -// +/*! + * @brief Represents a single page in a document and may contain zero or more + * OROPrimitive objects all of which represent some form of mark to be made on + * a page. + */ class KREPORT_EXPORT OROPage { public: @@ -174,27 +173,27 @@ ORODocument* document(); const ORODocument* document() const; void setDocument(ORODocument *doc); - + int pageNumber() const; // returns this pages current page number int primitiveCount() const; - + OROPrimitive* primitive(int index); const OROPrimitive* primitive(int index) const; - + void insertPrimitive(OROPrimitive* primitive, int index = -1); void removePrimitive(OROPrimitive *primitive); void takePrimitive(OROPrimitive *primitive); private: class Private; Private * const d; }; -// -// OROSection -// This object is a single row in a document and may contain zero or more -// OROPrimitives -// + +/*! + * @brief Represents a single a single row in a document and may contain zero or more + * OROPrimitives + */ class KREPORT_EXPORT OROSection { public: @@ -226,12 +225,11 @@ }; -// -// OROPrimitive -// This object represents the basic primitive with a position and type. -// Other primitives are subclasses with a defined type and any additional -// information they require to define that primitive. -// +/*! + * @brief Represents the basic primitive with a position and type. + * Other primitives are subclasses with a defined type and any additional + * information they require to define that primitive. + */ class KREPORT_EXPORT OROPrimitive { public: @@ -243,26 +241,25 @@ QPointF position() const; void setPosition(const QPointF &pos); - + QSizeF size() const; void setSize(const QSizeF &s); virtual OROPrimitive* clone() const = 0; - + protected: OROPrimitive(); - + private: class Private; Private * const d; }; -// -// OROTextBox -// This is a text box primitive it defines a box region and text that will -// be rendered inside that region. It also contains information for font -// and positioning of the text. -// +/*! + * @brief A text box primitive it defines a box region and text that will + * be rendered inside that region, it also contains information for font + * and positioning of the text. + */ class KREPORT_EXPORT OROTextBox : public OROPrimitive { public: @@ -293,16 +290,15 @@ bool canGrow() const; void setCanGrow(bool grow); - + private: class Private; Private * const d; }; -// -// OROLine -// This primitive defines a line with a width/weight. -// +/*! + * @brief Defines a line with a width/weight. + */ class KREPORT_EXPORT OROLine : public OROPrimitive { public: @@ -321,16 +317,16 @@ void setLineStyle(const KReportLineStyle& style); OROPrimitive* clone() const override; - + private: class Private; Private * const d; }; -// -// OROImage -// This primitive defines an image -// +/*! + * @brief Defines an image. + * An image is a bitmap. + */ class KREPORT_EXPORT OROImage: public OROPrimitive { public: @@ -350,16 +346,16 @@ void setAspectRatioMode(Qt::AspectRatioMode aspect); OROPrimitive* clone() const override; - + private: class Private; Private * const d; }; -// -// OROPicture -// This primitive defines a picture -// +/*! + * @brief Defines a picture. + * A picture is different to an image, in that it is drawn using commands. + */ class KREPORT_EXPORT OROPicture: public OROPrimitive { public: @@ -370,16 +366,16 @@ QPicture* picture(); OROPrimitive* clone() const override; - + private: class Private; Private * const d; }; -// -// ORORect -// This primitive defines a drawn rectangle -// + +/*! + * @brief Defines a rectangle. + */ class KREPORT_EXPORT ORORect: public OROPrimitive { public: @@ -396,16 +392,15 @@ void setBrush(const QBrush &brush); OROPrimitive* clone() const override; - + private: class Private; Private * const d; }; -// -// ORORect -// This primitive defines a drawn rectangle -// +/*! + * @brief Defines an ellipse. + */ class KREPORT_EXPORT OROEllipse: public OROPrimitive { public: @@ -422,21 +417,24 @@ void setBrush(const QBrush &brush); OROPrimitive* clone() const override; - + private: class Private; Private * const d; }; +/*! + * @brief Defines checkbox. + */ class KREPORT_EXPORT OROCheckBox : public OROPrimitive { public: enum class Type { Cross, Tick, Dot }; - + OROCheckBox(); ~OROCheckBox() override; OROPrimitive* clone() const override; @@ -449,7 +447,7 @@ void setLineStyle(const KReportLineStyle& ls); KReportLineStyle lineStyle() const; - + void setForegroundColor(const QColor& fg); QColor foregroundColor() const; diff --git a/src/common/KReportUnit.h b/src/common/KReportUnit.h --- a/src/common/KReportUnit.h +++ b/src/common/KReportUnit.h @@ -55,8 +55,11 @@ #define POINT_TO_CC(px) qreal((px)*0.077880997) #define PI_TO_POINT(pi) qreal((pi)*12) #define CC_TO_POINT(cc) qreal((cc)*12.840103) -/** - * %KReport stores everything in pt (using "qreal") internally. + +/*! + * @brief Converts between different units + * + * KReportUnit stores everything in pt (using "qreal") internally. * When displaying a value to the user, the value is converted to the user's unit * of choice, and rounded to a reasonable precision to avoid 0.999999 * diff --git a/src/items/label/KReportLabelElement.shared.h b/src/items/label/KReportLabelElement.shared.h --- a/src/items/label/KReportLabelElement.shared.h +++ b/src/items/label/KReportLabelElement.shared.h @@ -25,7 +25,10 @@ #include -//! @brief The KReportLabelElement class represents a label element of a report design +/*! + * @brief The KReportLabelElement class represents a label element of a report design + * @warning This API is currently private. + */ class KREPORT_EXPORT KReportLabelElement : public KReportElement //SDC: explicit operator== virtual_dtor { public: diff --git a/src/renderer/KReportPage.h b/src/renderer/KReportPage.h --- a/src/renderer/KReportPage.h +++ b/src/renderer/KReportPage.h @@ -25,11 +25,11 @@ class ORODocument; -/** - Provides a widget that renders a specific page of - and ORODocument - The widget is sized to the document size in pixels. -*/ +/*! + * @brief Provides a widget that renders a specific page of + * an ORODocument + * The widget is sized to the document size in pixels + */ class KREPORT_EXPORT KReportPage : public QObject, public QGraphicsRectItem { Q_OBJECT diff --git a/src/renderer/KReportPreRenderer.h b/src/renderer/KReportPreRenderer.h --- a/src/renderer/KReportPreRenderer.h +++ b/src/renderer/KReportPreRenderer.h @@ -36,11 +36,10 @@ class KReportDocument; class QDomElement; -// -// ORPreRender -// This class takes a report definition and prerenders the result to -// an ORODocument that can be used to pass to any number of renderers. -// +/*! + * @brief Takes a report definition and prerenders the result to + * an ORODocument that can be used to pass to any number of renderers. + */ class KREPORT_EXPORT KReportPreRenderer : public QObject { Q_OBJECT diff --git a/src/renderer/KReportRendererBase.h b/src/renderer/KReportRendererBase.h --- a/src/renderer/KReportRendererBase.h +++ b/src/renderer/KReportRendererBase.h @@ -28,31 +28,38 @@ class QPrinter; class ORODocument; -//! Context for executing rendering. +/*! + * @bref Context for executing rendering. + */ class KREPORT_EXPORT KReportRendererContext { public: KReportRendererContext(); ~KReportRendererContext(); - + void setUrl(const QUrl& url); void setPainter(QPainter* painter); void setPrinter(QPrinter* printer); - + QPrinter *printer(); QPainter *painter(); QPrinter *printer() const; QPainter *painter() const; - + QUrl url() const; - + private: Q_DISABLE_COPY(KReportRendererContext) class Private; Private * const d; }; -//! Base class for report renderers. +/*! + * @brief Base class for report renderers. + * + * A renderer combines the report design with + * data to produce a visual output + */ class KREPORT_EXPORT KReportRendererBase { public: @@ -65,16 +72,18 @@ virtual bool render(const KReportRendererContext& context, ORODocument *document, int page = -1) = 0; }; -//! Factory for creating renderers -//! @todo make it use plugins +/*! + * @brief Factory for creating renderers + * @todo make it use plugins + */ class KREPORT_EXPORT KReportRendererFactory { public: KReportRendererFactory(); ~KReportRendererFactory(); - + KReportRendererBase* createInstance(const QString& key); - + private: Q_DISABLE_COPY(KReportRendererFactory) class Private; diff --git a/src/renderer/KReportView.h b/src/renderer/KReportView.h --- a/src/renderer/KReportView.h +++ b/src/renderer/KReportView.h @@ -30,7 +30,6 @@ /** * @brief Provides a simple widget for viewing a rendered report on screen - * */ class KREPORT_EXPORT KReportView : public QWidget { diff --git a/src/renderer/scripting/KReportGroupTracker.h b/src/renderer/scripting/KReportGroupTracker.h --- a/src/renderer/scripting/KReportGroupTracker.h +++ b/src/renderer/scripting/KReportGroupTracker.h @@ -4,6 +4,9 @@ #include #include "kreport_export.h" +/*! + * @brief Keeps track of groups as the data for the group changes + */ class KREPORT_EXPORT KReportGroupTracker : public QObject { Q_OBJECT diff --git a/src/renderer/scripting/KReportScriptHandler.h b/src/renderer/scripting/KReportScriptHandler.h --- a/src/renderer/scripting/KReportScriptHandler.h +++ b/src/renderer/scripting/KReportScriptHandler.h @@ -40,6 +40,12 @@ class Section; } +/*! + * @brief Handles scripting during report rendering. + * + * The script handler loads scriptable objects, and executes + * appropriate script code during report rendering + */ class KREPORT_EXPORT KReportScriptHandler : public QObject { Q_OBJECT diff --git a/src/renderer/scripting/KReportScriptSource.h b/src/renderer/scripting/KReportScriptSource.h --- a/src/renderer/scripting/KReportScriptSource.h +++ b/src/renderer/scripting/KReportScriptSource.h @@ -23,8 +23,12 @@ #include "kreport_export.h" -/** @brief Abstraction of report script source -*/ +/*! + * @brief Abstraction of report script source. + * + * A script source is implemented by the source + * application to provide scripts to the report. + */ class KREPORT_EXPORT KReportScriptSource { public: diff --git a/src/wrtembed/KReportDesigner.h b/src/wrtembed/KReportDesigner.h --- a/src/wrtembed/KReportDesigner.h +++ b/src/wrtembed/KReportDesigner.h @@ -45,26 +45,26 @@ class KReportScriptSource; #endif -// -// Class ReportDesigner -// The ReportDesigner is the main widget for designing a report -// + +/*! + * @brief The ReportDesigner is the main widget for designing a report + */ class KREPORT_EXPORT KReportDesigner : public QWidget { Q_OBJECT public: /** @brief Constructor that create a blank designer - @param widget QWidget parent + @param parent QWidget parent */ explicit KReportDesigner(QWidget *parent = nullptr); /** @brief Constructor that create a designer, and loads the report described in the QDomElement - @param widget QWidget parent - @param element Report structure XML element + @param parent QWidget parent + @param desc Report structure XML element */ - KReportDesigner(QWidget *parent, const QDomElement &data); + KReportDesigner(QWidget *parent, const QDomElement &desc); /** @brief Desctructor @@ -96,7 +96,7 @@ /** @brief Return a pointer to the section specified - @param section KReportSectionData::Section enum value of the section to return + @param type KReportSectionData::Section enum value of the section to return @return Pointer to report section object, or 0 if no section exists */ KReportDesignerSection* section(KReportSectionData::Type type) const; @@ -110,13 +110,13 @@ /** @brief Deletes the section specified - @param section KReportSectionData::Section enum value of the section to return + @param type KReportSectionData::Section enum value of the section to return */ void removeSection(KReportSectionData::Type type); /** @brief Create a new section and insert it into the report - @param section KReportSectionData::Section enum value of the section to return + @param type KReportSectionData::Section enum value of the section to return */ void insertSection(KReportSectionData::Type type); @@ -131,7 +131,7 @@ @brief Sets the title of the reportData @param title Report Title */ - void setReportTitle(const QString &); + void setReportTitle(const QString &title); /** @brief Sets the parameters for the display of the background gridpoints @@ -204,7 +204,7 @@ @brief Handle the context menu event for a report section @param scene The associated scene (section) */ - void sectionContextMenuEvent(KReportDesignerSectionScene *s, QGraphicsSceneContextMenuEvent * e); + void sectionContextMenuEvent(KReportDesignerSectionScene *scene, QGraphicsSceneContextMenuEvent * event); /** @brief Handle the mouse release event for a report section @@ -217,7 +217,7 @@ @brief Sets the property set for the currently selected item @param set Property set of item */ - void changeSet(KPropertySet *); + void changeSet(KPropertySet *set); /** @brief Return the property set for the curently selected item @@ -232,7 +232,7 @@ /** @brief Return a unique name that can be used by the entity - @param entity Name of entity + @param name Name of entity */ QString suggestEntityName(const QString &name) const; diff --git a/src/wrtembed/KReportDesigner.cpp b/src/wrtembed/KReportDesigner.cpp --- a/src/wrtembed/KReportDesigner.cpp +++ b/src/wrtembed/KReportDesigner.cpp @@ -1177,13 +1177,13 @@ void KReportDesigner::changeSet(KPropertySet *s) { //Set the checked state of the report properties button - if (s == &d->set) + if (set == &d->set) d->pageButton->setCheckState(Qt::Checked); else d->pageButton->setCheckState(Qt::Unchecked); - if (d->itemSet != s) { - d->itemSet = s; + if (d->itemSet != set) { + d->itemSet = set; emit propertySetChanged(); } } diff --git a/src/wrtembed/KReportDesignerItemBase.h b/src/wrtembed/KReportDesignerItemBase.h --- a/src/wrtembed/KReportDesignerItemBase.h +++ b/src/wrtembed/KReportDesignerItemBase.h @@ -33,9 +33,9 @@ class KReportDesigner; -// -// ReportEntity -// +/*! + * @brief Base class for report items used within the designer GUI. +*/ class KREPORT_EXPORT KReportDesignerItemBase { public: @@ -71,9 +71,9 @@ * @param itemType type of item * @return void */ - void updateRenderText(const QString &itemDataSource, const QString &itemStaticValue, const QString &itemType); + void updateRenderText(const QString &itemDataSource, const QString &itemStaticValue, const QString &itemType); KReportItemBase *item() const; - + void setRenderText(const QString &text); QString renderText() const; diff --git a/src/wrtembed/KReportDesignerItemRectBase.h b/src/wrtembed/KReportDesignerItemRectBase.h --- a/src/wrtembed/KReportDesignerItemRectBase.h +++ b/src/wrtembed/KReportDesignerItemRectBase.h @@ -32,7 +32,8 @@ const int KREPORT_ITEM_RECT_DEFAULT_WIDTH = 100; const int KREPORT_ITEM_RECT_DEFAULT_HEIGHT = 100; -/** +/*! + * @brief Base class for rectangular report items used within the designer GUI. */ class KREPORT_EXPORT KReportDesignerItemRectBase : public QGraphicsRectItem, public KReportDesignerItemBase { diff --git a/src/wrtembed/KReportDesignerSection.h b/src/wrtembed/KReportDesignerSection.h --- a/src/wrtembed/KReportDesignerSection.h +++ b/src/wrtembed/KReportDesignerSection.h @@ -37,12 +37,11 @@ class KReportDesigner; class KReportZoomHandler; -// -// Class ReportSection -// -// This class is the base to all Report Section's visual representation. -// It contains the basic data and interface that all the sections need to work. -// +/*! + * @brief This class is the base to all Report Section's visual representation. + * + * Contains the basic data and interface that all the sections need to work. + */ class KREPORT_EXPORT KReportDesignerSection : public QWidget { Q_OBJECT diff --git a/src/wrtembed/KReportDesignerSectionDetail.h b/src/wrtembed/KReportDesignerSectionDetail.h --- a/src/wrtembed/KReportDesignerSectionDetail.h +++ b/src/wrtembed/KReportDesignerSectionDetail.h @@ -31,7 +31,8 @@ class KReportDesigner; class KReportDesignerSectionDetailGroup; -/** +/*! + * @brief The central detail section which contains the bulk of the report */ class KREPORT_EXPORT KReportDesignerSectionDetail : public QWidget { diff --git a/src/wrtembed/KReportDesignerSectionDetailGroup.h b/src/wrtembed/KReportDesignerSectionDetailGroup.h --- a/src/wrtembed/KReportDesignerSectionDetailGroup.h +++ b/src/wrtembed/KReportDesignerSectionDetailGroup.h @@ -31,7 +31,8 @@ class KReportDesignerSection; class KReportDesignerSectionDetail; -/** +/*! + * @brief A section group allows a header and footer to be used for a particular report field */ class KREPORT_EXPORT KReportDesignerSectionDetailGroup : public QObject {