]> granicus.if.org Git - graphviz/commitdiff
*** empty log message ***
authorarif <devnull@localhost>
Fri, 1 Aug 2008 14:33:39 +0000 (14:33 +0000)
committerarif <devnull@localhost>
Fri, 1 Aug 2008 14:33:39 +0000 (14:33 +0000)
lib/neatogen/circuit.c
lib/neatogen/constraint.c
share/gui/smyrna.glade

index cdf58a253c4eacbe62bb3bb0bd57890103ec7d35..3f2cde48203ce6e3899a5bb35154bb0ab177304d 100644 (file)
@@ -21,6 +21,7 @@
  * Return 1 if successful; 0 otherwise (e.g., graph is disconnected).
  */
 #include       "neato.h"
+#include "cgraph.h"
 
 int solveCircuit(int nG, double **Gm, double **Gm_inv)
 {
@@ -43,7 +44,46 @@ int solveCircuit(int nG, double **Gm, double **Gm_inv)
 
 int circuit_model(graph_t * g, int nG)
 {
-    double **Gm;
+
+#ifdef WITH_CGRAPH
+       double **Gm;
+    double **Gm_inv;
+    int rv, i, j;
+    node_t *v;
+    edge_t *e;
+       
+    Gm = new_array(nG, nG, 0.0);
+    Gm_inv = new_array(nG, nG, 0.0);
+
+    /* set non-diagonal entries */
+    for (v = agfstnode(g); v; v = agnxtnode(g, v)) {
+       for (e = agfstedge(g, v); e; e = agnxtedge(g, e, v)) {
+
+               
+               i = ND_id(agtail(e));
+           j = ND_id(aghead(e));
+           if (i == j)
+               continue;
+           /* conductance is 1/resistance */
+           Gm[i][j] = Gm[j][i] = -1.0 / ED_dist(e);    /* negate */
+       }
+    }
+
+    rv = solveCircuit(nG, Gm, Gm_inv);
+
+    if (rv)
+       for (i = 0; i < nG; i++) {
+           for (j = 0; j < nG; j++) {
+               GD_dist(g)[i][j] =
+                   Gm_inv[i][i] + Gm_inv[j][j] - 2.0 * Gm_inv[i][j];
+           }
+       }
+    free_array(Gm);
+    free_array(Gm_inv);
+    return rv;
+
+#else  
+       double **Gm;
     double **Gm_inv;
     int rv, i, j;
     node_t *v;
@@ -76,4 +116,5 @@ int circuit_model(graph_t * g, int nG)
     free_array(Gm);
     free_array(Gm_inv);
     return rv;
+#endif
 }
index 6b6e7161ce90ad43ca0a5337bfdbbeef5a862968..35a6dc2e4a93c7d4b7e0945badd20436fe4f3967 100644 (file)
@@ -127,7 +127,37 @@ static int intersectX(nitem * p, nitem * q)
  */
 static void mapGraphs(graph_t * g, graph_t * cg, distfn dist)
 {
-    node_t *n;
+#ifdef WITH_CGRAPH
+       node_t *n;
+    edge_t *e;
+    edge_t *ce;
+    node_t *t;
+    node_t *h;
+    nitem *tp;
+    nitem *hp;
+    int delta;
+
+    for (n = agfstnode(g); n; n = agnxtnode(g, n)) {
+       tp = (nitem *) ND_alg(n);
+       t = tp->cnode;
+       for (e = agfstout(g, n); e; e = agnxtout(g, e)) {
+           hp = (nitem *) ND_alg(aghead(e));
+           delta = dist(&tp->bb, &hp->bb);
+           h = hp->cnode;
+           ce = agedge(cg, t, h,NULL,0);
+           ED_weight(ce) = 1;
+           if (ED_minlen(ce) < delta) {
+               if (ED_minlen(ce) == 0.0) {
+                   elist_append(ce, ND_out(t));
+                   elist_append(ce, ND_in(h));
+               }
+               ED_minlen(ce) = delta;
+           }
+       }
+    }
+}
+#else
+       node_t *n;
     edge_t *e;
     edge_t *ce;
     node_t *t;
@@ -155,6 +185,7 @@ static void mapGraphs(graph_t * g, graph_t * cg, distfn dist)
        }
     }
 }
+#endif
 
 #ifdef DEBUG
 static int
index de174e0f0277deba189b8c68467c346f53af91bb..a447f1101ed27a993c27933799ebeb768fc91d8f 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.0.2 on Mon Jul 07 16:39:28 2008 by arif@DT-ARIF-->
+<!--Generated with glade3 3.0.2 on Tue Jul 08 12:43:58 2008 by arif@DT-ARIF-->
 <glade-interface>
   <widget class="GtkWindow" id="frmObject">
     <property name="width_request">470</property>
@@ -1986,37 +1986,36 @@ topview</property>
                 <property name="n_rows">3</property>
                 <property name="n_columns">2</property>
                 <child>
-                  <widget class="GtkHBox" id="hbox4">
+                  <widget class="GtkHBox" id="hbox2">
                     <property name="visible">True</property>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterHigh1">
+                      <widget class="GtkRadioButton" id="rbTVFilterSel1">
                         <property name="width_request">15</property>
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">All</property>
-                        <property name="xalign">0</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterHigh2">
+                      <widget class="GtkRadioButton" id="rbTVFilterSel2">
                         <property name="width_request">75</property>
                         <property name="visible">True</property>
