[QGIS Commit] r13729 - trunk/qgis/python/plugins/fTools/tools

svn_qgis at osgeo.org svn_qgis at osgeo.org
Sun Jun 13 18:46:00 EDT 2010


Author: cfarmer
Date: 2010-06-13 22:46:00 +0000 (Sun, 13 Jun 2010)
New Revision: 13729

Modified:
   trunk/qgis/python/plugins/fTools/tools/doGeoprocessing.py
   trunk/qgis/python/plugins/fTools/tools/frmGeoprocessing.ui
Log:
adds spin box to choose the number of nodes to approximate a circle for the buffer tool

Modified: trunk/qgis/python/plugins/fTools/tools/doGeoprocessing.py
===================================================================
--- trunk/qgis/python/plugins/fTools/tools/doGeoprocessing.py	2010-06-13 22:06:25 UTC (rev 13728)
+++ trunk/qgis/python/plugins/fTools/tools/doGeoprocessing.py	2010-06-13 22:46:00 UTC (rev 13729)
@@ -24,7 +24,7 @@
     self.cancel_close = self.buttonBox_2.button( QDialogButtonBox.Close )
     self.buttonOk = self.buttonBox_2.button( QDialogButtonBox.Ok )
     self.progressBar.setValue (0 )
-  
+
   def checkA( self ):
     inputLayer = unicode( self.inShapeA.currentText() )
     if inputLayer != "":
@@ -33,7 +33,7 @@
         self.useSelectedA.setCheckState( Qt.Checked )
       else:
         self.useSelectedA.setCheckState( Qt.Unchecked )
-  
+
   def checkB( self ):
     inputLayer = unicode( self.inShapeB.currentText() )
     if inputLayer != "":
@@ -42,7 +42,7 @@
         self.useSelectedB.setCheckState( Qt.Checked )
       else:
         self.useSelectedB.setCheckState( Qt.Unchecked )
-  
+
   def update( self ):
     self.attrib.clear()
     inputLayer = unicode( self.inShapeA.currentText() )
@@ -53,7 +53,7 @@
         self.attrib.addItem( unicode( changedField[i].name() ) )
       if self.myFunction == 4:
         self.attrib.addItem( "--- " + self.tr( "Dissolve all" ) + " ---" )
-  
+
   def accept( self ):
     if self.inShapeA.currentText() == "":
       QMessageBox.warning( self, self.tr("Geoprocessing"), self.tr( "Please specify an input layer" ) )
@@ -77,24 +77,24 @@
       else:
         self.outShape.clear()
         if self.attrib.isEnabled():
-          self.geoprocessing( self.inShapeA.currentText(), self.inShapeB.currentText(), 
+          self.geoprocessing( self.inShapeA.currentText(), self.inShapeB.currentText(),
           unicode( self.attrib.currentText() ), self.mergeOutput.checkState(), self.useSelectedA.checkState(),
-          self.useSelectedB.checkState() )
+          self.useSelectedB.checkState(), self.spnSegments.value() )
         else:
           if self.param.isEnabled() and self.param.isVisible():
             parameter = float( self.param.text() )
           else:
             parameter = None
-          self.geoprocessing( self.inShapeA.currentText(), self.inShapeB.currentText(), 
-          parameter, self.mergeOutput.checkState(), self.useSelectedA.checkState(), self.useSelectedB.checkState() )
-  
+          self.geoprocessing( self.inShapeA.currentText(), self.inShapeB.currentText(),
+          parameter, self.mergeOutput.checkState(), self.useSelectedA.checkState(), self.useSelectedB.checkState(), self.spnSegments.value() )
+
   def outFile( self ):
     self.outShape.clear()
     ( self.shapefileName, self.encoding ) = ftools_utils.saveDialog( self )
     if self.shapefileName is None or self.encoding is None:
       return
     self.outShape.setText( QString( self.shapefileName ) )
-  
+
   def manageGui( self ):
     if self.myFunction == 1:  # Buffer
       self.label_2.hide()
