[QGIS Commit] r9544 - in branches/advanced_printing_branch2/src: app/composer ui

svn_qgis at osgeo.org svn_qgis at osgeo.org
Sat Oct 25 07:59:48 EDT 2008


Author: mhugent
Date: 2008-10-25 07:59:48 -0400 (Sat, 25 Oct 2008)
New Revision: 9544

Modified:
   branches/advanced_printing_branch2/src/app/composer/qgscomposeritemwidget.cpp
   branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.cpp
   branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.h
   branches/advanced_printing_branch2/src/ui/qgsitempositiondialogbase.ui
Log:
Improvements to position dialog

Modified: branches/advanced_printing_branch2/src/app/composer/qgscomposeritemwidget.cpp
===================================================================
--- branches/advanced_printing_branch2/src/app/composer/qgscomposeritemwidget.cpp	2008-10-25 11:09:28 UTC (rev 9543)
+++ branches/advanced_printing_branch2/src/app/composer/qgscomposeritemwidget.cpp	2008-10-25 11:59:48 UTC (rev 9544)
@@ -157,15 +157,6 @@
       return;
     }
 
-  QgsItemPositionDialog d(QRectF(mItem->transform().dx(), mItem->transform().dy(), mItem->rect().width(), mItem->rect().height()), 0);
-  if(d.exec() == QDialog::Accepted)
-    {
-      QgsPoint itemPosition;
-      if(d.position(itemPosition) == 0)
-	{
-	  //query position and mode from dialog
-	  mItem->setItemPosition(itemPosition.x(), itemPosition.y(), d.positionMode());
-	  mItem->update();
-	}
-    }
+  QgsItemPositionDialog d(mItem, 0);
+  d.exec();
 }

Modified: branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.cpp
===================================================================
--- branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.cpp	2008-10-25 11:09:28 UTC (rev 9543)
+++ branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.cpp	2008-10-25 11:59:48 UTC (rev 9544)
@@ -20,7 +20,7 @@
 #include <QButtonGroup>
 #include <QDoubleValidator>
 
-QgsItemPositionDialog::QgsItemPositionDialog(const QRectF& itemPosition, QWidget* parent): QDialog(parent), mItemPosition(itemPosition)
+QgsItemPositionDialog::QgsItemPositionDialog(QgsComposerItem* item, QWidget* parent): QDialog(parent), mItem(item)
 {
   setupUi(this);
 
@@ -44,7 +44,7 @@
   mUpperLeftCheckBox->setCheckState(Qt::Checked);
 }
 
-QgsItemPositionDialog::QgsItemPositionDialog()
+QgsItemPositionDialog::QgsItemPositionDialog(): mItem(0)
 {
 }
 
@@ -110,83 +110,105 @@
   return QgsComposerItem::UpperLeft;
 }
 
+void QgsItemPositionDialog::on_mCloseButton_clicked()
+{
+  accept();
+}
+
+void QgsItemPositionDialog::on_mSetPositionButton_clicked()
+{
+  if(!mItem)
+    {
+      return;
+    }
+
+  QgsPoint itemPosition;
+  if(position(itemPosition) == 0)
+    {
+      //query position and mode from dialog
+      mItem->setItemPosition(itemPosition.x(), itemPosition.y(), positionMode());
+      mItem->update();
+    }
+}
+
 void QgsItemPositionDialog::on_mUpperLeftCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left())); 
-      mYLineEdit->setText(QString::number(mItemPosition.top()));
+      mXLineEdit->setText(QString::number(mItem->transform().dx())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy()));
     }
 }
 
 void QgsItemPositionDialog::on_mUpperMiddleCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left() + mItemPosition.width() / 2.0)); 
-      mYLineEdit->setText(QString::number(mItemPosition.top()));
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width() / 2.0)); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy()));
     }
 }
   
 void QgsItemPositionDialog::on_mUpperRightCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.right())); 
-      mYLineEdit->setText(QString::number(mItemPosition.top()));
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy()));
     }
 }
 
 void QgsItemPositionDialog::on_mMiddleLeftCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left())); 
-      mYLineEdit->setText(QString::number(mItemPosition.bottom() + mItemPosition.height() / 2.0));
+      mXLineEdit->setText(QString::number(mItem->transform().dx())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height() / 2.0));
     }
 }
 
 void QgsItemPositionDialog::on_mMiddleCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left() + mItemPosition.width() / 2.0)); 
-      mYLineEdit->setText(QString::number(mItemPosition.bottom() + mItemPosition.height() / 2.0));
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width() / 2.0)); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height() / 2.0));
     }
 }
 
 void QgsItemPositionDialog::on_mMiddleRightCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.right())); 
-      mYLineEdit->setText(QString::number(mItemPosition.bottom() + mItemPosition.height() / 2.0));
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height() / 2.0));
     }
 }
 
 void QgsItemPositionDialog::on_mLowerLeftCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left())); 