-                        <property name="label" translatable="yes">Highlighted</property>
+                        <property name="label" translatable="yes">Selected</property>
                         <property name="xalign">0</property>
                         <property name="draw_indicator">True</property>
-                        <property name="group">rbTVFilterHigh1</property>
+                        <property name="group">rbTVFilterSel1</property>
                       </widget>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterHigh3">
+                      <widget class="GtkRadioButton" id="rbTVFilterSel3">
                         <property name="width_request">100</property>
                         <property name="visible">True</property>
-                        <property name="label" translatable="yes">Not Highlighted</property>
+                        <property name="label" translatable="yes">Non-selected</property>
                         <property name="draw_indicator">True</property>
-                        <property name="group">rbTVFilterHigh1</property>
+                        <property name="group">rbTVFilterSel1</property>
                       </widget>
                       <packing>
                         <property name="position">2</property>
@@ -2026,6 +2025,33 @@ topview</property>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="right_attach">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="label3">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Selection</property>
+                  </widget>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="label9">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Visible</property>
+                  </widget>
+                  <packing>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="label10">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Highlighted</property>
+                  </widget>
+                  <packing>
                     <property name="top_attach">2</property>
                     <property name="bottom_attach">3</property>
                   </packing>
@@ -2075,65 +2101,37 @@ topview</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label10">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Highlighted</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">2</property>
-                    <property name="bottom_attach">3</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label9">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Visible</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_attach">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label3">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Selection</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox2">
+                  <widget class="GtkHBox" id="hbox4">
                     <property name="visible">True</property>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterSel1">
+                      <widget class="GtkRadioButton" id="rbTVFilterHigh1">
                         <property name="width_request">15</property>
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">All</property>
+                        <property name="xalign">0</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterSel2">
+                      <widget class="GtkRadioButton" id="rbTVFilterHigh2">
                         <property name="width_request">75</property>
                         <property name="visible">True</property>
-                        <property name="label" translatable="yes">Selected</property>
+                        <property name="label" translatable="yes">Highlighted</property>
                         <property name="xalign">0</property>
                         <property name="draw_indicator">True</property>
-                        <property name="group">rbTVFilterSel1</property>
+                        <property name="group">rbTVFilterHigh1</property>
                       </widget>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="rbTVFilterSel3">
+                      <widget class="GtkRadioButton" id="rbTVFilterHigh3">
                         <property name="width_request">100</property>
                         <property name="visible">True</property>
-                        <property name="label" translatable="yes">Non-selected</property>
+                        <property name="label" translatable="yes">Not Highlighted</property>
                         <property name="draw_indicator">True</property>
-                        <property name="group">rbTVFilterSel1</property>
+                        <property name="group">rbTVFilterHigh1</property>
                       </widget>
                       <packing>
                         <property name="position">2</property>
@@ -2143,6 +2141,8 @@ topview</property>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="right_attach">2</property>
+                    <property name="top_attach">2</property>
+                    <property name="bottom_attach">3</property>
                   </packing>
                 </child>
               </widget>
@@ -2178,48 +2178,54 @@ topview</property>
                 <property name="n_rows">2</property>
                 <property name="n_columns">5</property>
                 <child>
-                  <widget class="GtkLabel" id="label19">
+                  <widget class="GtkLabel" id="label14">
+                    <property name="width_request">2</property>
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">&gt;=</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">3</property>
-                    <property name="right_attach">4</property>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_attach">2</property>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">2</property>
+                    <property name="x_options">GTK_FILL</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label18">
+                  <widget class="GtkLabel" id="label15">
                     <property name="visible">True</property>
-                    <property name="label" translatable="yes">DATA 2</property>
+                    <property name="label" translatable="yes">&gt;=</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">2</property>
-                    <property name="right_attach">3</property>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">2</property>
                     <property name="top_attach">1</property>
                     <property name="bottom_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="edtTVFilterMaxData2">
+                  <widget class="GtkEntry" id="edtTVFilterMinData1">
+                    <property name="width_request">180</property>
+                    <property name="visible">True</property>
+                  </widget>
+                </child>
+                <child>
+                  <widget class="GtkEntry" id="edtTVFilterMaxData1">
+                    <property name="width_request">180</property>
                     <property name="visible">True</property>
                   </widget>
                   <packing>
                     <property name="left_attach">4</property>
                     <property name="right_attach">5</property>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="edtTVFilterMinData2">
-                    <property name="width_request">180</property>
+                  <widget class="GtkLabel" id="label16">
+                    <property name="width_request">63</property>
                     <property name="visible">True</property>
+                    <property name="label" translatable="yes">DATA 1</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_attach">2</property>
+                    <property name="left_attach">2</property>
+                    <property name="right_attach">3</property>
                   </packing>
                 </child>
                 <child>
@@ -2233,54 +2239,48 @@ topview</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label16">
-                    <property name="width_request">63</property>
+                  <widget class="GtkEntry" id="edtTVFilterMinData2">
+                    <property name="width_request">180</property>
                     <property name="visible">True</property>