@@ -110,6 +110,8 @@
       self.rdoField.setText( self.tr( "Create convex hulls based on input field" ) )
       self.label_4.hide()
       self.param.hide()
+      self.lblSegments.hide()
+      self.spnSegments.hide()
       self.setWindowTitle( self.tr( "Convex hull(s)" ) )
       self.mergeOutput.hide()
     elif self.myFunction == 4: # Dissolve
@@ -121,6 +123,8 @@
       self.param.hide()
       self.rdoField.hide()
       self.mergeOutput.hide()
+      self.lblSegments.hide()
+      self.spnSegments.hide()
       self.setWindowTitle( self.tr( "Dissolve" ) )
     else:
       self.rdoBuffer.hide()
@@ -129,6 +133,8 @@
       self.rdoField.hide()
       self.attrib.hide()
       self.mergeOutput.hide()
+      self.lblSegments.hide()
+      self.spnSegments.hide()
       if self.myFunction == 3: # Difference
         self.label_2.setText( self.tr( "Difference layer" ) )
         self.setWindowTitle( self.tr( "Difference" ) )
@@ -149,7 +155,7 @@
     myListB = []
     self.inShapeA.clear()
     self.inShapeB.clear()
-    
+
     if self.myFunction == 5 or self.myFunction == 8 or self.myFunction == 3:
       myListA = ftools_utils.getLayerNames( [ QGis.Point, QGis.Line, QGis.Polygon ] )
       myListB = ftools_utils.getLayerNames( [ QGis.Polygon ] )
@@ -175,15 +181,15 @@
 #7: Symetrical Difference
 #8: Clip
 
-  def geoprocessing( self,  myLayerA,  myLayerB,  myParam,  myMerge, mySelectionA, mySelectionB ):
+  def geoprocessing( self,  myLayerA,  myLayerB,  myParam,  myMerge, mySelectionA, mySelectionB, mySegments ):
     check = QFile( self.shapefileName )
     if check.exists():
       if not QgsVectorFileWriter.deleteShapeFile( self.shapefileName ):
         QMessageBox.warning( self, self.tr("Geoprocessing"), self.tr( "Unable to delete existing shapefile." ) )
         return
     self.buttonOk.setEnabled( False )
-    self.testThread = geoprocessingThread( self.iface.mainWindow(), self, self.myFunction, myLayerA, 
-    myLayerB, myParam, myMerge, mySelectionA, mySelectionB, self.shapefileName, self.encoding )
+    self.testThread = geoprocessingThread( self.iface.mainWindow(), self, self.myFunction, myLayerA,
+    myLayerB, myParam, myMerge, mySelectionA, mySelectionB, mySegments, self.shapefileName, self.encoding )
     QObject.connect( self.testThread, SIGNAL( "runFinished(PyQt_PyObject)" ), self.runFinishedFromThread )
     QObject.connect( self.testThread, SIGNAL( "runStatus(PyQt_PyObject)" ), self.runStatusFromThread )
     QObject.connect( self.testThread, SIGNAL( "runRange(PyQt_PyObject)" ), self.runRangeFromThread )
@@ -191,11 +197,11 @@
     QObject.connect( self.cancel_close, SIGNAL( "clicked()" ), self.cancelThread )
     self.testThread.start()
     return True
-  
+
   def cancelThread( self ):
     self.testThread.stop()
     self.buttonOk.setEnabled( True )
-  
+
   def runFinishedFromThread( self, results ):
     self.testThread.stop()
     self.buttonOk.setEnabled( True )
@@ -226,16 +232,16 @@
     if addToTOC == QMessageBox.Yes:
       if not ftools_utils.addShapeToCanvas( unicode( self.shapefileName ) ):
           QMessageBox.warning( self, self.tr("Geoprocessing"), self.tr( "Error loading output shapefile:\n%1" ).arg( unicode( self.shapefileName ) ))
-    
+
   def runStatusFromThread( self, status ):
     self.progressBar.setValue( status )