-      mYLineEdit->setText(QString::number(mItemPosition.bottom()));
+      mXLineEdit->setText(QString::number(mItem->transform().dx())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height()));
     }
 }
 
 void QgsItemPositionDialog::on_mLowerMiddleCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      mXLineEdit->setText(QString::number(mItemPosition.left() + mItemPosition.width() / 2.0)); 
-      mYLineEdit->setText(QString::number(mItemPosition.bottom()));
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width() / 2.0)); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height()));
     }
 }
 
 void QgsItemPositionDialog::on_mLowerRightCheckBox_stateChanged(int state)
 {
-  if(state == Qt::Checked)
+  if(state == Qt::Checked && mItem)
     {
-      //mXLineEdit->setText(); 
-      //mYLineEdit->setText();
+      mXLineEdit->setText(QString::number(mItem->transform().dx() + mItem->rect().width())); 
+      mYLineEdit->setText(QString::number(mItem->transform().dy() + mItem->rect().height()));
     }
 }

Modified: branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.h
===================================================================
--- branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.h	2008-10-25 11:09:28 UTC (rev 9543)
+++ branches/advanced_printing_branch2/src/app/composer/qgsitempositiondialog.h	2008-10-25 11:59:48 UTC (rev 9544)
@@ -27,7 +27,7 @@
 {
   Q_OBJECT
  public:
-  QgsItemPositionDialog(const QRectF& itemPosition, QWidget* parent = 0);
+  QgsItemPositionDialog(QgsComposerItem* item, QWidget* parent = 0);
   ~QgsItemPositionDialog();
 
   /**Get selected x- and y-coordinate as point. Returns 0 in case of success*/
@@ -36,6 +36,10 @@
   QgsComposerItem::ItemPositionMode positionMode() const;
 
  public slots:
+
+  void on_mCloseButton_clicked();
+  void on_mSetPositionButton_clicked();
+
   //adjust coordinates in line edits
   void on_mUpperLeftCheckBox_stateChanged(int state);
   void on_mUpperMiddleCheckBox_stateChanged(int state);
@@ -48,7 +52,7 @@
   void on_mLowerRightCheckBox_stateChanged(int state);
 
  private:
-  QRectF mItemPosition;
+  QgsComposerItem* mItem;
 
   //default constructor forbidden
   QgsItemPositionDialog();

Modified: branches/advanced_printing_branch2/src/ui/qgsitempositiondialogbase.ui
===================================================================
--- branches/advanced_printing_branch2/src/ui/qgsitempositiondialogbase.ui	2008-10-25 11:09:28 UTC (rev 9543)
+++ branches/advanced_printing_branch2/src/ui/qgsitempositiondialogbase.ui	2008-10-25 11:59:48 UTC (rev 9544)
@@ -6,7 +6,7 @@
     <x>0</x>
     <y>0</y>
     <width>434</width>
-    <height>229</height>
+    <height>274</height>
    </rect>
   </property>
   <property name="windowTitle" >
@@ -85,7 +85,7 @@
      </layout>
     </widget>
    </item>
-   <item row="0" column="1" >
+   <item row="0" column="1" colspan="2" >
     <widget class="QGroupBox" name="mCoordinatesGroupBox" >
      <property name="title" >
       <string>Coordinates</string>
@@ -123,50 +123,38 @@
     </widget>
    </item>
    <item row="1" column="0" colspan="2" >
-    <widget class="QDialogButtonBox" name="buttonBox" >
+    <spacer>
      <property name="orientation" >
       <enum>Qt::Horizontal</enum>
      </property>
-     <property name="standardButtons" >
-      <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
+     <property name="sizeHint" >
+      <size>
+       <width>201</width>
+       <height>20</height>
+      </size>
      </property>
-    </widget>
+    </spacer>
    </item>
+   <item row="1" column="2" >
+    <layout class="QHBoxLayout" >
+     <item>
+      <widget class="QPushButton" name="mSetPositionButton" >
+       <property name="text" >
+        <string>Set Position</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="mCloseButton" >
+       <property name="text" >
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
   </layout>
  </widget>
  <resources/>
- <connections>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>accepted()</signal>
-   <receiver>QgsItemPositionDialogBase</receiver>
-   <slot>accept()</slot>
-   <hints>
-    <hint type="sourcelabel" >
-     <x>248</x>
-     <y>254</y>
-    </hint>
-    <hint type="destinationlabel" >
-     <x>157</x>
-     <y>274</y>
-    </hint>
-   </hints>
-  </connection>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>rejected()</signal>
-   <receiver>QgsItemPositionDialogBase</receiver>
-   <slot>reject()</slot>
-   <hints>
-    <hint type="sourcelabel" >
-     <x>316</x>
-     <y>260</y>
-    </hint>
-    <hint type="destinationlabel" >
-     <x>286</x>
-     <y>274</y>
-    </hint>
-   </hints>
-  </connection>
- </connections>
+ <connections/>
 </ui>



More information about the QGIS-commit mailing list