-                    <property name="label" translatable="yes">DATA 1</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">2</property>
-                    <property name="right_attach">3</property>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="edtTVFilterMaxData1">
-                    <property name="width_request">180</property>
+                  <widget class="GtkEntry" id="edtTVFilterMaxData2">
                     <property name="visible">True</property>
                   </widget>
                   <packing>
                     <property name="left_attach">4</property>
                     <property name="right_attach">5</property>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="edtTVFilterMinData1">
-                    <property name="width_request">180</property>
-                    <property name="visible">True</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label15">
+                  <widget class="GtkLabel" id="label18">
                     <property name="visible">True</property>
-                    <property name="label" translatable="yes">&gt;=</property>
+                    <property name="label" translatable="yes">DATA 2</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
+                    <property name="left_attach">2</property>
+                    <property name="right_attach">3</property>
                     <property name="top_attach">1</property>
                     <property name="bottom_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label14">
-                    <property name="width_request">2</property>
+                  <widget class="GtkLabel" id="label19">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">&gt;=</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="left_attach">3</property>
+                    <property name="right_attach">4</property>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
                   </packing>
                 </child>
               </widget>
@@ -2530,67 +2530,67 @@ topview</property>
                     <property name="n_rows">3</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkLabel" id="label35">
+                      <widget class="GtkEntry" id="entry3">
+                        <property name="width_request">56</property>
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Num. of fine Nodes</property>
                       </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                      </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label36">
+                      <widget class="GtkEntry" id="entry2">
+                        <property name="width_request">56</property>
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Coersening factor</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label37">
+                      <widget class="GtkEntry" id="entry1">
+                        <property name="width_request">56</property>
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Distortion factor</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="entry1">
-                        <property name="width_request">56</property>
+                      <widget class="GtkLabel" id="label37">
                         <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Distortion factor</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="entry2">
-                        <property name="width_request">56</property>
+                      <widget class="GtkLabel" id="label36">
                         <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Coersening factor</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="entry3">
-                        <property name="width_request">56</property>
+                      <widget class="GtkLabel" id="label35">
                         <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Num. of fine Nodes</property>
                       </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                      </packing>
                     </child>
                   </widget>
                   <packing>
@@ -2820,167 +2820,140 @@ topview</property>
                       <placeholder/>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox5-2">
+                      <widget class="GtkCheckButton" id="settingsChkBox5-3">
                         <property name="visible">True</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="right_attach">3</property>
-                        <property name="top_attach">10</property>
-                        <property name="bottom_attach">11</property>
+                        <property name="top_attach">11</property>
+                        <property name="bottom_attach">12</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox5-1">
+                      <widget class="GtkLabel" id="label83">
                         <property name="visible">True</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Draw Labels</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
-                        <property name="top_attach">9</property>
-                        <property name="bottom_attach">10</property>
-                        <property name="x_options">GTK_EXPAND</property>
+                        <property name="top_attach">11</property>
+                        <property name="bottom_attach">12</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label82">
+                      <widget class="GtkColorButton" id="settingsColorBtn9">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Draw Edges</property>
+                        <property name="color">#000000000000</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">10</property>
-                        <property name="bottom_attach">11</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">8</property>
+                        <property name="bottom_attach">9</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label81">
+                      <widget class="GtkLabel" id="label45">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Draw Nodes</property>
+                        <property name="label" translatable="yes">Selected Edge Color</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">9</property>
-                        <property name="bottom_attach">10</property>
+                        <property name="top_attach">8</property>
+                        <property name="bottom_attach">9</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label31">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Background Color</property>
-                      </widget>
-                    </child>
-                    <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn1">
+                      <widget class="GtkCheckButton" id="settingsChkBox5">
                         <property name="visible">True</property>
-                        <property name="color">#000000000000</property>
+                        <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
+                        <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label32">
+                      <widget class="GtkCheckButton" id="settingsChkBox4">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Border Color</property>
+                        <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
+                        <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label39">
+                      <widget class="GtkCheckButton" id="settingsChkBox3">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Grid Color</property>
+                        <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
                         <property name="top_attach">2</property>
                         <property name="bottom_attach">3</property>
+                        <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label40">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Randomize Node Colors</property>
-                      </widget>
-                      <packing>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label41">
+                      <widget class="GtkCheckButton" id="settingsChkBox2">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Randomize Edge Colors</property>
+                        <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label42">
+                      <widget class="GtkColorButton" id="settingsColorBtn8">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Highlighted Node Color</property>
+                        <property name="color">#000000000000</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">5</property>
-                        <property name="bottom_attach">6</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">7</property>
+                        <property name="bottom_attach">8</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label43">
+                      <widget class="GtkColorButton" id="settingsColorBtn7">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Highlighted Edge Color</property>
+                        <property name="color">#000000000000</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                         <property name="top_attach">6</property>
                         <property name="bottom_attach">7</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label44">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Selected Node Color</property>
-                      </widget>
-                      <packing>
-                        <property name="top_attach">7</property>
-                        <property name="bottom_attach">8</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn2">
+                      <widget class="GtkColorButton" id="settingsColorBtn6">
                         <property name="visible">True</property>
                         <property name="color">#000000000000</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
+                        <property name="top_attach">5</property>
+                        <property name="bottom_attach">6</property>
                       </packing>
                     </child>
                     <child>