-  
+
   def runRangeFromThread( self, range_vals ):
     self.progressBar.setRange( range_vals[ 0 ], range_vals[ 1 ] )
-  
+
 class geoprocessingThread( QThread ):
-  def __init__( self, parentThread, parentObject, function, myLayerA, myLayerB, 
-  myParam, myMerge, mySelectionA, mySelectionB, myName, myEncoding ):
+  def __init__( self, parentThread, parentObject, function, myLayerA, myLayerB,
+  myParam, myMerge, mySelectionA, mySelectionB, mySegments, myName, myEncoding ):
     QThread.__init__( self, parentThread )
     self.parent = parentObject
     self.running = False
@@ -246,9 +252,10 @@
     self.myMerge = myMerge
     self.mySelectionA = mySelectionA
     self.mySelectionB = mySelectionB
+    self.mySegments = int( mySegments )
     self.myName = myName
     self.myEncoding = myEncoding
-  
+
   def run( self ):
     self.running = True
     self.vlayerA = ftools_utils.getVectorLayerByName( self.myLayerA )
@@ -276,10 +283,10 @@
         geos, feature, match = self.clip()
     self.emit( SIGNAL( "runFinished(PyQt_PyObject)" ), (geos, feature, match, error) )
     self.emit( SIGNAL( "runStatus(PyQt_PyObject)" ), 0 )
-  
+
   def stop(self):
     self.running = False
-  
+
   def buffering( self, useField ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -287,7 +294,7 @@
     allAttrs = vproviderA.attributeIndexes()
     vproviderA.select( allAttrs )
     fields = vproviderA.fields()
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, QGis.WKBPolygon, vproviderA.crs() )
     outFeat = QgsFeature()
     inFeat = QgsFeature()
@@ -311,7 +318,7 @@
             value = self.myParam
           inGeom = QgsGeometry( inFeat.geometry() )
           try:
-            outGeom = inGeom.buffer( float( value ), 5 )
+            outGeom = inGeom.buffer( float( value ), self.mySegments )
             if first:
               tempGeom = QgsGeometry( outGeom )
               first = False
@@ -341,7 +348,7 @@
             value = self.myParam
           inGeom = QgsGeometry( inFeat.geometry() )
           try:
-            outGeom = inGeom.buffer( float( value ), 5 )
+            outGeom = inGeom.buffer( float( value ), self.mySegments )
             try:
               outFeat.setGeometry( outGeom )
               outFeat.setAttributeMap( atMap )
@@ -370,7 +377,7 @@
             value = self.myParam
           inGeom = QgsGeometry( inFeat.geometry() )
           try:
-            outGeom = inGeom.buffer( float( value ), 5 )
+            outGeom = inGeom.buffer( float( value ), self.mySegments )
             if first:
               tempGeom = QgsGeometry( outGeom )
               first = False
@@ -401,7 +408,7 @@
             value = self.myParam
           inGeom = QgsGeometry( inFeat.geometry() )
           try:
-            outGeom = inGeom.buffer( float( value ), 5 )
+            outGeom = inGeom.buffer( float( value ), self.mySegments )
             try:
               outFeat.setGeometry( outGeom )
               outFeat.setAttributeMap( atMap )
@@ -416,7 +423,7 @@
           self.emit( SIGNAL( "runStatus(PyQt_PyObject)" ), nElement )
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, True
-  
+
   def convex_hull(self, useField ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -424,14 +431,14 @@
     allAttrsA = vproviderA.attributeIndexes()
     vproviderA.select(allAttrsA)
     fields = vproviderA.fields()
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, QGis.WKBPolygon, vproviderA.crs() )
     inFeat = QgsFeature()
     outFeat = QgsFeature()
     inGeom = QgsGeometry()
     outGeom = QgsGeometry()
     nElement = 0
-    
+
     # there is selection in input layer
     if self.mySelectionA:
       nFeat = self.vlayerA.selectedFeatureCount()
@@ -501,7 +508,7 @@
           first = True
           outID = 0
           vproviderA.select( allAttrsA )#, rect )
