From c0a4ee39514bb9945886a9c1528aa78c9f730348 Mon Sep 17 00:00:00 2001 From: mhugent Date: Mon, 29 Mar 2010 13:16:08 +0000 Subject: [PATCH] Move annotation items and widgets from gui to app git-svn-id: http://svn.osgeo.org/qgis/trunk@13190 c8812cc2-4d05-0410-92ff-de0c093fc19c --- python/gui/qgsannotationitem.sip | 5 +--- python/gui/qgsformannotationitem.sip | 5 +--- python/gui/qgstextannotationitem.sip | 4 +-- src/app/CMakeLists.txt | 9 ++++--- src/{gui => app}/qgsannotationwidget.cpp | 0 src/{gui => app}/qgsannotationwidget.h | 0 src/{gui => app}/qgsformannotationdialog.cpp | 0 src/{gui => app}/qgsformannotationdialog.h | 0 src/app/qgsmaptoolannotation.cpp | 26 +++++++++++++++++++- src/app/qgsmaptoolannotation.h | 2 ++ src/{gui => app}/qgstextannotationdialog.cpp | 0 src/{gui => app}/qgstextannotationdialog.h | 0 src/gui/CMakeLists.txt | 6 ----- src/gui/qgsannotationitem.h | 3 --- src/gui/qgsformannotationitem.cpp | 6 ----- src/gui/qgsformannotationitem.h | 3 --- src/gui/qgstextannotationitem.cpp | 6 ----- src/gui/qgstextannotationitem.h | 2 -- 18 files changed, 36 insertions(+), 41 deletions(-) rename src/{gui => app}/qgsannotationwidget.cpp (100%) rename src/{gui => app}/qgsannotationwidget.h (100%) rename src/{gui => app}/qgsformannotationdialog.cpp (100%) rename src/{gui => app}/qgsformannotationdialog.h (100%) rename src/{gui => app}/qgstextannotationdialog.cpp (100%) rename src/{gui => app}/qgstextannotationdialog.h (100%) diff --git a/python/gui/qgsannotationitem.sip b/python/gui/qgsannotationitem.sip index 45b1d0a4eef..56a7840ae8f 100644 --- a/python/gui/qgsannotationitem.sip +++ b/python/gui/qgsannotationitem.sip @@ -25,9 +25,6 @@ class QgsAnnotationItem: QgsMapCanvasItem QgsAnnotationItem( QgsMapCanvas* mapCanvas ); virtual ~QgsAnnotationItem(); - /**Creates an editor widget (caller takes ownership)*/ - virtual QDialog* createEditor() = 0; - void updatePosition(); QRectF boundingRect() const; @@ -71,4 +68,4 @@ class QgsAnnotationItem: QgsMapCanvasItem void _writeXML( QDomDocument& doc, QDomElement& itemElem ) const; void _readXML( const QDomDocument& doc, const QDomElement& annotationElem ); -}; \ No newline at end of file +}; diff --git a/python/gui/qgsformannotationitem.sip b/python/gui/qgsformannotationitem.sip index 488838dc843..a4ff6376f18 100644 --- a/python/gui/qgsformannotationitem.sip +++ b/python/gui/qgsformannotationitem.sip @@ -13,9 +13,6 @@ class QgsFormAnnotationItem: QObject, QgsAnnotationItem //! paint function called by map canvas void paint( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 ); - /**Create a configuration dialog*/ - QDialog* createEditor(); - QSizeF minimumFrameSize() const; /**Returns the optimal frame size*/ QSizeF preferredFrameSize() const; @@ -28,4 +25,4 @@ class QgsFormAnnotationItem: QObject, QgsAnnotationItem void writeXML( QDomDocument& doc ) const; void readXML( const QDomDocument& doc, const QDomElement& itemElem ); -}; \ No newline at end of file +}; diff --git a/python/gui/qgstextannotationitem.sip b/python/gui/qgstextannotationitem.sip index 2fc1e616064..7f6793206c6 100644 --- a/python/gui/qgstextannotationitem.sip +++ b/python/gui/qgstextannotationitem.sip @@ -7,8 +7,6 @@ class QgsTextAnnotationItem: QgsAnnotationItem QgsTextAnnotationItem( QgsMapCanvas* canvas ); ~QgsTextAnnotationItem(); - QDialog* createEditor(); - /**Returns document (caller takes ownership)*/ QTextDocument* document() const; /**Sets document (does not take ownership)*/ @@ -18,4 +16,4 @@ class QgsTextAnnotationItem: QgsAnnotationItem void readXML( const QDomDocument& doc, const QDomElement& itemElem ); void paint( QPainter* painter ); -}; \ No newline at end of file +}; diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt index c4a40458461..86384b2770c 100644 --- a/src/app/CMakeLists.txt +++ b/src/app/CMakeLists.txt @@ -4,6 +4,7 @@ SET(QGIS_APP_SRCS qgisappinterface.cpp qgsabout.cpp qgsaddattrdialog.cpp + qgsannotationwidget.cpp qgsattributeactiondialog.cpp qgsattributedialog.cpp qgsattributetypedialog.cpp @@ -17,6 +18,7 @@ SET(QGIS_APP_SRCS qgscustomprojectiondialog.cpp qgsdbfilterproxymodel.cpp qgsdbtablemodel.cpp + qgsformannotationdialog.cpp qgsspatialitefilterproxymodel.cpp qgsspatialitetablemodel.cpp qgsdelattrdialog.cpp @@ -65,6 +67,7 @@ SET(QGIS_APP_SRCS qgsprojectproperties.cpp qgsrasterlayerproperties.cpp qgssearchquerybuilder.cpp + qgstextannotationdialog.cpp qgswmssourceselect.cpp qgsshortcutsmanager.cpp qgssinglesymboldialog.cpp @@ -126,6 +129,7 @@ SET (QGIS_APP_MOC_HDRS qgisappinterface.h qgsabout.h qgsaddattrdialog.h + qgsannotationwidget.h qgsattributeactiondialog.h qgsattributedialog.h qgsattributetypedialog.h @@ -137,15 +141,14 @@ SET (QGIS_APP_MOC_HDRS qgscustomprojectiondialog.h qgsdelattrdialog.h qgsfieldcalculator.h + qgsformannotationdialog.h qgsmaptoolmeasureangle.h qgsnewvectorlayerdialog.h qgsgraduatedsymboldialog.h qgshelpviewer.h qgsidentifyresults.h qgslabeldialog.h - qgsmanageconnectionsdialog.h - qgsmaptoolidentify.h qgsmaptoolsplitfeatures.h qgsmaptoolvertexedit.h @@ -161,7 +164,6 @@ SET (QGIS_APP_MOC_HDRS qgsmaptooldeletevertex.h qgsmaptoolmovevertex.h qgsmaptoolsimplify.h - qgsmeasuretool.h qgsmeasuredialog.h qgsmergeattributesdialog.h @@ -172,6 +174,7 @@ SET (QGIS_APP_MOC_HDRS qgsprojectproperties.h qgsrasterlayerproperties.h qgssearchquerybuilder.h + qgstextannotationdialog.h qgswmssourceselect.h qgssinglesymboldialog.h qgssnappingdialog.h diff --git a/src/gui/qgsannotationwidget.cpp b/src/app/qgsannotationwidget.cpp similarity index 100% rename from src/gui/qgsannotationwidget.cpp rename to src/app/qgsannotationwidget.cpp diff --git a/src/gui/qgsannotationwidget.h b/src/app/qgsannotationwidget.h similarity index 100% rename from src/gui/qgsannotationwidget.h rename to src/app/qgsannotationwidget.h diff --git a/src/gui/qgsformannotationdialog.cpp b/src/app/qgsformannotationdialog.cpp similarity index 100% rename from src/gui/qgsformannotationdialog.cpp rename to src/app/qgsformannotationdialog.cpp diff --git a/src/gui/qgsformannotationdialog.h b/src/app/qgsformannotationdialog.h similarity index 100% rename from src/gui/qgsformannotationdialog.h rename to src/app/qgsformannotationdialog.h diff --git a/src/app/qgsmaptoolannotation.cpp b/src/app/qgsmaptoolannotation.cpp index 2abb58003b1..bb09dbc2496 100755 --- a/src/app/qgsmaptoolannotation.cpp +++ b/src/app/qgsmaptoolannotation.cpp @@ -16,9 +16,11 @@ ***************************************************************************/ #include "qgsmaptoolannotation.h" +#include "qgsformannotationdialog.h" #include "qgsformannotationitem.h" #include "qgslogger.h" #include "qgsmapcanvas.h" +#include "qgstextannotationdialog.h" #include "qgstextannotationitem.h" #include #include @@ -39,6 +41,28 @@ QgsAnnotationItem* QgsMapToolAnnotation::createItem( QMouseEvent* e ) return 0; } +QDialog* QgsMapToolAnnotation::createItemEditor( QgsAnnotationItem* item ) +{ + if ( !item ) + { + return 0; + } + + QgsTextAnnotationItem* tItem = dynamic_cast( item ); + if ( tItem ) + { + return new QgsTextAnnotationDialog( tItem ); + } + + QgsFormAnnotationItem* fItem = dynamic_cast( item ); + if ( fItem ) + { + return new QgsFormAnnotationDialog( fItem ); + } + + return 0; +} + void QgsMapToolAnnotation::canvasReleaseEvent( QMouseEvent * e ) { mCurrentMoveAction = QgsAnnotationItem::NoAction; @@ -193,7 +217,7 @@ void QgsMapToolAnnotation::canvasDoubleClickEvent( QMouseEvent * e ) { return; } - QDialog* itemEditor = item->createEditor(); + QDialog* itemEditor = createItemEditor( item ); if ( itemEditor ) { itemEditor->exec(); diff --git a/src/app/qgsmaptoolannotation.h b/src/app/qgsmaptoolannotation.h index 5b3bf2cc07b..da99c55be57 100755 --- a/src/app/qgsmaptoolannotation.h +++ b/src/app/qgsmaptoolannotation.h @@ -36,6 +36,8 @@ class QgsMapToolAnnotation: public QgsMapTool protected: /**Creates a new item. To be implemented by subclasses. Returns 0 by default*/ virtual QgsAnnotationItem* createItem( QMouseEvent* e ); + /**Creates an editor widget (caller takes ownership)*/ + QDialog* createItemEditor( QgsAnnotationItem* item ); private: /**Returns the topmost annotation item at the position (or 0 if none)*/ diff --git a/src/gui/qgstextannotationdialog.cpp b/src/app/qgstextannotationdialog.cpp similarity index 100% rename from src/gui/qgstextannotationdialog.cpp rename to src/app/qgstextannotationdialog.cpp diff --git a/src/gui/qgstextannotationdialog.h b/src/app/qgstextannotationdialog.h similarity index 100% rename from src/gui/qgstextannotationdialog.h rename to src/app/qgstextannotationdialog.h diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 7fd77e5954b..ded1c5ae0ef 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -22,7 +22,6 @@ symbology-ng/characterwidget.cpp qgisgui.cpp qgisinterface.cpp qgsannotationitem.cpp -qgsannotationwidget.cpp qgsattributeeditor.cpp qgslegendinterface.cpp qgscolorbutton.cpp @@ -33,7 +32,6 @@ qgsdetaileditemwidget.cpp qgsdetaileditemdata.cpp qgsencodingfiledialog.cpp qgsfiledropedit.cpp -qgsformannotationdialog.cpp qgsformannotationitem.cpp qgsgenericprojectionselector.cpp qgsmapcanvas.cpp @@ -52,7 +50,6 @@ qgsprojectbadlayerguihandler.cpp qgsprojectionselector.cpp qgsquickprint.cpp qgsrubberband.cpp -qgstextannotationdialog.cpp qgstextannotationitem.cpp qgsvertexmarker.cpp qgsludialog.cpp @@ -75,7 +72,6 @@ symbology-ng/qgsvectorrandomcolorrampv2dialog.h symbology-ng/qgsvectorcolorbrewercolorrampv2dialog.h symbology-ng/characterwidget.h -qgsannotationwidget.h qgsattributeeditor.h qgscomposerview.h qgsdetaileditemdelegate.h @@ -83,7 +79,6 @@ qgsdetaileditemwidget.h qgslegendinterface.h qgisinterface.h qgsencodingfiledialog.h -qgsformannotationdialog.h qgsformannotationitem.h qgsgenericprojectionselector.h qgsmapcanvas.h @@ -93,7 +88,6 @@ qgsmessageviewer.h qgscredentialdialog.h qgsprojectionselector.h qgsquickprint.h -qgstextannotationdialog.h qgsludialog.h qgsprojectbadlayerguihandler.h ) diff --git a/src/gui/qgsannotationitem.h b/src/gui/qgsannotationitem.h index 4d4896d2d9a..9111002bec7 100755 --- a/src/gui/qgsannotationitem.h +++ b/src/gui/qgsannotationitem.h @@ -50,9 +50,6 @@ class GUI_EXPORT QgsAnnotationItem: public QgsMapCanvasItem QgsAnnotationItem( QgsMapCanvas* mapCanvas ); virtual ~QgsAnnotationItem(); - /**Creates an editor widget (caller takes ownership)*/ - virtual QDialog* createEditor() = 0; - void updatePosition(); QRectF boundingRect() const; diff --git a/src/gui/qgsformannotationitem.cpp b/src/gui/qgsformannotationitem.cpp index 37bb466093e..5b8551f90eb 100644 --- a/src/gui/qgsformannotationitem.cpp +++ b/src/gui/qgsformannotationitem.cpp @@ -16,7 +16,6 @@ ***************************************************************************/ #include "qgsformannotationitem.h" -#include "qgsformannotationdialog.h" #include "qgsattributeeditor.h" #include "qgsfeature.h" #include "qgslogger.h" @@ -142,11 +141,6 @@ void QgsFormAnnotationItem::paint( QPainter * painter, const QStyleOptionGraphic } } -QDialog* QgsFormAnnotationItem::createEditor() -{ - return new QgsFormAnnotationDialog( this ); -} - QSizeF QgsFormAnnotationItem::minimumFrameSize() const { if ( mDesignerWidget ) diff --git a/src/gui/qgsformannotationitem.h b/src/gui/qgsformannotationitem.h index fef3c0200a2..614dbd6eccd 100644 --- a/src/gui/qgsformannotationitem.h +++ b/src/gui/qgsformannotationitem.h @@ -36,9 +36,6 @@ class GUI_EXPORT QgsFormAnnotationItem: public QObject, public QgsAnnotationItem //! paint function called by map canvas void paint( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 ); - /**Create a configuration dialog*/ - QDialog* createEditor(); - QSizeF minimumFrameSize() const; /**Returns the optimal frame size*/ QSizeF preferredFrameSize() const; diff --git a/src/gui/qgstextannotationitem.cpp b/src/gui/qgstextannotationitem.cpp index 266e04ac354..6dcd448fbc0 100755 --- a/src/gui/qgstextannotationitem.cpp +++ b/src/gui/qgstextannotationitem.cpp @@ -16,7 +16,6 @@ ***************************************************************************/ #include "qgstextannotationitem.h" -#include "qgstextannotationdialog.h" #include #include @@ -46,11 +45,6 @@ void QgsTextAnnotationItem::setDocument( const QTextDocument* doc ) mDocument = doc->clone(); } -QDialog* QgsTextAnnotationItem::createEditor() -{ - return new QgsTextAnnotationDialog( this ); -} - void QgsTextAnnotationItem::paint( QPainter * painter ) { if ( !painter || !mDocument ) diff --git a/src/gui/qgstextannotationitem.h b/src/gui/qgstextannotationitem.h index 1706c5789f1..72a8e5d57b8 100755 --- a/src/gui/qgstextannotationitem.h +++ b/src/gui/qgstextannotationitem.h @@ -28,8 +28,6 @@ class GUI_EXPORT QgsTextAnnotationItem: public QgsAnnotationItem QgsTextAnnotationItem( QgsMapCanvas* canvas ); ~QgsTextAnnotationItem(); - QDialog* createEditor(); - /**Returns document (caller takes ownership)*/ QTextDocument* document() const; /**Sets document (does not take ownership)*/