@@ -2996,139 +2969,166 @@ topview</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn6">
+                      <widget class="GtkColorButton" id="settingsColorBtn2">
                         <property name="visible">True</property>
                         <property name="color">#000000000000</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">5</property>
-                        <property name="bottom_attach">6</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn7">
+                      <widget class="GtkLabel" id="label44">
                         <property name="visible">True</property>
-                        <property name="color">#000000000000</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Selected Node Color</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">6</property>
-                        <property name="bottom_attach">7</property>
+                        <property name="top_attach">7</property>
+                        <property name="bottom_attach">8</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn8">
+                      <widget class="GtkLabel" id="label43">
                         <property name="visible">True</property>
-                        <property name="color">#000000000000</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Highlighted Edge Color</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">7</property>
-                        <property name="bottom_attach">8</property>
+                        <property name="top_attach">6</property>
+                        <property name="bottom_attach">7</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox2">
+                      <widget class="GtkLabel" id="label42">
                         <property name="visible">True</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Highlighted Node Color</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_EXPAND</property>
+                        <property name="top_attach">5</property>
+                        <property name="bottom_attach">6</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox3">
+                      <widget class="GtkLabel" id="label41">
                         <property name="visible">True</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Randomize Edge Colors</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                        <property name="x_options">GTK_EXPAND</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox4">
+                      <widget class="GtkLabel" id="label40">
                         <property name="visible">True</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Randomize Node Colors</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
                         <property name="top_attach">3</property>
                         <property name="bottom_attach">4</property>
-                        <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox5">
+                      <widget class="GtkLabel" id="label39">
                         <property name="visible">True</property>
-                        <property name="draw_indicator">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Grid Color</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
-                        <property name="x_options">GTK_EXPAND</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label45">
+                      <widget class="GtkLabel" id="label32">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Selected Edge Color</property>
+                        <property name="label" translatable="yes">Border Color</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">8</property>
-                        <property name="bottom_attach">9</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="settingsColorBtn9">
+                      <widget class="GtkColorButton" id="settingsColorBtn1">
                         <property name="visible">True</property>
                         <property name="color">#000000000000</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">8</property>
-                        <property name="bottom_attach">9</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label83">
+                      <widget class="GtkLabel" id="label31">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Draw Labels</property>
+                        <property name="label" translatable="yes">Background Color</property>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkLabel" id="label81">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Draw Nodes</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">11</property>
-                        <property name="bottom_attach">12</property>
+                        <property name="top_attach">9</property>
+                        <property name="bottom_attach">10</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox5-3">
+                      <widget class="GtkLabel" id="label82">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Draw Edges</property>
+                      </widget>
+                      <packing>
+                        <property name="top_attach">10</property>
+                        <property name="bottom_attach">11</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkCheckButton" id="settingsChkBox5-1">
                         <property name="visible">True</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="right_attach">3</property>
-                        <property name="top_attach">11</property>
-                        <property name="bottom_attach">12</property>
+                        <property name="top_attach">9</property>
+                        <property name="bottom_attach">10</property>
+                        <property name="x_options">GTK_EXPAND</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkCheckButton" id="settingsChkBox5-2">
+                        <property name="visible">True</property>
+                        <property name="draw_indicator">True</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">10</property>
+                        <property name="bottom_attach">11</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
@@ -3258,7 +3258,7 @@ topview</property>
             </child>
             <child>
               <widget class="GtkLabel" id="label47">
-                <property name="width_request">72</property>
+                <property name="width_request">61</property>
                 <property name="visible">True</property>
                 <property name="label" translatable="yes">Font</property>
               </widget>
@@ -3280,78 +3280,57 @@ topview</property>
                     <property name="n_rows">6</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkComboBox" id="settingscombobox1">
+                      <widget class="GtkLabel" id="label49">
                         <property name="visible">True</property>
-                        <property name="active">0</property>
-                        <property name="items" translatable="yes">OpenGL dots
-Spherical
-Custom</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Advanced Mode</property>
                       </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                      </packing>
                     </child>
                     <child>
-                      <widget class="GtkHScale" id="settingsscale2">
-                        <property name="visible">True</property>
-                        <property name="adjustment">1 0 1 0.01 0 0</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">5</property>
-                        <property name="bottom_attach">6</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkHScale" id="settingsscale1">
+                      <widget class="GtkLabel" id="label50">
                         <property name="visible">True</property>
-                        <property name="adjustment">1 0 1 0.01 0 0</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Node Shape</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label85">
+                      <widget class="GtkLabel" id="label51">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Edge Alpha</property>
+                        <property name="label" translatable="yes">Node Size with Degree</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">5</property>
-                        <property name="bottom_attach">6</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label84">
+                      <widget class="GtkLabel" id="label52">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Node Alpha</property>
+                        <property name="label" translatable="yes">Anti-aliasing</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox12">
+                      <widget class="GtkCheckButton" id="settingsChkBox10">
                         <property name="visible">True</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options">GTK_EXPAND</property>
                       </packing>
@@ -3371,60 +3350,81 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="settingsChkBox10">
+                      <widget class="GtkCheckButton" id="settingsChkBox12">
                         <property name="visible">True</property>
                         <property name="draw_indicator">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label52">