-          vproviderA.rewind()
+          #vproviderA.rewind()
           while vproviderA.nextFeature( inFeat ):
             atMap = inFeat.attributeMap()
             idVar = atMap[ self.myParam ]
@@ -531,7 +538,7 @@
         self.emit( SIGNAL( "runStatus(PyQt_PyObject)" ), 0 )
         self.emit( SIGNAL( "runRange(PyQt_PyObject)" ), ( 0, nFeat ) )
         hull = []
-        vproviderA.rewind()
+        #vproviderA.rewind()
         vproviderA.select(allAttrsA)
         while vproviderA.nextFeature( inFeat ):
           inGeom = QgsGeometry( inFeat.geometry() )
@@ -548,14 +555,14 @@
           GEOS_EXCEPT = False
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, True
-  
+
   def dissolve( self, useField ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
     vproviderA = self.vlayerA.dataProvider()
     allAttrsA = vproviderA.attributeIndexes()
     fields = vproviderA.fields()
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     inFeat = QgsFeature()
     outFeat = QgsFeature()
@@ -685,7 +692,7 @@
             writer.addFeature( outFeat )
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, True
-  
+
   def difference( self ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -703,7 +710,7 @@
         crs_match = None
     else:
         crs_match = crsA == crsB
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     inFeatA = QgsFeature()
     inFeatB = QgsFeature()
@@ -842,7 +849,7 @@
               continue
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match
-  
+
   def intersect( self ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -864,7 +871,7 @@
     if not longNames.isEmpty():
       message = QString( 'Following field names are longer than 10 characters:\n%1' ).arg( longNames.join( '\n' ) )
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, message
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     if writer.hasError():
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, writer.errorMessage()
@@ -984,7 +991,7 @@
           geom = QgsGeometry( inFeatA.geometry() )
           atMapA = inFeatA.attributeMap()
           intersects = index.intersects( geom.boundingBox() )
-          for id in intersects: 
+          for id in intersects:
             vproviderB.featureAtId( int( id ), inFeatB , True, allAttrsB )
             tmpGeom = QgsGeometry( inFeatB.geometry() )
             try:
@@ -1010,7 +1017,7 @@
     del writer
     print crs_match
     return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, None
-  
+
   def union( self ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -1032,7 +1039,7 @@
     if not longNames.isEmpty():
       message = QString( 'Following field names are longer than 10 characters:\n%1' ).arg( longNames.join( '\n' ) )
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, message
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     if writer.hasError():
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, writer.errorMessage()
@@ -1144,7 +1151,7 @@
       nElement += 1
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, None
-  
+
   def symetrical_difference( self ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -1166,7 +1173,7 @@
     if not longNames.isEmpty():
       message = QString( 'Following field names are longer than 10 characters:\n%1' ).arg( longNames.join( '\n' ) )
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, message
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     if writer.hasError():
       return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, writer.errorMessage()
@@ -1237,7 +1244,7 @@
           continue
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match, None
-  
+
   def clip( self ):
     GEOS_EXCEPT = True
     FEATURE_EXCEPT = True
@@ -1255,7 +1262,7 @@
     else:
         crs_match = crsA == crsB
     fields = vproviderA.fields()
-    writer = QgsVectorFileWriter( self.myName, self.myEncoding, 
+    writer = QgsVectorFileWriter( self.myName, self.myEncoding,
     fields, vproviderA.geometryType(), vproviderA.crs() )
     inFeatA = QgsFeature()
     inFeatB = QgsFeature()
@@ -1410,7 +1417,7 @@
                 continue
             except:
               GEOS_EXCEPT = False
-              continue          
+              continue
       # we have no selection in overlay layer
       else:
         while vproviderA.nextFeature( inFeatA ):
@@ -1455,7 +1462,7 @@
                   continue
               except:
                 GEOS_EXCEPT = False
-                continue              
+                continue
     del writer
     return GEOS_EXCEPT, FEATURE_EXCEPT, crs_match
 

Modified: trunk/qgis/python/plugins/fTools/tools/frmGeoprocessing.ui
===================================================================
--- trunk/qgis/python/plugins/fTools/tools/frmGeoprocessing.ui	2010-06-13 22:06:25 UTC (rev 13728)
+++ trunk/qgis/python/plugins/fTools/tools/frmGeoprocessing.ui	2010-06-13 22:46:00 UTC (rev 13729)
@@ -1,37 +1,38 @@
-<ui version="4.0" >
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
  <class>Dialog</class>
- <widget class="QDialog" name="Dialog" >
-  <property name="geometry" >
+ <widget class="QDialog" name="Dialog">
+  <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
     <width>422</width>
-    <height>405</height>
+    <height>448</height>
    </rect>
   </property>
-  <property name="sizePolicy" >
-   <sizepolicy vsizetype="Preferred" hsizetype="Minimum" >
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
     <horstretch>0</horstretch>
     <verstretch>0</verstretch>
    </sizepolicy>
   </property>
-  <property name="windowTitle" >
+  <property name="windowTitle">
    <string>Geoprocessing</string>
   </property>
-  <layout class="QGridLayout" name="gridLayout" >
-   <item row="0" column="0" colspan="2" >
-    <layout class="QVBoxLayout" >
+  <layout class="QGridLayout" name="gridLayout">
+   <item row="0" column="0" colspan="2">
+    <layout class="QVBoxLayout">
      <item>
-      <widget class="QLabel" name="label_1" >
-       <property name="text" >
+      <widget class="QLabel" name="label_1">
+       <property name="text">
         <string>Input vector layer</string>
        </property>
       </widget>
      </item>
      <item>
-      <widget class="QComboBox" name="inShapeA" >
-       <property name="sizePolicy" >
-        <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+      <widget class="QComboBox" name="inShapeA">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
          <horstretch>0</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
@@ -40,19 +41,30 @@
      </item>
     </layout>
    </item>
-   <item row="3" column="0" colspan="2" >
-    <layout class="QVBoxLayout" >
+   <item row="2" column="0">
+    <layout class="QVBoxLayout" name="verticalLayout">
      <item>
-      <widget class="QLabel" name="label_2" >
-       <property name="text" >
+      <widget class="QCheckBox" name="useSelectedA">
+       <property name="text">
+        <string>Use only selected features</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item row="3" column="0" colspan="2">
+    <layout class="QVBoxLayout">
+     <item>
+      <widget class="QLabel" name="label_2">
+       <property name="text">
         <string>Intersect layer</string>
        </property>
       </widget>
      </item>
      <item>
-      <widget class="QComboBox" name="inShapeB" >
-       <property name="sizePolicy" >
-        <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+      <widget class="QComboBox" name="inShapeB">
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
          <horstretch>0</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
@@ -61,16 +73,27 @@
      </item>
     </layout>
    </item>
-   <item row="5" column="0" colspan="2" >
-    <layout class="QHBoxLayout" >
+   <item row="4" column="0">
+    <layout class="QVBoxLayout" name="verticalLayout_2">
      <item>
-      <layout class="QHBoxLayout" >
+      <widget class="QCheckBox" name="useSelectedB">
+       <property name="text">
+        <string>Use only selected features</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item row="7" column="0" colspan="2">
+    <layout class="QHBoxLayout">
+     <item>
+      <layout class="QHBoxLayout">
        <item>
-        <widget class="QRadioButton" name="rdoBuffer" >
-         <property name="text" >
+        <widget class="QRadioButton" name="rdoBuffer">
+         <property name="text">
           <string>Buffer distance</string>
          </property>
-         <property name="checked" >
+         <property name="checked">
           <bool>true</bool>
          </property>
         </widget>
@@ -78,53 +101,53 @@
       </layout>
      </item>
      <item>
-      <widget class="QLineEdit" name="param" >
-       <property name="enabled" >
+      <widget class="QLineEdit" name="param">
+       <property name="enabled">
         <bool>true</bool>
        </property>
-       <property name="sizePolicy" >
-        <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
          <horstretch>0</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
        </property>
-       <property name="layoutDirection" >
+       <property name="layoutDirection">
         <enum>Qt::LeftToRight</enum>
        </property>
-       <property name="text" >
+       <property name="text">
         <string/>
        </property>
-       <property name="cursorPosition" >
+       <property name="cursorPosition">
         <number>0</number>
        </property>
       </widget>
      </item>
     </layout>
    </item>
-   <item row="6" column="0" colspan="2" >
-    <layout class="QVBoxLayout" >
+   <item row="9" column="0" colspan="2">
+    <layout class="QVBoxLayout">
      <item>
-      <layout class="QHBoxLayout" >
+      <layout class="QHBoxLayout">
        <item>
-        <widget class="QRadioButton" name="rdoField" >
-         <property name="text" >
+        <widget class="QRadioButton" name="rdoField">
+         <property name="text">
           <string>Buffer distance field</string>
          </property>
         </widget>
        </item>
        <item>
-        <widget class="QLabel" name="label_4" >
-         <property name="text" >
+        <widget class="QLabel" name="label_4">
+         <property name="text">
           <string>Dissolve field</string>
          </property>
         </widget>
        </item>
        <item>
         <spacer>
-         <property name="orientation" >
+         <property name="orientation">
           <enum>Qt::Horizontal</enum>
          </property>
-         <property name="sizeHint" stdset="0" >
+         <property name="sizeHint" stdset="0">
           <size>
            <width>40</width>
            <height>20</height>
@@ -135,12 +158,12 @@
       </layout>
      </item>
      <item>
-      <widget class="QComboBox" name="attrib" >
-       <property name="enabled" >
+      <widget class="QComboBox" name="attrib">
+       <property name="enabled">
         <bool>false</bool>
        </property>
-       <property name="sizePolicy" >
-        <sizepolicy vsizetype="Fixed" hsizetype="Minimum" >
+       <property name="sizePolicy">
+        <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
          <horstretch>0</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
@@ -149,32 +172,32 @@
      </item>
     </layout>
    </item>
-   <item row="7" column="0" >
-    <layout class="QHBoxLayout" >
-     <property name="spacing" >
+   <item row="10" column="0">
+    <layout class="QHBoxLayout">
+     <property name="spacing">
       <number>6</number>
      </property>
-     <property name="margin" >
+     <property name="margin">
       <number>0</number>
      </property>
      <item>
-      <widget class="QCheckBox" name="mergeOutput" >
-       <property name="enabled" >
+      <widget class="QCheckBox" name="mergeOutput">
+       <property name="enabled">
         <bool>true</bool>
        </property>
-       <property name="text" >
+       <property name="text">
         <string>Dissolve buffer results</string>
        </property>
       </widget>
      </item>
     </layout>
    </item>
-   <item row="8" column="0" >
+   <item row="11" column="0">
     <spacer>
-     <property name="orientation" >
+     <property name="orientation">
       <enum>Qt::Vertical</enum>
      </property>
-     <property name="sizeHint" stdset="0" >
+     <property name="sizeHint" stdset="0">
       <size>
        <width>20</width>
        <height>40</height>
@@ -182,27 +205,27 @@
      </property>
     </spacer>
    </item>
-   <item row="9" column="0" colspan="2" >
-    <layout class="QVBoxLayout" >
+   <item row="12" column="0" colspan="2">
+    <layout class="QVBoxLayout">
      <item>
-      <widget class="QLabel" name="label_5" >
-       <property name="text" >
+      <widget class="QLabel" name="label_5">
+       <property name="text">
         <string>Output shapefile</string>
        </property>
       </widget>
      </item>
      <item>
-      <layout class="QHBoxLayout" >
+      <layout class="QHBoxLayout">
        <item>
-        <widget class="QLineEdit" name="outShape" >
-         <property name="readOnly" >
+        <widget class="QLineEdit" name="outShape">
+         <property name="readOnly">
           <bool>true</bool>
          </property>
         </widget>
        </item>
        <item>
-        <widget class="QPushButton" name="btnBrowse" >
-         <property name="text" >
+        <widget class="QPushButton" name="btnBrowse">
+         <property name="text">
           <string>Browse</string>
          </property>
         </widget>
@@ -211,44 +234,43 @@
      </item>
     </layout>
    </item>
-   <item row="10" column="0" >
-    <widget class="QProgressBar" name="progressBar" >
-     <property name="value" >
+   <item row="13" column="0">
+    <widget class="QProgressBar" name="progressBar">
+     <property name="value">
       <number>0</number>
      </property>
-     <property name="alignment" >
+     <property name="alignment">
       <set>Qt::AlignCenter</set>
      </property>
-     <property name="orientation" >
+     <property name="orientation">
       <enum>Qt::Horizontal</enum>
      </property>
     </widget>
    </item>
-   <item row="10" column="1" >
-    <widget class="QDialogButtonBox" name="buttonBox_2" >
-     <property name="standardButtons" >
+   <item row="13" column="1">
+    <widget class="QDialogButtonBox" name="buttonBox_2">
+     <property name="standardButtons">
       <set>QDialogButtonBox::Close|QDialogButtonBox::Ok</set>
      </property>
     </widget>
    </item>
-   <item row="2" column="0" >
-    <layout class="QVBoxLayout" name="verticalLayout" >
+   <item row="6" column="0">
+    <layout class="QHBoxLayout" name="horizontalLayout">
      <item>
-      <widget class="QCheckBox" name="useSelectedA" >
-       <property name="text" >
-        <string>Use only selected features</string>
+      <widget class="QLabel" name="lblSegments">
+       <property name="text">
+        <string>Segments to approximate</string>
        </property>
       </widget>
      </item>
-    </layout>
-   </item>
-   <item row="4" column="0" >
-    <layout class="QVBoxLayout" name="verticalLayout_2" >
      <item>
-      <widget class="QCheckBox" name="useSelectedB" >
-       <property name="text" >
-        <string>Use only selected features</string>
+      <widget class="QSpinBox" name="spnSegments">
+       <property name="minimum">
+        <number>5</number>
        </property>
+       <property name="value">
+        <number>5</number>
+       </property>
       </widget>
      </item>
     </layout>
@@ -263,11 +285,11 @@
    <receiver>attrib</receiver>
    <slot>setEnabled(bool)</slot>
    <hints>
-    <hint type="sourcelabel" >
+    <hint type="sourcelabel">
      <x>96</x>
      <y>167</y>
     </hint>
-    <hint type="destinationlabel" >
+    <hint type="destinationlabel">
      <x>104</x>
      <y>222</y>
     </hint>
@@ -279,11 +301,11 @@
    <receiver>param</receiver>
    <slot>setEnabled(bool)</slot>
    <hints>
-    <hint type="sourcelabel" >
+    <hint type="sourcelabel">
      <x>61</x>
      <y>133</y>
     </hint>
-    <hint type="destinationlabel" >
+    <hint type="destinationlabel">
      <x>380</x>
      <y>155</y>
     </hint>
@@ -295,11 +317,11 @@
    <receiver>Dialog</receiver>
    <slot>reject()</slot>
    <hints>
-    <hint type="sourcelabel" >
+    <hint type="sourcelabel">
      <x>272</x>
      <y>383</y>
     </hint>
-    <hint type="destinationlabel" >
+    <hint type="destinationlabel">
      <x>246</x>
      <y>279</y>
     </hint>
@@ -311,11 +333,11 @@
    <receiver>Dialog</receiver>
    <slot>accept()</slot>
    <hints>
-    <hint type="sourcelabel" >
+    <hint type="sourcelabel">
      <x>341</x>
      <y>382</y>
     </hint>
-    <hint type="destinationlabel" >
+    <hint type="destinationlabel">
      <x>335</x>
      <y>270</y>
     </hint>



More information about the QGIS-commit mailing list