[QGIS Commit] r11169 - in branches/symbology-ng-branch/src:
gui/symbology-ng ui
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Fri Jul 24 09:24:18 EDT 2009
Author: wonder
Date: 2009-07-24 09:24:17 -0400 (Fri, 24 Jul 2009)
New Revision: 11169
Modified:
branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.cpp
branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.h
branches/symbology-ng-branch/src/ui/qgssymbolv2selectordialogbase.ui
Log:
"Add symbol to style" functionality in symbol selector.
Modified: branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.cpp
===================================================================
--- branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.cpp 2009-07-24 12:32:21 UTC (rev 11168)
+++ branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.cpp 2009-07-24 13:24:17 UTC (rev 11169)
@@ -7,9 +7,12 @@
#include "qgssymbollayerv2utils.h"
#include "qgsstylev2.h"
+#include "qgsapplication.h"
+
#include <QColorDialog>
#include <QPainter>
#include <QStandardItemModel>
+#include <QInputDialog>
QgsSymbolV2SelectorDialog::QgsSymbolV2SelectorDialog(QgsSymbolV2* symbol, QgsStyleV2* style, QWidget* parent, bool embedded)
: QDialog(parent)
@@ -45,6 +48,8 @@
connect(spinSize, SIGNAL(valueChanged(double)), this, SLOT(setMarkerSize(double)));
connect(spinWidth, SIGNAL(valueChanged(double)), this, SLOT(setLineWidth(double)));
+ connect(btnAddToStyle, SIGNAL(clicked()), this, SLOT(addSymbolToStyle()));
+ btnAddToStyle->setIcon( QIcon( QgsApplication::defaultThemePath() + "symbologyAdd.png" ) );
}
void QgsSymbolV2SelectorDialog::populateSymbolView()
@@ -183,3 +188,17 @@
updateSymbolPreview();
emit symbolModified();
}
+
+void QgsSymbolV2SelectorDialog::addSymbolToStyle()
+{
+ bool ok;
+ QString name = QInputDialog::getText(this, "Symbol name",
+ "Please enter name for the symbol:", QLineEdit::Normal, "New symbol", &ok);
+ if (!ok || name.isEmpty())
+ return;
+
+ // add new symbol to style and re-populate the list
+ mStyle->addSymbol(name, mSymbol->clone());
+
+ populateSymbolView();
+}
Modified: branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.h
===================================================================
--- branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.h 2009-07-24 12:32:21 UTC (rev 11168)
+++ branches/symbology-ng-branch/src/gui/symbology-ng/qgssymbolv2selectordialog.h 2009-07-24 13:24:17 UTC (rev 11169)
@@ -30,6 +30,7 @@
void setMarkerAngle(double angle);
void setMarkerSize(double size);
void setLineWidth(double width);
+ void addSymbolToStyle();
signals:
void symbolModified();
Modified: branches/symbology-ng-branch/src/ui/qgssymbolv2selectordialogbase.ui
===================================================================
--- branches/symbology-ng-branch/src/ui/qgssymbolv2selectordialogbase.ui 2009-07-24 12:32:21 UTC (rev 11168)
+++ branches/symbology-ng-branch/src/ui/qgssymbolv2selectordialogbase.ui 2009-07-24 13:24:17 UTC (rev 11169)
@@ -6,17 +6,17 @@
<rect>
<x>0</x>
<y>0</y>
- <width>477</width>
+ <width>452</width>
<height>397</height>
</rect>
</property>
<property name="windowTitle">
<string>Symbol selector</string>
</property>
- <layout class="QVBoxLayout">
+ <layout class="QVBoxLayout" name="verticalLayout">
<item>
- <layout class="QGridLayout">
- <item row="0" column="0" rowspan="2">
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="0" column="0" rowspan="3">
<widget class="QLabel" name="lblPreview">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
@@ -45,7 +45,7 @@
</property>
</widget>
</item>
- <item row="0" column="2" rowspan="2">
+ <item row="0" column="2" rowspan="3">
<widget class="QStackedWidget" name="stackedWidget">
<property name="currentIndex">
<number>1</number>
@@ -116,28 +116,32 @@
</widget>
</item>
<item row="0" column="3" rowspan="2">
- <spacer>
+ <spacer name="verticalSpacer">
<property name="orientation">
- <enum>Qt::Horizontal</enum>
+ <enum>Qt::Vertical</enum>
</property>
- <property name="sizeType">
- <enum>QSizePolicy::Preferred</enum>
- </property>
<property name="sizeHint" stdset="0">
<size>
- <width>50</width>
- <height>81</height>
+ <width>20</width>
+ <height>40</height>
</size>
</property>
</spacer>
</item>
- <item row="1" column="1">
+ <item row="1" column="1" rowspan="2">
<widget class="QPushButton" name="btnSetColor">
<property name="text">
<string>Set color</string>
</property>
</widget>
</item>
+ <item row="2" column="3">
+ <widget class="QPushButton" name="btnAddToStyle">
+ <property name="text">
+ <string>Add to style</string>
+ </property>
+ </widget>
+ </item>
</layout>
</item>
<item>
More information about the QGIS-commit
mailing list