+                      <widget class="GtkLabel" id="label84">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Anti-aliasing</property>
+                        <property name="label" translatable="yes">Node Alpha</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label51">
+                      <widget class="GtkLabel" id="label85">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Node Size with Degree</property>
+                        <property name="label" translatable="yes">Edge Alpha</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
+                        <property name="top_attach">5</property>
+                        <property name="bottom_attach">6</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label50">
+                      <widget class="GtkHScale" id="settingsscale1">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Node Shape</property>
+                        <property name="adjustment">1 0 1 0.01 0 0</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label49">
+                      <widget class="GtkHScale" id="settingsscale2">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Advanced Mode</property>
+                        <property name="adjustment">1 0 1 0.01 0 0</property>
                       </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">5</property>
+                        <property name="bottom_attach">6</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkComboBox" id="settingscombobox1">
+                        <property name="visible">True</property>
+                        <property name="active">0</property>
+                        <property name="items" translatable="yes">OpenGL dots
+Spherical
+Custom</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
                     </child>
                   </widget>
                   <packing>
@@ -3463,60 +3463,29 @@ Custom</property>
                     <property name="n_columns">2</property>
                     <property name="row_spacing">2</property>
                     <child>
-                      <widget class="GtkSpinButton" id="settingsspinbutton3">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">2 2 20 1 50 10</property>
-                        <property name="digits">2</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                        <property name="x_options">GTK_FILL</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label61">
-                        <property name="width_request">84</property>
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Zoom X</property>
-                        <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
-                      </widget>
-                      <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                        <property name="x_options">GTK_EXPAND</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label58">
+                      <widget class="GtkLabel" id="label56">
                         <property name="width_request">84</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Height</property>
+                        <property name="label" translatable="yes">Width</property>
                         <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label57">
+                      <widget class="GtkSpinButton" id="settingsspinbutton2">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Height</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">3 0 5000 1 50 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
@@ -3532,31 +3501,62 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="settingsspinbutton2">
+                      <widget class="GtkLabel" id="label57">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">3 0 5000 1 50 10</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Height</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label56">
+                      <widget class="GtkLabel" id="label58">
                         <property name="width_request">84</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Width</property>
+                        <property name="label" translatable="yes">Height</property>
+                        <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
+                      </widget>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_EXPAND</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkLabel" id="label61">
+                        <property name="width_request">84</property>
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Zoom X</property>
                         <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
                       </widget>
                       <packing>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
+                    <child>
+                      <widget class="GtkSpinButton" id="settingsspinbutton3">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">2 2 20 1 50 10</property>
+                        <property name="digits">2</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                        <property name="x_options">GTK_FILL</property>
+                      </packing>
+                    </child>
                   </widget>
                   <packing>
                     <property name="x">37</property>
@@ -3622,54 +3622,54 @@ Custom</property>
                     <property name="n_columns">2</property>
                     <property name="row_spacing">2</property>
                     <child>
-                      <widget class="GtkLabel" id="label65">
+                      <widget class="GtkLabel" id="label63">
                         <property name="width_request">84</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Radius</property>
+                        <property name="label" translatable="yes">Distortion</property>
                         <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
                       </widget>
                       <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="settingsspinbutton5">
+                      <widget class="GtkSpinButton" id="settingsspinbutton4">
+                        <property name="width_request">128</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">4 0 5000 1 50 10</property>
+                        <property name="adjustment">5 0 5000 1 50 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="settingsspinbutton4">
-                        <property name="width_request">128</property>
+                      <widget class="GtkSpinButton" id="settingsspinbutton5">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">5 0 5000 1 50 10</property>
+                        <property name="adjustment">4 0 5000 1 50 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label63">
+                      <widget class="GtkLabel" id="label65">
                         <property name="width_request">84</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">Distortion</property>
+                        <property name="label" translatable="yes">Radius</property>
                         <property name="wrap_mode">PANGO_WRAP_WORD_CHAR</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_EXPAND</property>
                       </packing>
                     </child>
@@ -3721,82 +3721,82 @@ Custom</property>
                           <placeholder/>
                         </child>
                         <child>
-                          <widget class="GtkSpinButton" id="settingsspinbutton8">
+                          <widget class="GtkLabel" id="label66">
+                            <property name="width_request">1</property>
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="adjustment">0 0 9999999 0.10000000000000001 10 10</property>
-                            <property name="digits">4</property>
+                            <property name="xalign">0</property>
+                            <property name="xpad">5</property>
+                            <property name="label" translatable="yes"># of fine nodes</property>
                           </widget>
                           <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
+                            <property name="x_options">GTK_FILL</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkSpinButton" id="settingsspinbutton7">
+                          <widget class="GtkSpinButton" id="settingsspinbutton6">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="adjustment">0 0 9999999 0.10000000000000001 10 10</property>
-                            <property name="digits">4</property>
+                            <property name="adjustment">0 0 9999999 1 10 10</property>
                           </widget>
                           <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label68">
-                            <property name="width_request">122</property>
+                          <widget class="GtkLabel" id="label67">
+                            <property name="width_request">1</property>
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="xpad">5</property>
-                            <property name="label" translatable="yes">Distortion factor</property>
+                            <property name="label" translatable="yes">Coarsening factor</property>
                           </widget>
                           <packing>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
                             <property name="x_options">GTK_FILL</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label67">
