Skip to content

Commit 590929d

Browse files
committedJul 26, 2012
Add signal / slot for adding composer html
1 parent b9d2615 commit 590929d

File tree

6 files changed

+37
-1
lines changed

6 files changed

+37
-1
lines changed
 

‎src/app/composer/qgscomposer.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1337,6 +1337,16 @@ void QgsComposer::addComposerTable( QgsComposerAttributeTable* table )
13371337
mItemWidgetMap.insert( table, tWidget );
13381338
}
13391339

1340+
void QgsComposer::addComposerHtml( QgsComposerHtml* html )
1341+
{
1342+
if ( !html )
1343+
{
1344+
return;
1345+
}
1346+
1347+
//todo: create html widget and create entry for each frame in the item/widget map
1348+
}
1349+
13401350
void QgsComposer::deleteItem( QgsComposerItem* item )
13411351
{
13421352
QMap<QgsComposerItem*, QWidget*>::iterator it = mItemWidgetMap.find( item );

‎src/app/composer/qgscomposer.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,9 @@ class QgsComposer: public QMainWindow, private Ui::QgsComposerBase
246246
/**Adds a composer table to the item/widget map and creates a configuration widget*/
247247
void addComposerTable( QgsComposerAttributeTable* table );
248248

249+
/**Adds composer html and creates a configuration widget*/
250+
void addComposerHtml( QgsComposerHtml* html );
251+
249252
/**Removes item from the item/widget map and deletes the configuration widget. Does not delete the item itself*/
250253
void deleteItem( QgsComposerItem* item );
251254

‎src/core/composer/qgscomposermultiframe.cpp

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ void QgsComposerMultiFrame::addFrame( QgsComposerFrame* frame )
9393
{
9494
mFrameItems.push_back( frame );
9595
QObject::connect( frame, SIGNAL( sizeChanged() ), this, SLOT( recalculateFrameSizes() ) );
96-
QObject::connect( frame, SIGNAL( destroyed() ), this, SLOT( recalculateFrameSizes() ) );
96+
// QObject::connect( frame, SIGNAL( destroyed( QObject* ) ), this, SLOT( removeFrame( QObject* ) ) );
9797
if ( mComposition )
9898
{
9999
mComposition->addItem( frame );
@@ -109,3 +109,14 @@ void QgsComposerMultiFrame::removeFrame( int i )
109109
}
110110
mFrameItems.removeAt( i );
111111
}
112+
113+
/*
114+
void QgsComposerMultiFrame::removeFrame( QObject* frame )
115+
{
116+
QgsComposerFrame* composerFrame = dynamic_cast<QgsComposerFrame*>( frame );
117+
if( composerFrame )
118+
{
119+
removeFrame( mFrameItems.indexOf( composerFrame ) );
120+
recalculateFrameSizes();
121+
}
122+
}*/

‎src/core/composer/qgscomposermultiframe.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ class QgsComposerMultiFrame: public QObject
5454

5555
protected slots:
5656
void recalculateFrameSizes();
57+
//void removeFrame( QObject* frame );
5758

5859
private:
5960
QgsComposerMultiFrame(); //forbidden

‎src/core/composer/qgscomposition.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1096,6 +1096,12 @@ void QgsComposition::addComposerTable( QgsComposerAttributeTable* table )
10961096
emit selectedItemChanged( table );
10971097
}
10981098

1099+
void QgsComposition::addComposerHtml( QgsComposerHtml* html )
1100+
{
1101+
emit composerHtmlAdded( html );
1102+
clearSelection();
1103+
}
1104+
10991105
void QgsComposition::removeComposerItem( QgsComposerItem* item )
11001106
{
11011107
QgsComposerMap* map = dynamic_cast<QgsComposerMap *>( item );

‎src/core/composer/qgscomposition.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class QGraphicsRectItem;
3131
class QgsMapRenderer;
3232
class QDomElement;
3333
class QgsComposerArrow;
34+
class QgsComposerHtml;
3435
class QgsComposerItem;
3536
class QgsComposerLabel;
3637
class QgsComposerLegend;
@@ -214,6 +215,8 @@ class CORE_EXPORT QgsComposition: public QGraphicsScene
214215
void addComposerShape( QgsComposerShape* shape );
215216
/**Adds a composer table to the graphics scene and advices composer to create a widget for it (through signal)*/
216217
void addComposerTable( QgsComposerAttributeTable* table );
218+
/**Adds composer html and advices composer to create a widget for it (through signal)*/
219+
void addComposerHtml( QgsComposerHtml* html );
217220

218221
/**Remove item from the graphics scene. Additionally to QGraphicsScene::removeItem, this function considers undo/redo command*/
219222
void removeComposerItem( QgsComposerItem* item );
@@ -298,6 +301,8 @@ class CORE_EXPORT QgsComposition: public QGraphicsScene
298301
void selectedItemChanged( QgsComposerItem* selected );
299302
/**Is emitted when new composer arrow has been added to the view*/
300303
void composerArrowAdded( QgsComposerArrow* arrow );
304+
/**Is emitted when a new composer html has been added to the view*/
305+
void composerHtmlAdded( QgsComposerHtml* html );
301306
/**Is emitted when new composer label has been added to the view*/
302307
void composerLabelAdded( QgsComposerLabel* label );
303308
/**Is emitted when new composer map has been added to the view*/

0 commit comments

Comments
 (0)
Please sign in to comment.