-                            <property name="width_request">1</property>
+                          <widget class="GtkLabel" id="label68">
+                            <property name="width_request">122</property>
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="xpad">5</property>
-                            <property name="label" translatable="yes">Coarsening factor</property>
+                            <property name="label" translatable="yes">Distortion factor</property>
                           </widget>
                           <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
+                            <property name="top_attach">2</property>
+                            <property name="bottom_attach">3</property>
                             <property name="x_options">GTK_FILL</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkSpinButton" id="settingsspinbutton6">
+                          <widget class="GtkSpinButton" id="settingsspinbutton7">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="adjustment">0 0 9999999 1 10 10</property>
+                            <property name="adjustment">0 0 9999999 0.10000000000000001 10 10</property>
+                            <property name="digits">4</property>
                           </widget>
                           <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label66">
-                            <property name="width_request">1</property>
+                          <widget class="GtkSpinButton" id="settingsspinbutton8">
                             <property name="visible">True</property>
-                            <property name="xalign">0</property>
-                            <property name="xpad">5</property>
-                            <property name="label" translatable="yes"># of fine nodes</property>
+                            <property name="can_focus">True</property>
+                            <property name="adjustment">0 0 9999999 0.10000000000000001 10 10</property>
+                            <property name="digits">4</property>
                           </widget>
                           <packing>
-                            <property name="x_options">GTK_FILL</property>
+                            <property name="left_attach">1</property>
+                            <property name="right_attach">2</property>
+                            <property name="top_attach">2</property>
+                            <property name="bottom_attach">3</property>
                           </packing>
                         </child>
                       </widget>
@@ -3821,70 +3821,70 @@ Custom</property>
                         <property name="n_rows">2</property>
                         <property name="n_columns">3</property>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox18">
+                          <widget class="GtkCheckButton" id="settingsChkBox13">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Label focus</property>
+                            <property name="label" translatable="yes">Dist 2 limit</property>
                             <property name="draw_indicator">True</property>
                           </widget>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox17">
+                          <widget class="GtkCheckButton" id="settingsChkBox14">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Color edges</property>
+                            <property name="label" translatable="yes">Animate</property>
                             <property name="draw_indicator">True</property>
                           </widget>
                           <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox16">
+                          <widget class="GtkCheckButton" id="settingsChkBox15">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Color nodes</property>
+                            <property name="label" translatable="yes">Label fine nodes</property>
                             <property name="draw_indicator">True</property>
                           </widget>
                           <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
+                            <property name="left_attach">2</property>
+                            <property name="right_attach">3</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox15">
+                          <widget class="GtkCheckButton" id="settingsChkBox16">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Label fine nodes</property>
+                            <property name="label" translatable="yes">Color nodes</property>
                             <property name="draw_indicator">True</property>
                           </widget>
                           <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox14">
+                          <widget class="GtkCheckButton" id="settingsChkBox17">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Animate</property>
+                            <property name="label" translatable="yes">Color edges</property>
                             <property name="draw_indicator">True</property>
                           </widget>
                           <packing>
                             <property name="left_attach">1</property>
                             <property name="right_attach">2</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="settingsChkBox13">
+                          <widget class="GtkCheckButton" id="settingsChkBox18">
                             <property name="visible">True</property>
-                            <property name="label" translatable="yes">Dist 2 limit</property>
+                            <property name="label" translatable="yes">Label focus</property>
                             <property name="draw_indicator">True</property>
                           </widget>
+                          <packing>
+                            <property name="left_attach">2</property>
+                            <property name="right_attach">3</property>
+                            <property name="top_attach">1</property>
+                            <property name="bottom_attach">2</property>
+                          </packing>
                         </child>
                       </widget>
                       <packing>
@@ -3923,18 +3923,7 @@ Custom</property>
                           <placeholder/>
                         </child>
                         <child>
-                          <widget class="GtkColorButton" id="settingsColorBtn11">
-                            <property name="height_request">47</property>
-                            <property name="visible">True</property>
-                            <property name="color">#000000000000</property>
-                          </widget>
-                          <packing>
-                            <property name="left_attach">4</property>
-                            <property name="right_attach">5</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <widget class="GtkLabel" id="label71">
+                          <widget class="GtkLabel" id="label70">
                             <property name="width_request">122</property>
                             <property name="height_request">32</property>
                             <property name="visible">True</property>
@@ -3943,8 +3932,6 @@ Custom</property>
                             <property name="label" translatable="yes">Finest:</property>
                           </widget>
                           <packing>
-                            <property name="left_attach">3</property>
-                            <property name="right_attach">4</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
@@ -3960,7 +3947,7 @@ Custom</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label70">
+                          <widget class="GtkLabel" id="label71">
                             <property name="width_request">122</property>
                             <property name="height_request">32</property>
                             <property name="visible">True</property>
@@ -3969,10 +3956,23 @@ Custom</property>
                             <property name="label" translatable="yes">Finest:</property>
                           </widget>
                           <packing>
+                            <property name="left_attach">3</property>
+                            <property name="right_attach">4</property>
                             <property name="x_options">GTK_FILL</property>
                             <property name="y_options"></property>
                           </packing>
                         </child>
+                        <child>
+                          <widget class="GtkColorButton" id="settingsColorBtn11">
+                            <property name="height_request">47</property>
+                            <property name="visible">True</property>
+                            <property name="color">#000000000000</property>
+                          </widget>
+                          <packing>
+                            <property name="left_attach">4</property>
+                            <property name="right_attach">5</property>
+                          </packing>
+                        </child>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -3984,24 +3984,176 @@ Custom</property>
                     </child>
                   </widget>
                   <packing>
-                    <property name="x">7</property>
-                    <property name="y">8</property>
+                    <property name="x">7</property>
+                    <property name="y">8</property>
+                  </packing>
+                </child>
+              </widget>
+              <packing>
+                <property name="position">4</property>
+                <property name="tab_expand">False</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="lllllllllllll">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">Top. Fisheye</property>
+              </widget>
+              <packing>
+                <property name="type">tab</property>
+                <property name="position">4</property>
+                <property name="tab_expand">False</property>
+                <property name="tab_fill">False</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLayout" id="layout20">
+                <property name="visible">True</property>
+                <child>
+                  <widget class="GtkTable" id="table15">
+                    <property name="width_request">414</property>
+                    <property name="height_request">383</property>
+                    <property name="visible">True</property>
+                    <property name="n_rows">13</property>
+                    <property name="n_columns">2</property>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <widget class="GtkComboBox" id="settingscombobox2">
+                        <property name="visible">True</property>
+                        <property name="active">0</property>
+                        <property name="items" translatable="yes">Single
+Union
+Subtract
+Intersection
+</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkLabel" id="label96">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Selection Method</property>
+                      </widget>
+                    </child>
+                  </widget>
+                  <packing>
+                    <property name="x">6</property>
+                    <property name="y">29</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="label99">
+                    <property name="width_request">90</property>
+                    <property name="height_request">21</property>
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">Selection</property>
+                  </widget>
+                  <packing>
+                    <property name="x">5</property>
+                    <property name="y">7</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkHSeparator" id="hseparator17">
+                    <property name="width_request">89</property>
+                    <property name="height_request">20</property>
+                    <property name="visible">True</property>
+                  </widget>
+                  <packing>
+                    <property name="x">12</property>
+                    <property name="y">18</property>
                   </packing>
                 </child>
               </widget>
               <packing>
-                <property name="position">4</property>
+                <property name="position">5</property>
                 <property name="tab_expand">False</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="lllllllllllll">
+              <widget class="GtkLabel" id="label86">
                 <property name="visible">True</property>
-                <property name="label" translatable="yes">Topological Fisheye</property>
+                <property name="label" translatable="yes">Other</property>
               </widget>
               <packing>
                 <property name="type">tab</property>
-                <property name="position">4</property>
+                <property name="position">5</property>
                 <property name="tab_expand">False</property>
                 <property name="tab_fill">False</property>
               </packing>
@@ -4075,44 +4227,26 @@ Custom</property>
                 <property name="n_rows">9</property>
                 <property name="n_columns">1</property>
                 <child>
-                  <widget class="GtkLabel" id="lblPosition">
-                    <property name="visible">True</property>
-                    <property name="xalign">0</property>
-                    <property name="yalign">0.89999997615814209</property>
-                    <property name="xpad">5</property>
-                    <property name="label" translatable="yes">Position</property>
-                  </widget>
-                </child>
-                <child>
-                  <widget class="GtkHSeparator" id="hseparator14">
-                    <property name="height_request">8</property>
-                    <property name="visible">True</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_attach">2</property>
-                    <property name="y_options">GTK_FILL</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkTable" id="table12">
+                  <widget class="GtkTable" id="table14">
                     <property name="visible">True</property>
                     <property name="n_rows">3</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkLabel" id="label64">
-                        <property name="width_request">50</property>
+                      <widget class="GtkLabel" id="label79">
+                        <property name="width_request">8</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">X</property>
+                        <property name="label" translatable="yes">Z</property>
                       </widget>
                       <packing>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label72">
+                      <widget class="GtkLabel" id="label78">
                         <property name="width_request">7</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
@@ -4126,24 +4260,22 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label73">
-                        <property name="width_request">8</property>
+                      <widget class="GtkLabel" id="label62">
+                        <property name="width_request">50</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Z</property>
+                        <property name="label" translatable="yes">X</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton1">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton7">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">0 -500000 50000 1 10 10</property>
+                        <property name="adjustment">100 -360 360 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4151,10 +4283,10 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton2">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton8">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">100 -500000 500000 1 10 10</property>
+                        <property name="adjustment">1 -360 360 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4164,10 +4296,10 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton3">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton9">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">-50000 -50000 50000 1 10 10</property>
+                        <property name="adjustment">100 -360 360 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4178,20 +4310,43 @@ Custom</property>
                     </child>
                   </widget>
                   <packing>
-                    <property name="top_attach">2</property>
-                    <property name="bottom_attach">3</property>
+                    <property name="top_attach">8</property>
+                    <property name="bottom_attach">9</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label74">
+                  <widget class="GtkHSeparator" id="hseparator16">
+                    <property name="height_request">8</property>
+                    <property name="visible">True</property>
+                  </widget>
+                  <packing>
+                    <property name="top_attach">7</property>
+                    <property name="bottom_attach">8</property>
+                    <property name="y_options">GTK_FILL</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="lblPosition1">
                     <property name="visible">True</property>
                     <property name="xalign">0</property>
+                    <property name="yalign">0.89999997615814209</property>
                     <property name="xpad">5</property>
-                    <property name="label" translatable="yes">Target</property>
+                    <property name="label" translatable="yes">Camera Vector</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">3</property>
-                    <property name="bottom_attach">4</property>
+                    <property name="top_attach">6</property>
+                    <property name="bottom_attach">7</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkHSeparator" id="hseparator15">
+                    <property name="height_request">8</property>
+                    <property name="visible">True</property>
+                  </widget>
+                  <packing>
+                    <property name="top_attach">4</property>
+                    <property name="bottom_attach">5</property>
+                    <property name="y_options">GTK_FILL</property>
                   </packing>
                 </child>
                 <child>
@@ -4200,80 +4355,80 @@ Custom</property>
                     <property name="n_rows">3</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkLabel" id="label75">
-                        <property name="width_request">8</property>
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton6">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Z</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">100 -500000 5000000 1 10 10</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                         <property name="top_attach">2</property>
                         <property name="bottom_attach">3</property>
-                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label76">
-                        <property name="width_request">7</property>
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton5">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Y</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">1 -500000 500000 1 10 10</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label77">
-                        <property name="width_request">50</property>
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton4">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="xpad">5</property>
-                        <property name="label" translatable="yes">X</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">100 -500000 500000 1 10 10</property>
                       </widget>
                       <packing>
-                        <property name="x_options">GTK_FILL</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton4">
+                      <widget class="GtkLabel" id="label77">
+                        <property name="width_request">50</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">100 -500000 500000 1 10 10</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">X</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton5">
+                      <widget class="GtkLabel" id="label76">
+                        <property name="width_request">7</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">1 -500000 500000 1 10 10</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Y</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton6">
+                      <widget class="GtkLabel" id="label75">
+                        <property name="width_request">8</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">100 -500000 5000000 1 10 10</property>
+                        <property name="xalign">0</property>
+                        <property name="xpad">5</property>
+                        <property name="label" translatable="yes">Z</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
                         <property name="top_attach">2</property>
                         <property name="bottom_attach">3</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                   </widget>
@@ -4283,50 +4438,27 @@ Custom</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkHSeparator" id="hseparator15">
-                    <property name="height_request">8</property>
-                    <property name="visible">True</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">4</property>
-                    <property name="bottom_attach">5</property>
-                    <property name="y_options">GTK_FILL</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="lblPosition1">
+                  <widget class="GtkLabel" id="label74">
                     <property name="visible">True</property>
                     <property name="xalign">0</property>
-                    <property name="yalign">0.89999997615814209</property>
                     <property name="xpad">5</property>
-                    <property name="label" translatable="yes">Camera Vector</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">6</property>
-                    <property name="bottom_attach">7</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkHSeparator" id="hseparator16">
-                    <property name="height_request">8</property>
-                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">Target</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">7</property>
-                    <property name="bottom_attach">8</property>
-                    <property name="y_options">GTK_FILL</property>
+                    <property name="top_attach">3</property>
+                    <property name="bottom_attach">4</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkTable" id="table14">
+                  <widget class="GtkTable" id="table12">
                     <property name="visible">True</property>
                     <property name="n_rows">3</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton9">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton3">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">100 -360 360 1 10 10</property>
+                        <property name="adjustment">-50000 -50000 50000 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4336,10 +4468,10 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton8">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton2">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">1 -360 360 1 10 10</property>
+                        <property name="adjustment">100 -500000 500000 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4349,10 +4481,10 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="dlgcameraspinbutton7">
+                      <widget class="GtkSpinButton" id="dlgcameraspinbutton1">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">100 -360 360 1 10 10</property>
+                        <property name="adjustment">0 -500000 50000 1 10 10</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -4360,19 +4492,21 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label62">
-                        <property name="width_request">50</property>
+                      <widget class="GtkLabel" id="label73">
+                        <property name="width_request">8</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">X</property>
+                        <property name="label" translatable="yes">Z</property>
                       </widget>
                       <packing>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label78">
+                      <widget class="GtkLabel" id="label72">
                         <property name="width_request">7</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
@@ -4386,25 +4520,43 @@ Custom</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label79">
-                        <property name="width_request">8</property>
+                      <widget class="GtkLabel" id="label64">
+                        <property name="width_request">50</property>
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="xpad">5</property>
-                        <property name="label" translatable="yes">Z</property>
+                        <property name="label" translatable="yes">X</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                   </widget>
                   <packing>
-                    <property name="top_attach">8</property>
-                    <property name="bottom_attach">9</property>
+                    <property name="top_attach">2</property>
+                    <property name="bottom_attach">3</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkHSeparator" id="hseparator14">
+                    <property name="height_request">8</property>
+                    <property name="visible">True</property>
+                  </widget>
+                  <packing>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="y_options">GTK_FILL</property>
                   </packing>
                 </child>
+                <child>
+                  <widget class="GtkLabel" id="lblPosition">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.89999997615814209</property>
+                    <property name="xpad">5</property>
+                    <property name="label" translatable="yes">Position</property>
+                  </widget>
+                </child>
               </widget>
               <packing>
                 <property name="x">9</property>