Clone in a terminal:
Commit 6205114
Johan Mattsson - 2015-03-12T20:02:20+00:00
62051140fa36608c539366669422d51552284b0ajohan.mattsson.m@gmail.com

Merge branch 'master' of gitorious.org:birdfont/birdfont

Changed files (35)

Diff

diff --git a/README b/READMEindex e8ed4a3..2ee2141 100644--- a/README+++ b/README@@ -19,8 +19,9 @@ with a -dev or -devel affix: valac
 libgee-dev
 libglib2.0-dev 
-libgtk2.0-dev 
+libgtk-3-dev 
 libwebkitgtk-dev
+libnotify-dev
 unicode-data (unicode character database)
 
 BirdFont have two build systems, one python script that builds all binaries at
diff --git a/birdfont/GtkWindow.vala b/birdfont/GtkWindow.valaindex 7369893..8adbe2e 100644--- a/birdfont/GtkWindow.vala+++ b/birdfont/GtkWindow.vala@@ -427,12 +427,16 @@ public class GtkWindow : Gtk.Window, NativeWindow { 	public void file_chooser (string title, FileChooser fc, uint flags) { 		string? fn = null; 		-		if ((flags & FileChooser.LOAD) > 0) {-			fn = show_file_chooser (title, FileChooserAction.OPEN, Stock.OPEN);-		} else if ((flags & FileChooser.SAVE) > 0) {-			fn = show_file_chooser (title, FileChooserAction.SAVE, Stock.SAVE);-		} else {-			warning ("Unknown type");+		if (BirdFont.get_arguments () .has_argument ("--windows")) {+			MenuTab.show_file_dialog_tab (title, fc);+		} else {		+			if ((flags & FileChooser.LOAD) > 0) {+				fn = show_file_chooser (title, FileChooserAction.OPEN, Stock.OPEN);+			} else if ((flags & FileChooser.SAVE) > 0) {+				fn = show_file_chooser (title, FileChooserAction.SAVE, Stock.SAVE);+			} else {+				warning ("Unknown type");+			} 		} 		 		fc.selected (fn);diff --git a/graphics/tools_and_buttons.svg b/graphics/tools_and_buttons.svgindex 2b7e45f..2971ad9 100644--- a/graphics/tools_and_buttons.svg+++ b/graphics/tools_and_buttons.svg@@ -1523,9 +1523,9 @@      borderopacity="1.0"      inkscape:pageopacity="0.0"      inkscape:pageshadow="2"-     inkscape:zoom="4.0000001"-     inkscape:cx="459.05169"-     inkscape:cy="687.23668"+     inkscape:zoom="1"+     inkscape:cx="435.25185"+     inkscape:cy="-322.01977"      inkscape:current-layer="layer1"      inkscape:document-units="px"      showgrid="false"@@ -1545,7 +1545,7 @@         <dc:format>image/svg+xml</dc:format>         <dc:type            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />-        <dc:title></dc:title>+        <dc:title />       </cc:Work>     </rdf:RDF>   </metadata>@@ -5796,5 +5796,1636 @@          id="path3824"          inkscape:connector-curvature="0" />     </g>+    <path+       id="path4367-4-0"+       style="fill:none;stroke:#656a73;stroke-width:2.72069192;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 98.033883,854.02342 3.134727,-6.7105 17.34694,6.1151 -2.54807,6.367"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/foresight.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:none;stroke:#656a73;stroke-width:2.72069192;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 93.913986,860.97632 4.080603,-6.5455 c 1.827748,1.4119 5.033241,3.2863 7.851261,4.2358 3.24551,1.0936 6.76726,1.059 10.15086,1.5884 l -0.42786,7.9185"+       id="path4254-2-4"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccscc"+       inkscape:export-filename="/home/johan/birdfont/icons/foresight.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:none;stroke:#656a73;stroke-width:2.72069192;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 86.333963,905.97542 -6.950387,-0.3224 c 1.543989,-6.6112 3.52778,-16.9305 8.309939,-33.1236 l 6.220471,-11.553 c 0,0 7.082914,3.9917 10.908824,4.9079 4.34858,1.0413 10.74771,2.1259 10.74771,2.1259 l -0.13025,12.6571 c -11.29655,6.2295 -21.065578,14.4274 -29.106266,25.3082 z"+       id="path3470-4-7"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccccsccc"+       inkscape:export-filename="/home/johan/birdfont/icons/foresight.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 94.461957,878.09152 c -2.321447,0.9336 -3.648218,3.4009 -3.622568,5.6131 0,0 -3.307924,5.2545 -5.694755,10.6797 -2.024159,4.6009 -4.218339,11.0034 -4.218339,11.0034 l 1.212049,0.6316 c 0,0 2.309838,-6.8416 4.504409,-11.6108 2.695335,-5.8575 5.493011,-10.3013 5.425283,-10.1573 2.141503,-1.5948 2.581443,-4.0293 2.393921,-6.1597 z"+       id="path3472-4-2"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccsccscc"+       inkscape:export-filename="/home/johan/birdfont/icons/foresight.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:#656a73;fill-opacity:1;stroke:none"+       d="m 380.52473,853.83533 0,5.82819 14.10299,0 0,-2.30244 44.23216,0 0,2.62297 13.46196,0 -0.32054,-5.18715 -35.25753,-9.29516 z"+       id="path3075-4-8-0"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cccccccccc" />+    <path+       sodipodi:nodetypes="cccccccccc"+       inkscape:connector-curvature="0"+       id="path3140-7-2"+       d="m 380.52473,912.6328 0,-5.8282 14.10299,0 0,2.30244 44.23216,0 0,-2.62296 13.46196,0 -0.32054,5.18715 -35.25753,9.29516 z"+       style="fill:#656a73;fill-opacity:1;stroke:none" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:1.85107493;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 96.616432,950.96875 c -9.876219,0 -17.875,8.06128 -17.875,17.9375 0,9.87622 7.998781,17.90625 17.875,17.90625 2.36332,0 4.615918,-0.4785 6.687498,-1.3125 l 14.65625,25.3438 3.15625,-1.8126 -14.59375,-25.2187 c 4.84343,-3.20716 8.0625,-8.68383 8.0625,-14.90625 0,-9.87622 -8.09253,-17.9375 -17.968748,-17.9375 z m 0,3.65625 c 7.920928,0 14.312498,6.36031 14.312498,14.28125 0,7.92093 -6.39157,14.3125 -14.312498,14.3125 -7.920938,0 -14.28125,-6.39157 -14.28125,-14.3125 0,-7.92094 6.360312,-14.28125 14.28125,-14.28125 z"+       id="path3135-3-4"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:3.61794162;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 236.1875,851.5 -2.84375,2.0625 23.21875,55.03125 1.875,4.4375 1.5,-4.59375 4.65625,-14.125 14.84375,-1.8125 4.0625,-0.46875 -3.125,-2.6875 L 236.1875,851.5 z m 3.5,7.75 35.1875,30.15625 L 263,890.84375 261.875,891 261.5,892.09375 258,902.71875 239.6875,859.25 z"+       id="path3320-0-1-5"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.98000004;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:2.72069192;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 257.125,945.09375 c -1.38203,-0.026 -2.64697,0.4101 -3.5,1.25 -0.85303,0.8399 -1.2831,1.95706 -1.53125,3.125 -0.49631,2.33588 -0.33493,5.14411 -0.3125,8.03125 0.0247,3.17118 -0.18994,6.01086 -0.34375,9.125 -1.1651,-2.87716 -2.31435,-6.02804 -2.875,-8.625 -0.5143,-2.38229 -0.96948,-4.64619 -1.90625,-6.40625 -0.46838,-0.88003 -1.08208,-1.6512 -1.96875,-2.15625 -0.88667,-0.50505 -2.02968,-0.62126 -3.125,-0.34375 -1.42063,0.35992 -2.564,0.93927 -3.375,1.8125 -0.811,0.87323 -1.20465,1.97588 -1.34375,3.09375 -0.2782,2.23573 0.3471,4.6411 1,7.28125 0.95,3.84172 2.76862,7.94705 3.84375,11.5 0.53757,1.77647 0.866,3.42438 0.875,4.71875 0.005,0.67966 -0.0543,1.23706 -0.21875,1.71875 -1.35262,-1.17817 -2.36408,-1.81726 -3.875,-2.8125 -2.24587,-2.97089 -3.55139,-5.02241 -5.53125,-5.90625 -1.01794,-0.45443 -2.24381,-0.37959 -3.28125,0.125 -1.03744,0.50459 -2.00383,1.34756 -3.15625,2.5 -0.55551,0.55552 -0.71692,1.32084 -0.6875,1.90625 0.0294,0.58541 0.19154,1.06556 0.375,1.5 0.18346,0.43444 0.40972,0.80042 0.59375,1.09375 0.092,0.14666 0.17408,0.30103 0.25,0.40625 0.0759,0.10522 0.0717,0.13422 0.25,0.3125 0.51656,0.51659 0.883,1.49956 1.28125,2.8125 0.39825,1.31294 0.8801,2.94259 2.1875,4.25 3.65473,3.65474 4.97206,4.6596 9.53125,9.21875 1.28152,1.28151 1.88789,4.00585 2.03125,6.5 0.0717,1.2471 0.0514,2.4107 0.0313,3.3125 -0.0101,0.4509 -0.004,0.8344 0,1.1563 0.002,0.1609 -0.0208,0.2964 0,0.4687 0.0208,0.1723 -0.16705,0.3642 0.4375,0.9687 0.65325,0.6533 1.44749,0.9481 2.40625,1.25 0.95876,0.302 2.10307,0.5476 3.375,0.75 2.54385,0.4049 5.60917,0.6417 8.6875,0.7188 3.07833,0.077 6.15795,-0.017 8.65625,-0.2812 1.24915,-0.1321 2.35229,-0.2922 3.28125,-0.5313 0.92896,-0.2391 1.67505,-0.4563 2.34375,-1.125 0.61845,-0.6185 0.80968,-1.4032 0.84375,-2.0625 0.0341,-0.6593 -0.0749,-1.2969 -0.15625,-1.875 -0.16265,-1.1562 -0.15326,-2.1622 -0.125,-2.2188 0.99824,-1.99644 1.4545,-4.78555 2.03125,-7.56245 0.57675,-2.7769 1.29439,-5.51973 2.15625,-6.8125 2.17338,-1.60256 3.9192,-4.28919 5.40625,-7.21875 1.58721,-3.12689 2.8452,-6.46548 3.6875,-8.78125 1.57816,-4.33898 2.36249,-7.81651 1.71875,-10.4375 -0.32187,-1.3105 -1.20874,-2.48558 -2.53125,-2.875 -1.32251,-0.38942 -2.78808,-0.0917 -4.4375,0.625 l -0.375,0.15625 -0.21875,0.375 c -1.05312,1.75056 -1.91221,4.35163 -3.1875,7.09375 -0.74337,1.59839 -1.66241,3.14773 -2.71875,4.59375 0.25124,-2.85444 0.65658,-6.02033 1.4375,-9.125 0.7941,-3.15706 1.69788,-6.1445 1.90625,-8.59375 0.10419,-1.22462 0.0781,-2.37535 -0.53125,-3.40625 -0.60931,-1.0309 -1.88898,-1.63879 -3.21875,-1.625 -1.28813,0.0136 -2.45585,0.50183 -3.34375,1.25 -0.8879,0.74817 -1.50842,1.73874 -2.03125,2.8125 -1.04567,2.14753 -1.68163,4.72841 -2.40625,7.21875 -0.83115,2.85645 -1.5662,4.44375 -2.40625,6.65625 -0.41018,-2.85317 -0.79656,-6.10246 -1,-9.3125 -0.16921,-2.67147 -0.14475,-5.23635 -0.59375,-7.375 -0.2245,-1.06933 -0.5644,-2.06149 -1.28125,-2.875 -0.71685,-0.81351 -1.82158,-1.32115 -3.03125,-1.34375 z m -0.0625,2.71875 c 0.61262,0.0114 0.8201,0.13116 1.0625,0.40625 0.2424,0.27509 0.48406,0.8361 0.65625,1.65625 0.34437,1.6403 0.35459,4.21097 0.53125,7 0.3685,5.81446 1.41259,12.2466 1.875,14.8125 l 0.75,4.15625 1.8125,-3.78125 c 0.95933,-2.00163 2.82947,-6.8407 4.3125,-11.9375 0.74578,-2.56306 1.37742,-5.08463 2.21875,-6.8125 0.42066,-0.86394 0.87244,-1.50911 1.34375,-1.90625 0.47131,-0.39714 0.9305,-0.61764 1.625,-0.625 0.71497,-0.007 0.72524,0.0807 0.84375,0.28125 0.11851,0.2005 0.2692,0.85217 0.1875,1.8125 -0.1634,1.92065 -1.06186,4.92351 -1.875,8.15625 -1.22945,4.88789 -1.75489,10.20297 -1.78125,13.65625 l -0.0313,2.90625 2.25,-1.84375 c 2.82044,-2.31375 4.61637,-5.46712 5.96875,-8.375 1.26638,-2.72298 2.13899,-5.1043 2.84375,-6.40625 0.97213,-0.33599 1.82634,-0.49419 2.125,-0.40625 0.36042,0.10613 0.51455,0.23332 0.6875,0.9375 0.3459,1.40836 -0.12436,4.71793 -1.625,8.84375 -0.82687,2.27333 -2.09462,5.54664 -3.59375,8.5 -1.49913,2.95336 -3.3427,5.56535 -4.84375,6.53125 l -0.21875,0.15625 -0.15625,0.25 c -1.36823,2.05233 -1.97671,4.92955 -2.5625,7.75 -0.58579,2.82045 -1.13286,5.60946 -1.78125,6.90625 -0.71664,1.4333 -0.3092,2.7253 -0.15625,3.8125 0.0765,0.5436 0.14068,1.0403 0.125,1.3438 -0.0157,0.3034 -0.0773,0.3272 -0.0313,0.2812 0.0671,-0.067 -0.39818,0.2504 -1.125,0.4375 -0.72682,0.1871 -1.71221,0.3459 -2.875,0.4687 -2.32559,0.2458 -5.2993,0.3248 -8.28125,0.25 -2.98195,-0.075 -6.00656,-0.3105 -8.375,-0.6874 -1.18422,-0.1885 -2.20543,-0.4159 -2.96875,-0.6563 -0.55922,-0.1761 -0.74157,-0.3209 -0.9375,-0.4375 0.002,-0.2168 -0.007,-0.4286 0,-0.75 0.0204,-0.9107 0.0477,-2.157 -0.0313,-3.5312 -0.15798,-2.74854 -0.61909,-6.05666 -2.8125,-8.25005 -4.60109,-4.60105 -5.96065,-5.64814 -9.5625,-9.25 -0.74329,-0.74329 -1.11281,-1.81727 -1.5,-3.09375 -0.38363,-1.26473 -0.73928,-2.74974 -1.90625,-3.9375 0.037,0.0513 0.10458,0.10455 -0.0313,-0.0313 -0.0361,-0.0512 -0.0725,-0.135 -0.125,-0.21875 -0.12306,-0.19615 -0.26834,-0.46618 -0.375,-0.71875 -0.10132,-0.23994 -0.1782,-0.42966 -0.1875,-0.53125 0.99827,-0.98383 1.80757,-1.59816 2.3125,-1.84375 0.52743,-0.25653 0.64364,-0.25284 1,-0.0937 0.71273,0.31817 2.24241,2.1183 4.625,5.25 l 0.15625,0.1875 0.1875,0.125 c 2.30779,1.54527 2.58511,1.32551 4.875,3.65625 l 0.96875,1.03125 0.96875,-1.03125 c 1.22751,-1.28737 1.69959,-3.01211 1.6875,-4.75 -0.0121,-1.73789 -0.45676,-3.57026 -1.03125,-5.46875 -1.14898,-3.79698 -2.91983,-7.89152 -3.78125,-11.375 -0.65018,-2.62915 -1.14455,-4.86843 -0.96875,-6.28125 0.0879,-0.70641 0.28298,-1.19183 0.65625,-1.59375 0.37327,-0.40192 0.99625,-0.76112 2.0625,-1.03125 0.57185,-0.14489 0.82767,-0.0891 1.09375,0.0625 0.26608,0.15156 0.58587,0.49179 0.90625,1.09375 0.64077,1.20391 1.14645,3.32609 1.65625,5.6875 1.09636,5.07841 4.05513,11.84257 5.4375,14.625 l 2.125,4.25 0.46875,-4.71875 c 0.33713,-3.4245 0.60386,-9.92982 0.5625,-15.25 -0.023,-2.95496 -0.11861,-5.70265 0.25,-7.4375 0.1843,-0.86742 0.47073,-1.44426 0.78125,-1.75 0.31052,-0.30574 0.68298,-0.48472 1.53125,-0.46875 z"+       id="path4276-2-3-3-1"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:3.61794162;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 397.3125,963.5625 3.0625,3.0625 7.46875,7.46875 -4.1875,4.1875 -7.3125,-6.78125 -3.03125,-2.8125 0,4.125 0,32.6563 0,1.8124 1.8125,0 33.9375,0 4.28125,0 -2.96875,-3.0937 -6.53125,-6.6875 3,-3.125 6.59375,6.5938 3.0625,3.0937 0,-4.375 0,-34.3125 0,-1.8125 -1.78125,0 -33.0625,0 -4.34375,0 z m 8.6875,3.59375 26.90625,0 0,28.15625 -4.8125,-4.8125 -1.3125,-1.3125 -1.28125,1.34375 -5.46875,5.71875 -1.21875,1.25 1.21875,1.25 4.78125,4.9062 -27.90625,0 0,-26.68745 5.59375,5.15625 1.28125,1.15625 1.21875,-1.21875 6.6875,-6.6875 1.28125,-1.28125 L 411.6875,972.8125 406,967.15625 z"+       id="path4060-1-4"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 258.5756,1056.9274 c -15.49549,0 -28.03905,12.5435 -28.03905,28.039 0,15.4955 12.54356,28.1521 28.03905,28.1521 15.49548,0 28.1521,-12.6566 28.1521,-28.1521 0,-15.4955 -12.65662,-28.039 -28.1521,-28.039 z m 0,3.6179 c 13.5402,0 24.53416,10.8809 24.53416,24.4211 0,13.5402 -10.99396,24.5342 -24.53416,24.5342 -13.54021,0 -24.42111,-10.994 -24.42111,-24.5342 0,-13.5402 10.8809,-24.4211 24.42111,-24.4211 z"+       id="path4997-5-8-3"+       inkscape:connector-curvature="0" />+    <g+       id="g3261-7-8-4"+       style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       transform="matrix(1.9290401,0,0,1.9290401,149.37439,1050.3913)"+       inkscape:export-filename="/home/johan/birdfont/icons/move_background.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824">+      <g+         id="g3233-0-3-5"+         style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+        <g+           id="g3220-0-5-2"+           style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+          <g+             transform="translate(1.0552765,-0.4020101)"+             id="g3149-0-0-6"+             style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 55.5625,7.75 -0.625,0.90625 -3.15625,4.53125 -0.8125,1.1875 1.4375,0 6.25,0 1.40625,0 L 59.28125,13.21875 56.1875,8.65625 55.5625,7.75 z m -0.03125,2.65625 1.6875,2.46875 -3.375,0 1.6875,-2.46875 z"+               id="path3139-0-1-0"+               inkscape:connector-curvature="0" />+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 54.8125,13.84375 0,6.125 1.5,0 0,-6.125 -1.5,0 z"+               id="path3147-9-3-1"+               inkscape:connector-curvature="0" />+          </g>+        </g>+        <g+           id="g3225-1-9-7"+           transform="matrix(-1,0,0,-1,113.26633,36.477369)"+           style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+          <g+             id="g3227-8-5-7"+             transform="translate(1.0552765,-0.4020101)"+             style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 55.5625,7.75 -0.625,0.90625 -3.15625,4.53125 -0.8125,1.1875 1.4375,0 6.25,0 1.40625,0 L 59.28125,13.21875 56.1875,8.65625 55.5625,7.75 z m -0.03125,2.65625 1.6875,2.46875 -3.375,0 1.6875,-2.46875 z"+               id="path3229-5-4-3"+               inkscape:connector-curvature="0" />+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 54.8125,13.84375 0,6.125 1.5,0 0,-6.125 -1.5,0 z"+               id="path3231-1-4-0"+               inkscape:connector-curvature="0" />+          </g>+        </g>+      </g>+      <g+         transform="matrix(0,1,-1,0,74.871849,-38.494983)"+         id="g3243-2-5-8"+         style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+        <g+           id="g3245-8-0-7"+           style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+          <g+             id="g3247-8-6-4"+             transform="translate(1.0552765,-0.4020101)"+             style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 55.5625,7.75 -0.625,0.90625 -3.15625,4.53125 -0.8125,1.1875 1.4375,0 6.25,0 1.40625,0 L 59.28125,13.21875 56.1875,8.65625 55.5625,7.75 z m -0.03125,2.65625 1.6875,2.46875 -3.375,0 1.6875,-2.46875 z"+               id="path3249-9-9-3"+               inkscape:connector-curvature="0" />+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 54.8125,13.84375 0,6.125 1.5,0 0,-6.125 -1.5,0 z"+               id="path3251-9-6-3"+               inkscape:connector-curvature="0" />+          </g>+        </g>+        <g+           transform="matrix(-1,0,0,-1,113.26633,36.477369)"+           id="g3253-7-6-4"+           style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+          <g+             transform="translate(1.0552765,-0.4020101)"+             id="g3255-8-5-3"+             style="fill:none;stroke:#626b76;stroke-width:1.50041127;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 55.5625,7.75 -0.625,0.90625 -3.15625,4.53125 -0.8125,1.1875 1.4375,0 6.25,0 1.40625,0 L 59.28125,13.21875 56.1875,8.65625 55.5625,7.75 z m -0.03125,2.65625 1.6875,2.46875 -3.375,0 1.6875,-2.46875 z"+               id="path3257-9-6-5"+               inkscape:connector-curvature="0" />+            <path+               style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#626b76;fill-opacity:1;stroke:none;stroke-width:1.50041127;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+               d="m 54.8125,13.84375 0,6.125 1.5,0 0,-6.125 -1.5,0 z"+               id="path3259-7-9-8"+               inkscape:connector-curvature="0" />+          </g>+        </g>+      </g>+    </g>+    <path+       sodipodi:type="arc"+       style="fill:none;stroke:#656a73;stroke-width:1.37405884;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="path4160-6-2"+       sodipodi:cx="18.477161"+       sodipodi:cy="87.187637"+       sodipodi:rx="11.086297"+       sodipodi:ry="11.086297"+       d="m 29.563458,87.187637 a 11.086297,11.086297 0 1 1 -22.1725936,0 11.086297,11.086297 0 1 1 22.1725936,0 z"+       transform="matrix(2.6330327,0,0,2.6330327,54.812251,968.36882)"+       inkscape:export-filename="/home/johan/birdfont/icons/quadratic_points.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       style="font-size:10px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4162-7-0"+       transform="matrix(3.6179417,0,0,3.6179417,33.528581,885.58232)"+       inkscape:export-filename="/home/johan/birdfont/icons/quadratic_points.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 18.396109,88.915932 3.442382,0 0,0.830078 -4.628906,0 0,-0.830078 c 0.374348,-0.387369 0.883788,-0.906574 1.528321,-1.557617 0.647783,-0.654294 1.054684,-1.075843 1.220703,-1.264649 0.315751,-0.354814 0.535477,-0.654292 0.659179,-0.898437 0.126949,-0.247391 0.190426,-0.489904 0.19043,-0.727539 -4e-6,-0.387365 -0.136723,-0.70312 -0.410156,-0.947266 -0.270186,-0.244134 -0.623376,-0.366204 -1.059571,-0.366211 -0.309247,7e-6 -0.636395,0.05372 -0.981445,0.161133 -0.341798,0.107428 -0.708009,0.270188 -1.098633,0.488281 l 0,-0.996094 c 0.397135,-0.159498 0.768228,-0.27994 1.113282,-0.361328 0.345049,-0.08137 0.660804,-0.122063 0.947265,-0.12207 0.755205,7e-6 1.357418,0.188809 1.806641,0.566406 0.449213,0.377611 0.673823,0.882168 0.673828,1.513672 -5e-6,0.299484 -0.05697,0.584315 -0.170898,0.854492 -0.110683,0.266931 -0.314133,0.582686 -0.610352,0.947266 -0.08139,0.0944 -0.340174,0.367841 -0.776367,0.820312 -0.436201,0.449221 -1.051435,1.079103 -1.845703,1.889649"+         id="path3793-8-0"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+    </g>+    <path+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/cubic_points.png"+       transform="matrix(2.6330327,0,0,2.6330327,213.65172,966.73792)"+       d="m 29.563458,87.187637 a 11.086297,11.086297 0 1 1 -22.1725936,0 11.086297,11.086297 0 1 1 22.1725936,0 z"+       sodipodi:ry="11.086297"+       sodipodi:rx="11.086297"+       sodipodi:cy="87.187637"+       sodipodi:cx="18.477161"+       id="path4173-37-4"+       style="fill:none;stroke:#656a73;stroke-width:1.37405884;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       sodipodi:type="arc" />+    <g+       style="font-size:10px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4175-8-2"+       transform="matrix(3.6179417,0,0,3.6179417,63.811731,882.92302)"+       inkscape:export-filename="/home/johan/birdfont/icons/cubic_points.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 56.067783,86.099609 c 0.472001,0.100916 0.839839,0.310876 1.103516,0.629883 0.266922,0.319014 0.400385,0.712893 0.400391,1.181641 -6e-6,0.719402 -0.247402,1.276042 -0.742188,1.669922 -0.494796,0.39388 -1.19792,0.59082 -2.109375,0.59082 -0.305992,0 -0.621747,-0.03092 -0.947266,-0.09277 -0.322267,-0.05859 -0.655925,-0.148112 -1.000976,-0.268555 l 0,-0.952149 c 0.273436,0.159507 0.572915,0.279949 0.898437,0.361329 0.325519,0.08138 0.665688,0.122071 1.020508,0.12207 0.618487,10e-7 1.088864,-0.12207 1.411133,-0.366211 0.325516,-0.244139 0.488277,-0.598957 0.488281,-1.064453 -4e-6,-0.429685 -0.151371,-0.764971 -0.454101,-1.00586 -0.299483,-0.244137 -0.717777,-0.366207 -1.254883,-0.366211 l -0.849609,0 0,-0.810546 0.888671,0 c 0.485023,4e-6 0.856116,-0.09602 1.113282,-0.288086 0.257157,-0.195308 0.385737,-0.475256 0.385742,-0.839844 -5e-6,-0.374343 -0.133468,-0.660801 -0.400391,-0.859375 -0.263675,-0.201816 -0.642907,-0.302728 -1.137695,-0.302734 -0.270185,6e-6 -0.559898,0.0293 -0.869141,0.08789 -0.309246,0.0586 -0.649415,0.149746 -1.020508,0.273438 l 0,-0.878907 c 0.374348,-0.104159 0.724283,-0.182284 1.049805,-0.234375 0.328774,-0.05208 0.638018,-0.07812 0.927735,-0.07813 0.748694,8e-6 1.341141,0.170906 1.777343,0.512696 0.436193,0.338548 0.654292,0.797532 0.654297,1.376953 -5e-6,0.403651 -0.115565,0.745447 -0.34668,1.02539 -0.231124,0.276697 -0.5599,0.468755 -0.986328,0.576172"+         id="path3790-4-0"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+    </g>+    <path+       sodipodi:type="arc"+       style="fill:none;stroke:#656a73;stroke-width:1.37405884;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="path4181-0-0"+       sodipodi:cx="18.477161"+       sodipodi:cy="87.187637"+       sodipodi:rx="11.086297"+       sodipodi:ry="11.086297"+       d="m 29.563458,87.187637 a 11.086297,11.086297 0 1 1 -22.1725936,0 11.086297,11.086297 0 1 1 22.1725936,0 z"+       transform="matrix(2.6330327,0,0,2.6330327,367.10157,967.02192)"+       inkscape:export-filename="/home/johan/birdfont/icons/double_points.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       style="font-size:6.97485256px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4183-7-4"+       transform="matrix(3.6179417,0,0,3.6179417,75.335387,881.15012)"+       inkscape:export-filename="/home/johan/birdfont/icons/double_points.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 89.103161,88.897221 2.401011,0 0,0.578968 -3.228594,0 0,-0.578968 c 0.261102,-0.270183 0.616429,-0.632321 1.065981,-1.086415 0.45182,-0.45636 0.735627,-0.750384 0.851423,-0.882073 0.220231,-0.247478 0.373487,-0.45636 0.459768,-0.626647 0.08854,-0.172552 0.132818,-0.341701 0.132822,-0.507448 -4e-6,-0.270181 -0.09536,-0.490415 -0.286078,-0.660704 -0.188451,-0.17028 -0.434796,-0.255422 -0.739035,-0.255426 -0.215696,4e-6 -0.443877,0.03747 -0.684544,0.112387 -0.238399,0.07493 -0.493826,0.188453 -0.76628,0.340569 l 0,-0.69476 c 0.276995,-0.111248 0.535828,-0.195255 0.776497,-0.252021 0.240668,-0.05676 0.460902,-0.08514 0.660704,-0.08514 0.526744,5e-6 0.946779,0.131692 1.260105,0.39506 0.31332,0.263378 0.469982,0.615299 0.469986,1.055764 -4e-6,0.208886 -0.03974,0.407551 -0.1192,0.595996 -0.0772,0.18618 -0.219102,0.406415 -0.425711,0.660704 -0.05676,0.06584 -0.237266,0.256564 -0.541504,0.572155 -0.304244,0.313326 -0.733361,0.752659 -1.287351,1.318002"+         id="path3783-7-5"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+      <path+         d="m 96.03374,85.661816 -1.379305,1.856101 1.450824,1.958272 -0.739035,0 -1.110255,-1.498504 -1.110254,1.498504 -0.739035,0 1.481475,-1.995735 -1.355465,-1.818638 0.739035,0 1.01149,1.35887 1.01149,-1.35887 0.739035,0"+         id="path3785-1-3"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+      <path+         d="m 97.671877,88.897221 2.401013,0 0,0.578968 -3.228596,0 0,-0.578968 c 0.261102,-0.270183 0.616429,-0.632321 1.065981,-1.086415 0.45182,-0.45636 0.735627,-0.750384 0.851423,-0.882073 0.220232,-0.247478 0.373487,-0.45636 0.459768,-0.626647 0.08854,-0.172552 0.132819,-0.341701 0.132822,-0.507448 -3e-6,-0.270181 -0.09536,-0.490415 -0.286078,-0.660704 -0.188451,-0.17028 -0.434796,-0.255422 -0.739035,-0.255426 -0.215696,4e-6 -0.443876,0.03747 -0.684544,0.112387 -0.238399,0.07493 -0.493826,0.188453 -0.76628,0.340569 l 0,-0.69476 c 0.276995,-0.111248 0.535828,-0.195255 0.776497,-0.252021 0.240668,-0.05676 0.460902,-0.08514 0.660704,-0.08514 0.526744,5e-6 0.946779,0.131692 1.260105,0.39506 0.31332,0.263378 0.469983,0.615299 0.469983,1.055764 0,0.208886 -0.0397,0.407551 -0.119197,0.595996 -0.0772,0.18618 -0.219102,0.406415 -0.425711,0.660704 -0.05676,0.06584 -0.237266,0.256564 -0.541504,0.572155 -0.304244,0.313326 -0.733361,0.752659 -1.287351,1.318002"+         id="path3787-3-8"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+    </g>+    <path+       sodipodi:type="arc"+       style="fill:none;stroke:#656a73;stroke-width:1.37405884;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="path4226-0-8"+       sodipodi:cx="18.477161"+       sodipodi:cy="87.187637"+       sodipodi:rx="11.086297"+       sodipodi:ry="11.086297"+       d="m 29.563458,87.187637 a 11.086297,11.086297 0 1 1 -22.1725936,0 11.086297,11.086297 0 1 1 22.1725936,0 z"+       transform="matrix(2.6330327,0,0,2.6330327,524.59185,965.39122)"+       inkscape:export-filename="/home/johan/birdfont/icons/convert_point.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       style="font-size:10px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4228-5-9"+       transform="matrix(3.6179417,0,0,3.6179417,100.15552,878.49082)"+       inkscape:export-filename="/home/johan/birdfont/icons/convert_point.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 133.4963,84.154549 0,1.040039 c -0.33204,-0.309239 -0.68685,-0.540359 -1.06445,-0.69336 -0.37436,-0.152988 -0.77312,-0.229485 -1.19629,-0.229492 -0.83334,7e-6 -1.47136,0.25554 -1.91406,0.766602 -0.44272,0.507818 -0.66407,1.243494 -0.66407,2.207031 0,0.960289 0.22135,1.695965 0.66407,2.207031 0.4427,0.507814 1.08072,0.76172 1.91406,0.761719 0.42317,10e-7 0.82193,-0.0765 1.19629,-0.229492 0.3776,-0.152994 0.73241,-0.384114 1.06445,-0.69336 l 0,1.030274 c -0.34506,0.234375 -0.71127,0.410156 -1.09863,0.527344 -0.38412,0.117187 -0.79102,0.175781 -1.22071,0.175781 -1.10351,0 -1.97265,-0.336914 -2.60742,-1.010742 -0.63476,-0.677082 -0.95215,-1.599933 -0.95215,-2.768555 0,-1.17187 0.31739,-2.094721 0.95215,-2.768555 0.63477,-0.677076 1.50391,-1.015617 2.60742,-1.015625 0.4362,8e-6 0.84635,0.0586 1.23047,0.175782 0.38737,0.113939 0.75032,0.286465 1.08887,0.517578"+         id="path3780-9-3"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1" />+    </g>+    <g+       id="g4983-3-2"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_background_image.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:none;stroke:#656a73;stroke-opacity:1"+       transform="matrix(3.6179417,0,0,3.6179417,44.072898,1000.3157)">+      <rect+         y="261.59686"+         x="14.906057"+         height="12.488856"+         width="12.891725"+         id="rect4979-3-5"+         style="fill:none;stroke:#656a73;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+      <rect+         style="fill:none;stroke:#656a73;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         id="rect4981-2-3"+         width="6.952508"+         height="6.7352409"+         x="17.875666"+         y="264.47366" />+    </g>+    <path+       style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:2.74511909px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 292.35436,1949.0068 -15.0681,15.0682 15.34458,12.3032 z"+       id="path4987-4-3"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cccc"+       inkscape:export-filename="/home/johan/birdfont/icons/prev.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/next.png"+       sodipodi:nodetypes="cccc"+       inkscape:connector-curvature="0"+       id="path4995-4-2"+       d="m 424.59999,1949.4285 15.06812,15.0681 -15.34465,12.3033 z"+       style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:2.74511957px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+    <g+       id="g4279-6-3"+       transform="matrix(3.3319587,0,0,3.3319587,11.360588,888.09892)"+       inkscape:export-filename="/home/johan/birdfont/icons/tie_point.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:none;stroke:#656a73;stroke-opacity:1">+      <path+         transform="translate(6.9783644,21.229834)"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         sodipodi:ry="3.4111683"+         sodipodi:rx="3.4111683"+         sodipodi:cy="118.45668"+         sodipodi:cx="12.791882"+         id="path4235-8-6"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         sodipodi:type="arc" />+      <path+         transform="translate(7.0138974,20.021714)"+         d="m 21.035538,113.62419 c 0,0.94197 -0.763616,1.70559 -1.705584,1.70559 -0.941968,0 -1.705584,-0.76362 -1.705584,-1.70559 0,-0.94197 0.763616,-1.70558 1.705584,-1.70558 0.941968,0 1.705584,0.76361 1.705584,1.70558 z"+         sodipodi:ry="1.7055842"+         sodipodi:rx="1.7055842"+         sodipodi:cy="113.62419"+         sodipodi:cx="19.329954"+         id="path4237-7-3"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         sodipodi:type="arc" />+      <path+         sodipodi:type="arc"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         id="path4239-5-3"+         sodipodi:cx="12.791882"+         sodipodi:cy="118.45668"+         sodipodi:rx="3.4111683"+         sodipodi:ry="3.4111683"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         transform="translate(19.69918,9.113074)" />+      <path+         inkscape:connector-curvature="0"+         id="path4241-2-6"+         d="m 22.435222,137.6256 2.54061,-2.54061"+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         inkscape:connector-curvature="0"+         id="path4247-9-9"+         d="m 27.729639,132.40224 2.274113,-2.27411"+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+    </g>+    <g+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/symmetric.png"+       transform="matrix(2.4016167,2.3095856,-2.3095856,2.4016167,520.73827,949.09012)"+       id="g4286-2-6"+       style="fill:none;stroke:#656a73;stroke-opacity:1">+      <path+         sodipodi:type="arc"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         id="path4288-3-9"+         sodipodi:cx="12.791882"+         sodipodi:cy="118.45668"+         sodipodi:rx="3.4111683"+         sodipodi:ry="3.4111683"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         transform="translate(6.9783644,21.229834)" />+      <path+         sodipodi:type="arc"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         id="path4290-1-3"+         sodipodi:cx="19.329954"+         sodipodi:cy="113.62419"+         sodipodi:rx="1.7055842"+         sodipodi:ry="1.7055842"+         d="m 21.035538,113.62419 c 0,0.94197 -0.763616,1.70559 -1.705584,1.70559 -0.941968,0 -1.705584,-0.76362 -1.705584,-1.70559 0,-0.94197 0.763616,-1.70558 1.705584,-1.70558 0.941968,0 1.705584,0.76361 1.705584,1.70558 z"+         transform="translate(7.0138974,20.021714)" />+      <path+         transform="translate(19.69918,9.113074)"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         sodipodi:ry="3.4111683"+         sodipodi:rx="3.4111683"+         sodipodi:cy="118.45668"+         sodipodi:cx="12.791882"+         id="path4292-9-1"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         sodipodi:type="arc" />+      <path+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+         d="m 22.435222,137.6256 2.54061,-2.54061"+         id="path4294-6-5"+         inkscape:connector-curvature="0" />+      <path+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+         d="m 27.729639,132.40224 2.274113,-2.27411"+         id="path4296-2-4"+         inkscape:connector-curvature="0" />+    </g>+    <g+       id="g4307-92-5"+       transform="matrix(3.6179417,0,0,3.6179417,78.253542,814.17582)"+       style="fill:none;stroke:#656a73;stroke-opacity:1"+       inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         inkscape:export-ydpi="321.42578"+         inkscape:export-xdpi="321.42578"+         inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+         transform="matrix(0.66380748,0.63837005,-0.63837005,0.66380748,153.60183,58.200946)"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         sodipodi:ry="3.4111683"+         sodipodi:rx="3.4111683"+         sodipodi:cy="118.45668"+         sodipodi:cx="12.791882"+         id="path4300-7-5"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         sodipodi:type="arc" />+      <path+         inkscape:export-ydpi="321.42578"+         inkscape:export-xdpi="321.42578"+         inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+         transform="matrix(0.66380748,0.63837005,-0.63837005,0.66380748,153.94438,48.501384)"+         d="m 21.035538,113.62419 c 0,0.94197 -0.763616,1.70559 -1.705584,1.70559 -0.941968,0 -1.705584,-0.76362 -1.705584,-1.70559 0,-0.94197 0.763616,-1.70558 1.705584,-1.70558 0.941968,0 1.705584,0.76361 1.705584,1.70558 z"+         sodipodi:ry="1.7055842"+         sodipodi:rx="1.7055842"+         sodipodi:cy="113.62419"+         sodipodi:cx="19.329954"+         id="path4302-36-4"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         sodipodi:type="arc" />+      <path+         inkscape:export-ydpi="321.42578"+         inkscape:export-xdpi="321.42578"+         inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+         sodipodi:type="arc"+         style="fill:none;stroke:#656a73;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         id="path4304-4-9"+         sodipodi:cx="12.791882"+         sodipodi:cy="118.45668"+         sodipodi:rx="3.4111683"+         sodipodi:ry="3.4111683"+         d="m 16.20305,118.45668 c 0,1.88394 -1.527232,3.41117 -3.411168,3.41117 -1.883937,0 -3.4111688,-1.52723 -3.4111688,-3.41117 0,-1.88394 1.5272318,-3.41117 3.4111688,-3.41117 1.883936,0 3.411168,1.52723 3.411168,3.41117 z"+         transform="matrix(0.66380748,0.63837005,-0.63837005,0.66380748,169.07746,57.876328)" />+      <path+         inkscape:export-ydpi="321.42578"+         inkscape:export-xdpi="321.42578"+         inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+         inkscape:connector-curvature="0"+         id="path4315-24-9"+         d="m 88.140705,142.3417 4.874372,-4.87437"+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         inkscape:export-ydpi="321.42578"+         inkscape:export-xdpi="321.42578"+         inkscape:export-filename="/home/johan/birdfont/icons/create_line.png"+         sodipodi:nodetypes="cc"+         inkscape:connector-curvature="0"+         id="path4323-4-4"+         d="m 95.276383,137.61808 4.597997,4.49749"+         style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+    </g>+    <path+       transform="matrix(3.6179417,0,0,3.6179417,36.096348,1372.4525)"+       sodipodi:type="arc"+       style="fill:none;stroke:#656a73;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="path4997-7-9"+       sodipodi:cx="19.169083"+       sodipodi:cy="19.942028"+       sodipodi:rx="7.2657003"+       sodipodi:ry="7.2657003"+       d="m 26.434783,19.942028 a 7.2657003,7.2657003 0 1 1 -14.531401,0 7.2657003,7.2657003 0 1 1 14.531401,0 z"+       inkscape:export-filename="/home/johan/birdfont/icons/circle.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <rect+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="rect4999-4-3"+       width="68.79332"+       height="33.55772"+       x="242.80673"+       y="1425.2063"+       inkscape:export-filename="/home/johan/birdfont/icons/rectangle.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       transform="matrix(3.6179417,0,0,3.6179417,-957.56438,209.20856)"+       id="g4928-1"+       inkscape:export-filename="/home/johan/birdfont/icons/move.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319"+       style="fill:none;stroke:#656a73">+      <path+         style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+         d="M 101.59375 1057.0625 L 100 1059.1875 L 89.9375 1073.7812 L 88.03125 1076.625 L 91.40625 1076.625 L 99.78125 1076.625 L 99.78125 1086.6875 L 99.78125 1088.7188 L 87.34375 1088.7188 L 87.34375 1080.6875 L 87.34375 1077.2812 L 84.53125 1079.2188 L 69.9375 1089.1562 L 67.78125 1090.625 L 69.9375 1092.0938 L 84.53125 1102.1562 L 87.34375 1104.1875 L 87.34375 1100.6875 L 87.34375 1092.3125 L 99.78125 1092.3125 L 99.78125 1095.1562 L 99.78125 1105.0938 L 91.75 1105.0938 L 88.375 1105.0938 L 90.28125 1107.9375 L 100.21875 1122.5 L 101.6875 1124.6562 L 103.15625 1122.5 L 113.21875 1107.9375 L 115.28125 1105.0938 L 111.75 1105.0938 L 103.40625 1105.0938 L 103.40625 1095.1562 L 103.40625 1092.3125 L 105.875 1092.3125 L 105.875 1088.7188 L 103.40625 1088.7188 L 103.40625 1086.6875 L 103.40625 1076.625 L 111.4375 1076.625 L 114.9375 1076.625 L 112.90625 1073.7812 L 103.0625 1059.1875 L 101.59375 1057.0625 z M 101.46875 1063.5 L 108.03125 1073 L 94.8125 1073 L 101.46875 1063.5 z M 115.84375 1076.9375 L 115.84375 1080.3438 L 115.84375 1100.3438 L 115.84375 1103.8438 L 118.65625 1101.9375 L 133.25 1092 L 135.40625 1090.5312 L 133.25 1088.9375 L 118.65625 1078.875 L 115.84375 1076.9375 z M 119.4375 1083.7188 L 128.9375 1090.4062 L 119.4375 1096.9688 L 119.4375 1083.7188 z M 83.71875 1084.0625 L 83.71875 1097.3125 L 74.125 1090.625 L 83.71875 1084.0625 z M 95.15625 1108.7188 L 108.375 1108.7188 L 101.6875 1118.3438 L 95.15625 1108.7188 z "+         transform="matrix(0.27640025,0,0,0.27640025,264.67104,-57.825299)"+         id="path3147-8-5-9-2" />+      <path+         style="fill:none;stroke:#656a73;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+         d="m 297.01374,243.6031 -5.42726,0"+         id="path3251-7-6-7-7"+         inkscape:connector-curvature="0" />+    </g>+    <path+       style="opacity:0.71193417;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:2.89435339;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 456.51499,1451.2713 -10.61321,-3.1478 c 0,0 11.38452,-13.436 9.84183,-23.2063 -1.54269,-9.7703 -16.58379,-16.5838 -16.58379,-16.5838 l -11.82718,6.1707 c 0,0 15.0411,4.4995 16.96947,12.9842 1.92838,8.4847 -4.31766,18.0253 -4.31766,18.0253 l -8.66652,-5.6839 -0.12845,19.412 z"+       id="path4415-7-8-7"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccsccscccc"+       inkscape:export-filename="/home/johan/birdfont/icons/reverse_path.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       sodipodi:nodetypes="ccsccscccc"+       inkscape:connector-curvature="0"+       id="path4435-6-1"+       d="m 391.69869,1416.3039 10.24949,3.1478 c 0,0 -11.38443,11.0725 -9.47819,23.2063 1.53512,9.7714 16.58379,16.5837 16.58379,16.5837 l 11.82718,-6.1706 c 0,0 -15.0411,-4.4996 -16.96947,-12.9843 -1.9283,-8.4847 5.40848,-17.4798 5.40848,-17.4798 l 7.57578,5.1385 0.12837,-19.4121 z"+       style="opacity:0.71193417;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2.89435339;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       inkscape:export-filename="/home/johan/birdfont/icons/reverse_path.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       id="g4991-6"+       inkscape:export-filename="/home/johan/birdfont/icons/high_contrast_background.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319"+       transform="matrix(3.6179417,0,0,3.6179417,-432.38503,568.60314)">+      <rect+         inkscape:export-ydpi="319"+         inkscape:export-xdpi="319"+         inkscape:export-filename="/home/johan/birdfont/icons/high_contrast_background.png"+         y="414.07047"+         x="286.95129"+         height="14.986238"+         width="14.986238"+         id="rect3433-0-3"+         style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.34000003;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />+      <path+         inkscape:export-ydpi="319"+         inkscape:export-xdpi="319"+         inkscape:export-filename="/home/johan/birdfont/icons/high_contrast_background.png"+         sodipodi:nodetypes="cccc"+         inkscape:connector-curvature="0"+         id="rect3435-1-6"+         d="m 288.03475,415.02501 12.38553,-0.0167 -12.43736,13.48567 z"+         style="color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.34000003;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />+    </g>+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:2.89435339;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 264.0625,1552.9375 -0.96875,1.6563 -14.03125,24.5624 -1.125,1.9688 2.25,0.1875 9.34375,0.8437 0.4375,0.063 0.40625,-0.2188 19.125,-10.5 1.65625,-0.9375 -1.3125,-1.3437 -14.4375,-14.9063 -1.34375,-1.375 z m 0.59375,4.7813 11.78125,12.125 -17.0625,9.4062 -6.6875,-0.625 11.96875,-20.9062 z"+       id="path4996-1"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:2.89435339;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 306.59375,1512.5312 -2.4375,1.5 c 0,0 -5.75546,3.495 -12.21875,7.875 -6.46329,4.3801 -13.55002,9.4967 -16.625,13.2813 -5.68002,6.9908 -9.75,15.5 -9.75,15.5 l -0.4375,0.9375 0.71875,0.7188 15.3125,15.5624 0.71875,0.75 0.96875,-0.4687 c 0,0 7.90647,-4.0447 10.71875,-5.25 1.83215,-0.7852 3.92794,-2.4098 5.71875,-3.875 1.79081,-1.4652 3.21875,-2.7813 3.21875,-2.7813 l 0.40625,-0.375 0.0313,-0.5624 3.40625,-39.9688 0.25,-2.8438 z m -3.375,5.5313 -3.09375,36.4687 c -0.30283,0.2766 -1.1734,1.068 -2.65625,2.2813 -1.71688,1.4047 -3.88717,2.9784 -5.03125,3.4687 -2.86218,1.2267 -8.8023,4.2476 -9.96875,4.8438 l -13.8125,-14.0625 c 0.6192,-1.2619 3.9716,-8.0276 8.875,-14.0625 2.45229,-3.0182 9.63301,-8.3515 16.03125,-12.6875 5.11159,-3.4641 7.98249,-5.2133 9.65625,-6.25 z"+       id="path4998-9"+       inkscape:connector-curvature="0" />+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;stroke:none;stroke-width:3.55554199;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="M 426.65625 1519.0938 C 426.23092 1519.1029 425.84523 1519.1143 425.46875 1519.1562 A 1.4473214 1.4473214 0 0 0 424.375 1519.8438 C 424.375 1519.8438 420.14662 1526.7642 415.84375 1533.7812 C 413.69233 1537.2896 411.53064 1540.816 409.875 1543.5312 C 409.04718 1544.8888 408.32118 1546.0632 407.8125 1546.9062 C 407.55816 1547.3276 407.37073 1547.6499 407.21875 1547.9062 C 407.06677 1548.1626 406.98058 1548.2577 406.875 1548.4688 A 1.4473214 1.4473214 0 0 0 406.9375 1549.875 L 405.84375 1567.6562 L 405.8125 1567.6562 L 405.71875 1569.125 L 405.09375 1579.4062 L 405.09375 1579.4375 A 1.4473214 1.4473214 0 0 0 405.09375 1579.5938 L 405 1580.4688 L 405.84375 1580.7812 L 406.53125 1581.25 A 1.4473214 1.4473214 0 0 0 407.0625 1581.4375 L 407.09375 1581.5312 C 407.09375 1581.5312 407.23002 1581.5412 407.40625 1581.5312 C 407.49435 1581.5312 407.57181 1581.5713 407.75 1581.5312 C 407.87296 1581.5032 408.09332 1581.3835 408.34375 1581.1875 L 418.09375 1577.1875 L 419.375 1576.6562 L 419.375 1576.625 L 432.3125 1571.3125 A 1.4473214 1.4473214 0 0 0 432.40625 1571.2812 A 1.4473214 1.4473214 0 0 0 432.4375 1571.25 A 1.4473214 1.4473214 0 0 0 432.53125 1571.2188 A 1.4473214 1.4473214 0 0 0 432.90625 1570.9062 A 1.4473214 1.4473214 0 0 0 432.96875 1570.8438 A 1.4473214 1.4473214 0 0 0 433 1570.8125 A 1.4473214 1.4473214 0 0 0 433.0625 1570.75 L 433.0625 1570.7188 L 449.34375 1546.4375 C 449.48855 1546.3725 449.68735 1546.2812 449.6875 1546.2812 C 449.68772 1546.2811 449.9998 1545.9689 450 1545.9688 C 450.00019 1545.9685 450.15608 1545.7191 450.15625 1545.7188 C 450.15642 1545.7185 450.20125 1545.6156 450.21875 1545.5625 C 450.28895 1545.3501 450.3083 1545.2299 450.3125 1545.1562 C 450.3294 1544.8611 450.29325 1544.8619 450.28125 1544.7812 C 450.26935 1544.7003 450.23805 1544.6011 450.21875 1544.5 C 450.06444 1543.6911 449.6177 1541.5475 448.1875 1535.625 C 446.53416 1528.7782 442.1857 1524.4545 437.65625 1522 C 434.25916 1520.1591 430.79648 1519.2913 428 1519.125 C 427.53392 1519.0975 427.08158 1519.0846 426.65625 1519.0938 z M 426.4375 1522.0938 C 428.7511 1521.9797 432.59911 1522.5359 436.28125 1524.5312 C 440.2483 1526.6809 443.89169 1530.2992 445.34375 1536.3125 C 446.65476 1541.7415 447.05035 1543.5237 447.21875 1544.3438 L 432.71875 1566.0938 C 432.71012 1566.055 432.69643 1566.0079 432.6875 1565.9688 C 432.68511 1565.9589 432.6899 1565.9473 432.6875 1565.9375 C 432.09987 1563.3741 430.8625 1560.0049 428.03125 1556.9375 C 428.00147 1556.9052 427.96763 1556.8759 427.9375 1556.8438 C 427.82076 1556.7126 427.68213 1556.5967 427.5625 1556.4688 C 426.68362 1555.5289 425.73511 1554.6757 424.71875 1553.9062 C 420.60997 1550.7958 415.57783 1549.0191 410.53125 1548.0625 C 411.01646 1547.2589 411.60491 1546.2429 412.34375 1545.0312 C 413.99696 1542.3202 416.16172 1538.8199 418.3125 1535.3125 C 422.39457 1528.6556 426.03656 1522.7458 426.4375 1522.0938 z M 409.75 1550.9062 C 410.95198 1551.1293 412.16776 1551.3959 413.34375 1551.7188 C 413.37565 1551.7275 413.40563 1551.7412 413.4375 1551.75 C 416.2448 1552.617 419.79788 1554.0953 423.34375 1556.6562 C 423.80059 1556.9862 424.22522 1557.3079 424.625 1557.6562 C 424.82489 1557.8304 425.00116 1558.0097 425.1875 1558.1875 C 425.3296 1558.3333 425.48773 1558.4745 425.625 1558.625 C 428.03697 1561.2704 429.69342 1564.6501 430.25 1569.0312 L 418.28125 1573.9688 C 417.02016 1571.5599 415.09818 1570.0201 413.1875 1569.1562 C 411.57893 1568.429 410.00081 1568.1097 408.71875 1567.9375 L 409.75 1550.9062 z M 408.53125 1570.875 C 409.62719 1571.0346 410.82841 1571.2829 412 1571.8125 C 413.36842 1572.4311 414.52603 1573.5384 415.4375 1575.125 L 408.09375 1578.1562 L 408.53125 1570.875 z "+       id="path5000-5" />+    <g+       transform="matrix(3.6179417,0,0,3.6179417,54.797158,1629.525)"+       id="g4647-5-1"+       inkscape:export-filename="/home/johan/birdfont/icons/help_lines.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:#656a73;fill-opacity:1;stroke:#656a73">+      <g+         transform="translate(-2.2495927,-0.18746606)"+         id="g4643-4-3"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <path+           style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+           id="path4637-50-6"+           inkscape:connector-curvature="0"+           sodipodi:nodetypes="cccc" />+        <path+           sodipodi:nodetypes="cc"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 12.279027,20.104169 16.309547,0"+           id="path4641-62-5"+           inkscape:connector-curvature="0" />+      </g>+    </g>+    <g+       id="g4818-5-8"+       transform="matrix(3.6179417,0,0,3.6179417,181.81101,1624.4651)"+       inkscape:export-filename="/home/johan/birdfont/icons/show_xheight_helplines.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:#656a73;fill-opacity:1;stroke:#656a73">+      <g+         id="g4647-0-4-3"+         transform="translate(1.0197175,6.8893775)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-8-6-1"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-5-6-8"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-9-7-4"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-02-0-5"+         transform="translate(0.83225141,-7.5455089)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-9-8-9"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-0-0-9"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-5-2-6"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+    </g>+    <g+       id="g4828-8-4"+       transform="matrix(3.6179417,0,0,3.6179417,186.18366,1623.0076)"+       inkscape:export-filename="/home/johan/birdfont/icons/background_help_lines.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:#656a73;fill-opacity:1;stroke:#656a73">+      <g+         id="g4647-9-7-3"+         transform="translate(37.200666,-7.920441)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-6-0-7"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-06-3-7"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-2-3-3"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-7-3-2"+         transform="translate(37.013201,7.8267081)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-1-2-6"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-8-4-6"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-1-2-9"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-04-4-0"+         transform="translate(37.0132,-0.02802146)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-7-0-4"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-6-6-3"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-6-4-8"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+    </g>+    <g+       id="g4842-7-5"+       transform="matrix(3.6179417,0,0,3.6179417,202.21668,1618.6349)"+       inkscape:export-filename="/home/johan/birdfont/icons/new_grid.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:#656a73;fill-opacity:1;stroke:#656a73">+      <g+         id="g4647-8-8-4"+         transform="matrix(0,1,-1,0,103.4797,2.0960817)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-3-7-6"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-88-4-4"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-61-3-5"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-1-2-7"+         transform="matrix(0,1,-1,0,111.91567,1.9086157)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-93-4-9"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-9-1-3"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-52-4-4"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-19-0-8"+         transform="matrix(0,1,-1,0,119.78925,2.0960821)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-33-5-8"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-4-2-5"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-21-6-8"+             d="m 12.279027,20.104169 16.309547,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         id="g4647-6-5-4"+         transform="translate(75.443742,4.9163281)"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           id="g4643-85-2-2"+           transform="translate(-2.2495927,-0.18746606)"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             sodipodi:nodetypes="cccc"+             inkscape:connector-curvature="0"+             id="path4637-42-6-7"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+          <path+             inkscape:connector-curvature="0"+             id="path4641-3-5-4"+             d="m 8.1547738,20.104169 20.4338002,0"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             sodipodi:nodetypes="cc" />+        </g>+      </g>+      <g+         transform="translate(75.443742,-2.8700197)"+         id="g4810-6-8"+         style="fill:#656a73;fill-opacity:1;stroke:#656a73">+        <g+           transform="translate(-2.2495927,-0.18746606)"+           id="g4812-5-3"+           style="fill:#656a73;fill-opacity:1;stroke:#656a73">+          <path+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:0.36491275px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             d="m 30.241071,21.921441 0,-3.728277 -2.086466,1.847037 z"+             id="path4814-2-9"+             inkscape:connector-curvature="0"+             sodipodi:nodetypes="cccc" />+          <path+             sodipodi:nodetypes="cc"+             style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+             d="m 8.1547738,20.104169 20.4338002,0"+             id="path4816-9-7"+             inkscape:connector-curvature="0" />+        </g>+      </g>+    </g>+    <path+       style="fill:none;stroke:#656a73;stroke-width:3.61794162px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 121.09233,1813.1706 0,58.7466"+       id="path4866-88-1"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_in.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       inkscape:connector-curvature="0"+       id="path4868-2-2"+       d="m 150.4656,1842.5439 -58.746551,0"+       style="fill:none;stroke:#656a73;stroke-width:3.61794162px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_in.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       inkscape:connector-curvature="0"+       id="path4868-4-2-9"+       d="m 284.96432,1844.0899 -58.74655,0"+       style="fill:none;stroke:#656a73;stroke-width:3.61794162px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_out.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       style="font-size:10px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#858585;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4900-25-9"+       transform="matrix(3.6179417,0,0,3.6179417,46.370827,973.22812)"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_1_1.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 87.570328,243.05992 1.611328,0 0,-5.56152 -1.75293,0.35156 0,-0.89844 1.743164,-0.35156 0.986328,0 0,6.45996 1.611329,0 0,0.83008 -4.199219,0 0,-0.83008"+         id="path3756-8-8"+         inkscape:connector-curvature="0" />+      <path+         d="m 93.869156,242.64977 1.030273,0 0,1.24023 -1.030273,0 0,-1.24023 m 0,-3.93067 1.030273,0 0,1.24024 -1.030273,0 0,-1.24024"+         id="path3758-4-1"+         inkscape:connector-curvature="0" />+      <path+         d="m 97.316422,243.05992 1.611328,0 0,-5.56152 -1.75293,0.35156 0,-0.89844 1.743164,-0.35156 0.986328,0 0,6.45996 1.611328,0 0,0.83008 -4.199218,0 0,-0.83008"+         id="path3760-3-1"+         inkscape:connector-curvature="0" />+    </g>+    <g+       id="g4953-3-4"+       inkscape:export-filename="/home/johan/birdfont/icons/zoom_boundaries.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:none;stroke:#656a73"+       transform="matrix(3.6179417,0,0,3.6179417,46.370827,973.22812)">+      <g+         id="g4949-3-6"+         style="fill:none;stroke:#656a73">+        <path+           inkscape:connector-curvature="0"+           id="path4868-4-9-2-2"+           d="m 142.2733,236.64784 -16.23756,0"+           style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           inkscape:export-filename="/home/johan/birdfont/icons/zoom_out.png"+           inkscape:export-xdpi="319.88824"+           inkscape:export-ydpi="319.88824" />+        <path+           inkscape:export-ydpi="319.88824"+           inkscape:export-xdpi="319.88824"+           inkscape:export-filename="/home/johan/birdfont/icons/zoom_out.png"+           style="fill:none;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 142.2733,242.64784 -16.23756,0"+           id="path4947-0-9"+           inkscape:connector-curvature="0" />+      </g>+    </g>+    <g+       style="font-size:10px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#858585;fill-opacity:1;stroke:none;font-family:Sans"+       id="text4900-4-7-0"+       transform="matrix(3.6179417,0,0,3.6179417,46.370827,973.22812)"+       inkscape:export-filename="/home/johan/birdfont/icons/full_glyph.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 166.07191,235.79424 4.18946,0 0,0.83007 -3.20313,0 0,2.14844 2.89063,0 0,0.83008 -2.89063,0 0,3.48144 -0.98633,0 0,-7.29003"+         id="path3777-7-8"+         inkscape:connector-curvature="0" />+    </g>+    <path+       style="fill:none;stroke:#656a73;stroke-width:3.61794162px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 98.013003,2125.663 19.785627,-25.2126 5.42691,-9.0448 c 0,0 -3.18994,-4.5081 -0.0789,-9.2725 2.99833,-4.5918 6.45893,-4.4361 8.67152,-3.3903 2.58324,1.2209 1.46979,6.4444 0.11324,8.0273 -1.35673,1.5828 -3.54305,5.2409 -6.44446,6.5575 -2.34084,1.0622 -7.68813,7.1228 -7.68813,7.1228 l 1.01755,2.3743 1.69591,1.5828 8.81874,-7.2359 c 1.90676,-3.3674 4.89373,-6.1714 6.92785,-8.3308 2.27536,-2.4155 6.84026,-1.1387 8.03183,1.9221 1.19156,3.0608 -4.22174,8.0997 -7.22836,8.6714 -1.54703,0.2942 -5.80929,-0.5668 -6.37459,-0.9059 -0.56535,-0.339 -11.64529,8.0272 -11.64529,8.0272 z"+       id="path4399-5-6"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cccssssccccsssscc"+       inkscape:export-filename="/home/johan/birdfont/icons/cut_background.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <rect+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="rect4999-9-7-8"+       width="35.994354"+       height="34.521339"+       x="228.31245"+       y="2077.4915"+       inkscape:export-filename="/home/johan/birdfont/icons/show_background.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <rect+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/show_background.png"+       y="2092.3469"+       x="241.81746"+       height="34.521339"+       width="35.994354"+       id="rect4423-3-7"+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+    <rect+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/insert_background.png"+       y="2081.1567"+       x="370.93964"+       height="40.627434"+       width="42.360996"+       id="rect4423-5-2-5"+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+    <rect+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="rect4322-8-3"+       width="42.360996"+       height="40.627434"+       x="370.93964"+       y="2081.1567"+       inkscape:export-filename="/home/johan/birdfont/icons/insert_background.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       inkscape:transform-center-y="9.0719991"+       style="font-size:10px;font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:KacstDigital;-inkscape-font-specification:KacstDigital Medium"+       id="text4324-1-1"+       transform="matrix(3.6179417,0,0,3.6179417,-87.264751,925.29772)"+       inkscape:export-filename="/home/johan/birdfont/icons/insert_background.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <path+         d="m 130.90663,325.30753 0,2.67089 1.58203,0 c 0.5306,0 0.92285,-0.10904 1.17676,-0.32714 0.25716,-0.22136 0.38574,-0.55827 0.38574,-1.01075 0,-0.45572 -0.12858,-0.79101 -0.38574,-1.00586 -0.25391,-0.21809 -0.64616,-0.32714 -1.17676,-0.32714 l -1.58203,0 m 0,-2.99805 0,2.19726 1.45996,0 c 0.48177,1e-5 0.83984,-0.0895 1.07422,-0.26855 0.23763,-0.18229 0.35644,-0.45898 0.35645,-0.83008 -1e-5,-0.36783 -0.11882,-0.6429 -0.35645,-0.82519 -0.23438,-0.18229 -0.59245,-0.27343 -1.07422,-0.27344 l -1.45996,0 m -0.98633,-0.81055 2.51953,0 c 0.75195,1e-5 1.33138,0.15626 1.73829,0.46875 0.40689,0.31251 0.61034,0.75684 0.61035,1.33301 -1e-5,0.44597 -0.10418,0.80079 -0.3125,1.06445 -0.20834,0.26368 -0.51433,0.42807 -0.91797,0.49317 0.48502,0.10417 0.861,0.32227 1.12793,0.65429 0.27017,0.32878 0.40527,0.74057 0.40527,1.23536 0,0.65104 -0.22136,1.15397 -0.66406,1.50878 -0.44271,0.35482 -1.0726,0.53223 -1.88965,0.53223 l -2.61719,0 0,-7.29004"+         id="path3763-5-3"+         inkscape:connector-curvature="0"+         style="fill:#656a73;fill-opacity:1;stroke:none" />+    </g>+    <path+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.37405884;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"+       d="m 519.758,2070.6024 0,1.8089 0,2.1482 c 1.47545,-0.069 3.04622,0 4.29626,0 13.92505,1.2967 24.8734,12.7537 24.8734,27.0215 0,14.2673 -10.94908,25.611 -24.8734,26.9085 -1.00884,0.089 -3.08057,0.226 -4.29626,0.226 l 0,2.0351 0,1.8091 1.80896,0 c 17.09916,0 30.97862,-13.8796 30.97862,-30.9787 0,-17.0992 -13.87946,-30.9786 -30.97862,-30.9786 z"+       id="path4173-3-9-2"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccccsccccsssc"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-8-9-8"+       width="5.9046741"+       height="6.1130738"+       x="509.23071"+       y="2070.4858"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-3-6-3"+       width="5.9046741"+       height="6.1130738"+       x="499.73361"+       y="2074.7822"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-1-7-8"+       width="5.9046741"+       height="6.1130738"+       x="489.85822"+       y="2082.2085"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-6-0-0"+       width="5.9046741"+       height="6.1130738"+       x="487.55353"+       y="2091.9626"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-7-7-3"+       width="5.9046741"+       height="6.1130738"+       x="487.68597"+       y="2102.395"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-72-7-4"+       width="5.9046741"+       height="6.1130738"+       x="499.06317"+       y="2121.9685"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-82-2-0"+       width="5.9046741"+       height="6.1130738"+       x="509.56985"+       y="2125.3201"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-72-9-0-6"+       width="5.9046741"+       height="6.1130738"+       x="490.0307"+       y="2113.0659"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-72-5-15-4"+       width="5.9046741"+       height="6.1130738"+       x="509.54959"+       y="2081.1946"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect3434-6-72-5-1-2-7"+       width="5.9046741"+       height="6.1130738"+       x="509.54959"+       y="2092.1912"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       inkscape:export-ydpi="323.47827"+       inkscape:export-xdpi="323.47827"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       y="2101.999"+       x="509.54959"+       height="6.1130738"+       width="5.9046741"+       id="rect4474-0-9"+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />+    <rect+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect4476-1-8"+       width="5.9046741"+       height="6.1130738"+       x="509.54959"+       y="2113.8875"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       inkscape:export-ydpi="323.47827"+       inkscape:export-xdpi="323.47827"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       y="2108.0129"+       x="499.46701"+       height="6.1130738"+       width="5.9046741"+       id="rect4478-4-8"+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />+    <rect+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect4480-8-1"+       width="5.9046741"+       height="6.1130738"+       x="499.51212"+       y="2097.541"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       inkscape:export-xdpi="323.47827"+       inkscape:export-ydpi="323.47827" />+    <rect+       inkscape:export-ydpi="323.47827"+       inkscape:export-xdpi="323.47827"+       inkscape:export-filename="/home/johan/birdfont/icons/autotrace.png"+       y="2087.071"+       x="499.32968"+       height="6.1130738"+       width="5.9046741"+       id="rect4482-4-9"+       style="color:#000000;fill:none;stroke:#656a73;stroke-width:0.17465924;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />+    <path+       style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:2.52907324px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 722.83395,2073.899 c 0.20653,4.9514 1.38591,49.4882 1.38591,49.4882"+       id="path4307-0-1"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cc"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-7-2"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031336"+       inkscape:transform-center-y="1.015468"+       transform="matrix(6.5000628,0,0,6.5000628,-312.94171,-451.187)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-0-3"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031348"+       inkscape:transform-center-y="1.0154339"+       transform="matrix(6.5000628,0,0,6.5000628,-313.98013,-484.10165)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-9-9-7"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031352"+       inkscape:transform-center-y="1.0154557"+       transform="matrix(6.5000628,0,0,6.5000628,-314.39131,-500.40613)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:2.52907324px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 757.73559,2073.3545 c 0.20652,4.9515 1.38591,49.4883 1.38591,49.4883"+       id="path4307-8-1-6"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cc"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-2-4-5"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031314"+       inkscape:transform-center-y="1.0154454"+       transform="matrix(6.5000628,0,0,6.5000628,-278.04012,-451.73143)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-9-2-4-0"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031329"+       inkscape:transform-center-y="1.0154038"+       transform="matrix(6.5000628,0,0,6.5000628,-279.48972,-500.95064)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-3-6-6"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031335"+       inkscape:transform-center-y="1.0154525"+       transform="matrix(6.5000628,0,0,6.5000628,-313.47479,-468.10405)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:#656a73;fill-opacity:1;stroke:#656a73;stroke-width:2.52907324px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 741.03939,2073.1851 c 0.2066,4.9515 1.38598,49.4882 1.38598,49.4882"+       id="path4307-6-4-1"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cc"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-8-5-8"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031325"+       inkscape:transform-center-y="1.0154345"+       transform="matrix(6.5000628,0,0,6.5000628,-294.73624,-451.90091)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-90-4-3"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031336"+       inkscape:transform-center-y="1.0154592"+       transform="matrix(6.5000628,0,0,6.5000628,-295.77466,-477.61)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       sodipodi:type="arc"+       style="color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#656a73;stroke-width:0.1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="path3435-0-9-3-2-6"+       sodipodi:cx="159.59375"+       sodipodi:cy="396.15607"+       sodipodi:rx="0.8125"+       sodipodi:ry="0.8125"+       d="m 160.40625,396.15607 a 0.8125,0.8125 0 1 1 -1.625,0 0.8125,0.8125 0 1 1 1.625,0 z"+       inkscape:transform-center-x="-15.031346"+       inkscape:transform-center-y="1.0155053"+       transform="matrix(6.5000628,0,0,6.5000628,-296.18587,-501.11996)"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_simplify.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <rect+       inkscape:export-ydpi="319.88824"+       inkscape:export-xdpi="319.88824"+       inkscape:export-filename="/home/johan/birdfont/icons/scale_background.png"+       y="2202.7981"+       x="97.88858"+       height="27.222223"+       width="26.886265"+       id="rect4423-3-4-3"+       style="fill:none;stroke:#656a73;stroke-width:2.89435339;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+    <rect+       style="fill:none;stroke:#656a73;stroke-width:2.89435339;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       id="rect5580-6"+       width="52.754551"+       height="44.045647"+       x="97.822746"+       y="2186.0986"+       inkscape:export-filename="/home/johan/birdfont/icons/scale_background.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       style="fill:none;stroke:#656a73;stroke-width:3.61794162;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 247.20321,2204.2233 6.68491,-6.6849 -8.74182,-8.7418 33.03897,0 0,34.3245 -7.90621,-7.9063 -5.46364,5.7208 7.7275,7.9624 -33.95297,0.01 0,-32.6533 z"+       id="path4060-1-5-2"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="ccccccccccc"+       inkscape:export-filename="/home/johan/birdfont/icons/resize.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <rect+       style="opacity:0.71193417;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect5600-7"+       width="27.358919"+       height="29.638828"+       x="369.34305"+       y="2195.9314"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_resolution.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <rect+       style="opacity:0.71193417;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect5606-4"+       width="11.083484"+       height="11.371366"+       x="402.53723"+       y="2195.9004"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_resolution.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <rect+       style="opacity:0.71193417;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect5606-0-5"+       width="11.083484"+       height="11.371366"+       x="418.58652"+       y="2195.8284"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_resolution.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <rect+       style="opacity:0.71193417;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect5606-0-2-6"+       width="11.083484"+       height="11.371366"+       x="418.5867"+       y="2214.1089"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_resolution.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <rect+       style="opacity:0.71193417;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+       id="rect5606-0-7-4"+       width="11.083484"+       height="11.371366"+       x="402.46521"+       y="2214.2529"+       inkscape:export-filename="/home/johan/birdfont/icons/auto_trace_resolution.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <path+       style="fill:#000000;fill-opacity:0;stroke:#656a73;stroke-width:3.61794162;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 514.16522,2186.9006 -7.80119,8.1403 15.1501,14.3588 -15.1501,14.3587 7.80119,8.1404 15.48931,-14.6979 15.60238,14.6979 7.68812,-8.1404 -15.15018,-14.3587 15.15018,-14.3588 -7.68812,-8.1403 -15.60238,14.6979 -15.48931,-14.6979 z"+       id="rect3375-3-0"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/delete_background.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319" />+    <g+       id="g4386-2-0"+       transform="matrix(3.6179417,0,0,3.6179417,52.05176,1806.299)"+       style="stroke:#858585"+       inkscape:export-filename="/home/johan/birdfont/icons/union_paths.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824">+      <path+         inkscape:connector-curvature="0"+         id="path4325-1-4"+         d="m 24.121545,137.00393 c -2.790541,0 -5.0625,2.27196 -5.0625,5.0625 0,0.28366 0.04882,0.57283 0.09375,0.84375 -0.213093,-0.0254 -0.43631,-0.0312 -0.65625,-0.0312 -2.997324,0 -5.4375,2.44018 -5.4375,5.4375 0,2.99732 2.440176,5.40625 5.4375,5.40625 2.997324,0 5.4375,-2.40893 5.4375,-5.40625 0,-0.41889 -0.06642,-0.82711 -0.15625,-1.21875 0.111215,0.007 0.230685,0.0312 0.34375,0.0312 2.790541,0 5.0625,-2.27196 5.0625,-5.0625 0,-2.79054 -2.271959,-5.0625 -5.0625,-5.0625 z"+         style="fill:#e6e6e6;fill-opacity:1;stroke:#858585;stroke-width:0.80000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+      <path+         inkscape:connector-curvature="0"+         id="path4334-6-7"+         d="m 20.201005,143.05025 1.002199,0.26853"+         style="fill:none;stroke:#858585;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         style="fill:none;stroke:#858585;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+         d="m 23.149414,144.92095 0.334337,0.98221"+         id="path4338-5-9-6"+         inkscape:connector-curvature="0" />+      <path+         style="fill:none;stroke:#858585;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+         d="m 21.809082,143.65195 0.803947,0.65589"+         id="path4338-5-4-0-3"+         inkscape:connector-curvature="0" />+    </g>+    <path+       style="fill:#858585;stroke:#858585;stroke-width:0.74456871;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 373.19849,2310.5945 0,25.8167 67.34797,0 z"+       id="path4441-46-8"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/flip_vertical.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       inkscape:connector-curvature="0"+       id="path4443-7-7"+       d="m 374.14742,2369.0758 0,-25.0892 65.45011,0 z"+       style="fill:#ffffff;fill-opacity:1;stroke:#858585;stroke-width:3.61794162;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       inkscape:export-filename="/home/johan/birdfont/icons/flip_vertical.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       style="fill:#858585;stroke:#858585;stroke-width:0.75855565;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       d="m 500.79405,2370.2065 26.30163,0 0,-68.6131 z"+       id="path4441-4-2-4"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/flip_horizontal.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <path+       inkscape:connector-curvature="0"+       id="path4443-1-6-9"+       d="m 559.51775,2368.6251 -25.0892,0 0,-65.4502 z"+       style="fill:#ffffff;fill-opacity:1;stroke:#858585;stroke-width:3.61794162;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"+       inkscape:export-filename="/home/johan/birdfont/icons/flip_horizontal.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824" />+    <g+       id="g4487-4-6"+       transform="matrix(3.6179417,0,0,3.6179417,203.2788,2270.7045)"+       inkscape:export-filename="/home/johan/birdfont/icons/move_layer.png"+       inkscape:export-xdpi="319.88824"+       inkscape:export-ydpi="319.88824"+       style="fill:#858585;stroke:#858585">+      <path+         inkscape:connector-curvature="0"+         id="path4473-1-5"+         d="m 7.4681623,26.422633 21.7356957,0"+         style="fill:#858585;stroke:#858585;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         sodipodi:nodetypes="cc"+         inkscape:connector-curvature="0"+         id="path4477-6-4"+         d="m 17.224359,22.409889 11.645104,0"+         style="fill:#858585;stroke:#858585;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         sodipodi:nodetypes="cc"+         inkscape:connector-curvature="0"+         id="path4479-5-1"+         d="m 11.964066,11.524675 0.157635,8.263051"+         style="fill:#858585;stroke:#858585;stroke-width:1.20732284px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+      <path+         sodipodi:nodetypes="cccc"+         inkscape:connector-curvature="0"+         id="path4485-7-3"+         d="m 9.9685112,20.19145 1.9278198,3.339083 1.905931,-3.30117 z"+         style="fill:#858585;stroke:#858585;stroke-width:1.20732284px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />+    </g>+    <g+       transform="matrix(3.6179417,0,0,3.6179417,-957.56438,209.20856)"+       id="g5409-0"+       inkscape:export-filename="/home/johan/birdfont/icons/select_background.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <rect+         inkscape:export-ydpi="319.88824"+         inkscape:export-xdpi="319.88824"+         inkscape:export-filename="/home/johan/birdfont/icons/rectangle.png"+         y="546.9646"+         x="434.1958"+         height="11.286502"+         width="16.043371"+         id="rect4999-4-5-6"+         style="fill:none;stroke:#656a73;stroke-width:0.95943475;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+      <path+         transform="translate(-0.12464139,-1.620338)"+         d="m 453.04888,560.29639 c 0,1.12959 -0.91572,2.0453 -2.04531,2.0453 -1.12959,0 -2.0453,-0.91571 -2.0453,-2.0453 0,-1.12959 0.91571,-2.04531 2.0453,-2.04531 1.12959,0 2.04531,0.91572 2.04531,2.04531 z"+         sodipodi:ry="2.045305"+         sodipodi:rx="2.045305"+         sodipodi:cy="560.29639"+         sodipodi:cx="451.00357"+         id="path5389-3"+         style="opacity:0.98000004;color:#000000;fill:#656a73;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"+         sodipodi:type="arc" />+      <rect+         inkscape:export-ydpi="319.88824"+         inkscape:export-xdpi="319.88824"+         inkscape:export-filename="/home/johan/birdfont/icons/rectangle.png"+         y="544.76648"+         x="431.87128"+         height="15.457257"+         width="20.71269"+         id="rect4999-4-5-4-7"+         style="fill:none;stroke:none" />+    </g>+    <g+       transform="matrix(3.6179417,0,0,3.6179417,-957.56438,209.20856)"+       id="g4659-9"+       inkscape:export-filename="/home/johan/birdfont/icons/update_webview.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <rect+         inkscape:export-ydpi="319"+         inkscape:export-xdpi="319"+         inkscape:export-filename="/home/johan/birdfont/icons/update_webview.png"+         y="620.18311"+         x="293.9325"+         height="14.306025"+         width="17.010134"+         id="rect4069-4-3"+         style="fill:none" />+      <path+         sodipodi:nodetypes="csssc"+         inkscape:connector-curvature="0"+         id="path3285-9-2"+         d="m 297.53094,624.76453 c -0.10371,-3.07049 2.4101,-3.2344 4.43523,-3.24588 2.47727,-0.014 4.86105,0.23803 4.89497,5.42429 0.0279,4.27128 -1.03283,6.09448 -4.44235,6.09448 -2.66799,0 -5.38239,-0.32164 -4.78479,-5.55719"+         style="fill:none;stroke:#666a73;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+      <path+         sodipodi:nodetypes="ccc"+         inkscape:connector-curvature="0"+         id="path3289-3-6"+         d="m 295.16925,629.6155 2.33613,-2.69315 2.43223,2.7018"+         style="fill:none;stroke:#76787c;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />+    </g>+    <g+       id="g4154-3-6"+       style="fill:#858585;fill-opacity:1;stroke:#656a73;stroke-opacity:1"+       transform="matrix(3.6179417,0,0,3.6179417,71.474461,968.67592)"+       inkscape:export-filename="/home/johan/birdfont/icons/export_fonts.png"+       inkscape:export-xdpi="319"+       inkscape:export-ydpi="319">+      <g+         transform="translate(-3.690616,1.451615)"+         id="g4145-2-1"+         style="fill:#858585;fill-opacity:1;stroke:#656a73;stroke-opacity:1">+        <path+           sodipodi:nodetypes="cc"+           style="fill:#858585;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 51.12501,416.09675 12.128285,0"+           id="path4133-3-0"+           inkscape:connector-curvature="0" />+        <path+           style="fill:#858585;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 60.897902,412.86775 2.992578,3.56045"+           id="path4139-1-4"+           inkscape:connector-curvature="0"+           sodipodi:nodetypes="cc" />+        <path+           style="fill:#858585;fill-opacity:1;stroke:#656a73;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+           d="m 63.958333,415.90522 -3.078034,3.64394"+           id="path4143-9-5"+           inkscape:connector-curvature="0"+           sodipodi:nodetypes="cc" />+      </g>+    </g>+    <path+       style="fill:none;stroke:#656a73;stroke-width:2.84522533px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"+       d="m 393.39002,2464.5758 0,39.2628 37.15677,0 0,-52.3611 -26.1862,0 z"+       id="path4194-4-7"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cccccc"+       inkscape:export-filename="/home/johan/birdfont/icons/generate_html_document.png"+       inkscape:export-xdpi="320"+       inkscape:export-ydpi="320" />+    <path+       style="fill-opacity:1;stroke:#656a73;stroke-width:2.89435339;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.55251142;stroke-dasharray:none"+       d="m 394.51396,2466.8791 14.20158,0"+       id="path4233-7-0"+       inkscape:connector-curvature="0"+       inkscape:export-filename="/home/johan/birdfont/icons/generate_html_document.png"+       inkscape:export-xdpi="320"+       inkscape:export-ydpi="320" />+    <g+       style="font-size:8.32909298px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#656a73;fill-opacity:1;stroke:none;font-family:Big_Bottom_Cartoon_Hungarian;-inkscape-font-specification:Big_Bottom_Cartoon_Hungarian"+       id="text4226-5-2"+       transform="matrix(3.6179417,0,0,3.6179417,71.265562,959.14202)"+       inkscape:export-filename="/home/johan/birdfont/icons/generate_html_document.png"+       inkscape:export-xdpi="320"+       inkscape:export-ydpi="320">+      <path+         d="m 92.262767,417.02452 0.821522,0 0,2.48897 2.985134,0 0,-2.48897 0.821522,0 0,6.07195 -0.821522,0 0,-2.8916 -2.985134,0 0,2.8916 -0.821522,0 0,-6.07195"+         style="fill:#656a73;fill-opacity:1;font-family:BetecknaBirdfont;-inkscape-font-specification:BetecknaBirdfont"+         id="path4231-6-8"+         inkscape:connector-curvature="0" />+    </g>+    <path+       style="fill-opacity:1;stroke:#656a73;stroke-width:2.89435339;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.55251142;stroke-dasharray:none"+       d="m 406.9573,2465.7669 0.0472,-13.3088"+       id="path4238-0-2"+       inkscape:connector-curvature="0"+       sodipodi:nodetypes="cc"+       inkscape:export-filename="/home/johan/birdfont/icons/generate_html_document.png"+       inkscape:export-xdpi="320"+       inkscape:export-ydpi="320" />   </g> </svg>diff --git a/libbirdfont/Argument.vala b/libbirdfont/Argument.valaindex 8cc03e0..e41dbac 100644--- a/libbirdfont/Argument.vala+++ b/libbirdfont/Argument.vala@@ -71,7 +71,8 @@ public class Argument : GLib.Object { 				a == "--mac" || 				a == "--android" || 				a == "--log" ||-				a == "--no-ucd") {+				a == "--no-ucd" ||+				a == "--windows") { 				prev = a; 				i++; 				continue;@@ -209,6 +210,8 @@ public class Argument : GLib.Object { 				return "--android"; 			case 'l':  				return "--log";+			case 'w': +				return "--windows"; 		} 		 		return "";@@ -252,6 +255,7 @@ public class Argument : GLib.Object { 		print_padded ("-h, --help", t_("show this message")); 		print_padded ("-l, --log", t_("write a log file")); 		print_padded ("-m, --mac", t_("enable Machintosh customizations"));+		print_padded ("-w, --windows", t_("enable Windows customizations")); 		print_padded ("-n, --no-translation", t_("don't translate")); 		print_padded ("-s, --slow", t_("sleep between each command in test suite")); 		print_padded ("-t --test [TEST]", t_("run test case"));diff --git a/libbirdfont/BirdFont.vala b/libbirdfont/BirdFont.valaindex 9b5d4f0..0df3e2d 100644--- a/libbirdfont/BirdFont.vala+++ b/libbirdfont/BirdFont.vala@@ -442,7 +442,9 @@ public class BirdFont { 		experimental = args.has_argument ("--test"); 		show_coordinates = args.has_argument ("--show-coordinates") || experimental; 		fatal_wanings = args.has_argument ("--fatal-warning");-		win32 = (arg[0].index_of (".exe") > -1) || arg[0] == "wine";+		win32 = (arg[0].index_of (".exe") > -1) +			|| arg[0] == "wine"+			|| args.has_argument ("--windows");  #if MAC 		mac = true;@@ -495,6 +497,10 @@ public class BirdFont { 		} 	} +	public static Argument get_arguments () {+		return args;+	}+ 	void save_default_colors () { 		Theme.save_color ("Background 1", 1, 1, 1, 1); 		Theme.save_color ("Background 2", 101 / 255.0, 108 / 255.0, 116 / 255.0, 1);@@ -503,7 +509,7 @@ public class BirdFont { 		Theme.save_color ("Background 5", 0.3, 0.3, 0.3, 1); 		Theme.save_color ("Background 6", 224/255.0, 224/255.0, 224/255.0, 1); 		Theme.save_color ("Background 7", 56 / 255.0, 59 / 255.0, 65 / 255.0, 1);-		Theme.save_color ("Background 7", 55/255.0, 55/255.0, 55/255.0, 1);+		Theme.save_color ("Background 8", 55/255.0, 55/255.0, 55/255.0, 1); 		Theme.save_color ("Background 9", 72/255.0, 72/255.0, 72/255.0, 1); 		 		Theme.save_color ("Foreground 1", 0, 0, 0, 1);@@ -534,7 +540,9 @@ public class BirdFont {  		Theme.save_color ("Tool Border 4", 38 / 255.0, 39 / 255.0, 43 / 255.0, 1); 		Theme.save_color ("Tool Background 4", 33 / 255.0, 36 / 255.0, 39 / 255.0, 1);-			+		+		Theme.save_color ("Button Foreground", 101 / 255.0, 108 / 255.0, 116 / 255.0, 1);+		 		N_("Background 1"); 		N_("Background 2"); 		N_("Background 3");@@ -568,6 +576,8 @@ public class BirdFont { 		N_("Tool Background 3"); 		N_("Tool Border 4"); 		N_("Tool Background 4");+		+		N_("Button Foreground"); 	}  	public static void set_bundle_path (string path) {diff --git a/libbirdfont/CutBackgroundTool.vala b/libbirdfont/CutBackgroundTool.valaindex 4980ee7..ecbbf38 100644--- a/libbirdfont/CutBackgroundTool.vala+++ b/libbirdfont/CutBackgroundTool.vala@@ -135,11 +135,11 @@ public class CutBackgroundTool : Tool { 		return fmin (x1, x2) + 1 < x < fmax (x1, x2) - 1 && fmin (y1, y2) + 1 < y < fmax (y1, y2) - 1; 	} -	double get_width () {+	public override double get_width () { 		return fabs (x1 - x2); 	} -	double get_height () {+	public override double get_height () { 		return fabs (y1 - y2); 	} diff --git a/libbirdfont/Expander.vala b/libbirdfont/Expander.valaindex a337e69..17d335f 100644--- a/libbirdfont/Expander.vala+++ b/libbirdfont/Expander.vala@@ -232,6 +232,7 @@ public class Expander : GLib.Object { 			if (headline != null) { 				title = new Text (); 				title.set_text ((!) headline);+				title.use_cache (true); // FIXME: shapen text 				Theme.text_color (title, "Foreground 2"); 				title.set_font_size (17 * Toolbox.get_scale ()); 				title.draw_at_baseline (cr, x, yt + HEADLINE_MARGIN + 13  * Toolbox.get_scale ());diff --git a/libbirdfont/FileDialogTab.vala b/libbirdfont/FileDialogTab.valaindex d356314..ef9c640 100644--- a/libbirdfont/FileDialogTab.vala+++ b/libbirdfont/FileDialogTab.vala@@ -1,5 +1,5 @@ /*-    Copyright (C) 2014 Johan Mattsson+    Copyright (C) 2014 2015 Johan Mattsson      This library is free software; you can redistribute it and/or modify      it under the terms of the GNU Lesser General Public License as @@ -137,11 +137,11 @@ public class FileDialogTab : FontDisplay { 			} 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 			 	public override void draw (WidgetAllocation allocation, Context cr) {-		double y = 20 * MainWindow.units;+		double y = 75 * MainWindow.units; 		int s = 0; 		bool color = (scroll % 2) == 0; 		@@ -202,9 +202,16 @@ public class FileDialogTab : FontDisplay { 				cr.rectangle (0, y - 14 * MainWindow.units, allocation.width, 18 * MainWindow.units); 				cr.fill (); 				cr.restore ();+			} else {+				cr.save ();+				Theme.color (cr, "Background 1");+				cr.rectangle (0, y - 14 * MainWindow.units, allocation.width, 18 * MainWindow.units);+				cr.fill ();+				cr.restore (); 			} 		} 		+		// text 		cr.save (); 		if (dark) { 			Theme.color (cr, "Background 1");@@ -218,7 +225,7 @@ public class FileDialogTab : FontDisplay {  	public override void button_release (int button, double ex, double ey) { 		int s = 0;-		double y = 0;+		double y = 75 * MainWindow.units - 20 * MainWindow.units; 		string selected; 		bool dir = false; 		File f;@@ -248,6 +255,7 @@ public class FileDialogTab : FontDisplay { 		 		if (button == 1) { 			if (!dir) {+				selected_filename = selected; 				show_text_area (selected); 			} else { 				if (selected == "..") {@@ -268,6 +276,22 @@ public class FileDialogTab : FontDisplay { 		redraw_area (0, 0, allocation.width, allocation.height); 	} +	public override void double_click (uint button, double ex, double ey) {	+		File f;++		button_release ((int) button, ex, ey);++		if (is_null (selected_filename)) {+			warning ("No file.");+			return;+		}+		+		if (selected_filename != "") {+			f = get_child (current_dir, selected_filename);+			action.file_selected ((!)f.get_path ());+		}+	}+ 	public override string get_label () { 		return title; 	}@@ -281,14 +305,14 @@ public class FileDialogTab : FontDisplay { 	} 	 	public override void scroll_wheel_down (double x, double y) {-		int nfiles = files.size + directories.size;+		double rows = 4.16 + files.size + directories.size; 		scroll += 3; -		if (scroll > nfiles - visible_rows) {-			scroll = (int) (nfiles - visible_rows);+		if (scroll > rows - visible_rows) {+			scroll = (int) (rows - visible_rows); 		} 		-		if (visible_rows > nfiles) {+		if (visible_rows > rows) { 			scroll = 0; 		}  		@@ -308,19 +332,19 @@ public class FileDialogTab : FontDisplay { 	} 	 	public override void update_scrollbar () {-		uint rows = files.size + directories.size;+		double rows = 4.16 + files.size + directories.size; // 4.16 rows under the text input  		if (rows == 0 || visible_rows == 0) { 			MainWindow.set_scrollbar_size (0); 			MainWindow.set_scrollbar_position (0); 		} else {-			MainWindow.set_scrollbar_size ((double) visible_rows / rows);-			MainWindow.set_scrollbar_position ((double) scroll /  rows);+			MainWindow.set_scrollbar_size (visible_rows / rows);+			MainWindow.set_scrollbar_position (scroll /  rows); 		} 	}  	public override void scroll_to (double percent) {-		uint rows = files.size + directories.size;+		double rows = 4.16 + files.size + directories.size; 		scroll = (int) (percent * rows); 		 		if (scroll > rows - visible_rows) {diff --git a/libbirdfont/FontName.vala b/libbirdfont/FontName.valaindex 3e42b26..a03e372 100644--- a/libbirdfont/FontName.vala+++ b/libbirdfont/FontName.vala@@ -18,8 +18,8 @@ namespace BirdFont {  public class FontName : Tool { -	public FontName (string? name = null, string tip = "", unichar key = '\0', uint modifier_flag = 0) {-		base (null , tip, key, modifier_flag);+	public FontName (string? name = null, string tip = "") {+		base (null , tip);  		if (name != null) { 			base.name = (!) name;diff --git a/libbirdfont/Glyph.vala b/libbirdfont/Glyph.valaindex bf4d454..901f7bf 100644--- a/libbirdfont/Glyph.vala+++ b/libbirdfont/Glyph.vala@@ -389,6 +389,8 @@ public class Glyph : FontDisplay { 	} 	 	void update_zoom_bar () {+		return_if_fail (!is_null (Toolbox.drawing_tools));+		return_if_fail (!is_null (Toolbox.drawing_tools.zoom_bar)); 		Toolbox.drawing_tools.zoom_bar.set_zoom ((view_zoom - 1) / 20); 	} 	@@ -2142,11 +2144,11 @@ public class Glyph : FontDisplay { 			 			BirdFont.get_current_font ().custom_guides.add (guide); 			-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			GlyphCanvas.redraw (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} } diff --git a/libbirdfont/KerningDisplay.vala b/libbirdfont/KerningDisplay.valaindex 542f3dd..d1e46aa 100644--- a/libbirdfont/KerningDisplay.vala+++ b/libbirdfont/KerningDisplay.vala@@ -638,7 +638,7 @@ public class KerningDisplay : FontDisplay { 		 		listener.signal_submit.connect (() => { 			unichar c;-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			 			text_input = false; 			suppress_input = false;@@ -653,7 +653,7 @@ public class KerningDisplay : FontDisplay { 		 		suppress_input = true; 		text_input = true;-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public void new_line () {@@ -836,14 +836,14 @@ public class KerningDisplay : FontDisplay { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			text_input = false; 			suppress_input = false; 		}); 		 		suppress_input = true; 		text_input = true;-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 		 		GlyphCanvas.redraw (); 	}diff --git a/libbirdfont/KerningRange.vala b/libbirdfont/KerningRange.valaindex ff58ce5..0bf11c9 100644--- a/libbirdfont/KerningRange.vala+++ b/libbirdfont/KerningRange.vala@@ -23,8 +23,8 @@ public class KerningRange : Tool { 	public GlyphRange glyph_range;  	bool malformed = false; 	-	public KerningRange (string? name = null, string tip = "", unichar key = '\0', uint modifier_flag = 0) {-		base (null , tip, key, modifier_flag);+	public KerningRange (string? name = null, string tip = "") {+		base (null , tip); 		glyph_range = new GlyphRange ();  		 		if (name != null) {@@ -108,7 +108,7 @@ public class KerningRange : Tool { 		 		listener.signal_submit.connect (() => { 			MainWindow.get_kerning_display ().suppress_input = false;-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			 			// remove all empty classes 			if (ranges == "") {@@ -119,7 +119,7 @@ public class KerningRange : Tool { 		 		kerning_display.suppress_input = true; 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public override void draw (Context cr) {diff --git a/libbirdfont/LigatureList.vala b/libbirdfont/LigatureList.valaindex 9200bc7..42b4558 100644--- a/libbirdfont/LigatureList.vala+++ b/libbirdfont/LigatureList.vala@@ -49,11 +49,11 @@ public class LigatureList : Table { 		 		if (row.get_index () == NEW_LIGATURE && column == 0) { 			add_ligature (t_("character sequence"), t_("ligature"));-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 		} else if (row.get_index () == NEW_LIGATURE && column == 1) { 			if (BirdFont.has_argument ("--test")) { 				add_contextual_ligature (t_("beginning"), t_("middle"), t_("end"));-				MainWindow.native_window.hide_text_input ();+				TabContent.hide_text_input (); 			} 		} else if (row.has_row_data ()) { 			i = row.get_index ();@@ -71,7 +71,7 @@ public class LigatureList : Table { 				if (delete_button) { 					return_if_fail (0 <= row.get_index () < ligatures.count ()); 					ligatures.remove_at (row.get_index ());-					MainWindow.native_window.hide_text_input ();+					TabContent.hide_text_input (); 				} else if (column == 0) { 					return_if_fail (0 <= row.get_index () < ligatures.count ()); 					ligatures.set_ligature (row.get_index ());@@ -86,7 +86,7 @@ public class LigatureList : Table { 				return_if_fail (0 <= i < ligatures.count_contextual_ligatures ()); 				if (delete_button) { 					ligatures.remove_contextual_ligatures_at (i);-					MainWindow.native_window.hide_text_input ();+					TabContent.hide_text_input (); 				} else if (column == 0) { 					ligatures.set_beginning (i); 				} else if (column == 1) {diff --git a/libbirdfont/Ligatures.vala b/libbirdfont/Ligatures.valaindex a475daa..6bbd206 100644--- a/libbirdfont/Ligatures.vala+++ b/libbirdfont/Ligatures.vala@@ -113,11 +113,11 @@ public class Ligatures : GLib.Object { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_ligature_display ().update_rows (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);			+		TabContent.show_text_input (listener);			 	} 	 	public void set_middle (int index) {@@ -134,11 +134,11 @@ public class Ligatures : GLib.Object { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_ligature_display ().update_rows (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);		+		TabContent.show_text_input (listener);		 	}  	public void set_end (int index) {@@ -155,11 +155,11 @@ public class Ligatures : GLib.Object { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_ligature_display ().update_rows (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);			+		TabContent.show_text_input (listener);			 	} 				 	public void set_ligature (int index) {diff --git a/libbirdfont/Line.vala b/libbirdfont/Line.valaindex edc10fa..3b83885 100644--- a/libbirdfont/Line.vala+++ b/libbirdfont/Line.vala@@ -151,10 +151,10 @@ public class Line : GLib.Object { 				}); 				 				listener.signal_submit.connect (() => {-					MainWindow.native_window.hide_text_input ();+					TabContent.hide_text_input (); 				}); 				-				MainWindow.native_window.set_text_listener (listener);+				TabContent.show_text_input (listener); 			} else { 				move = true; 			}diff --git a/libbirdfont/MainWindow.vala b/libbirdfont/MainWindow.valaindex 41053ad..195858b 100644--- a/libbirdfont/MainWindow.vala+++ b/libbirdfont/MainWindow.vala@@ -205,16 +205,16 @@ public class MainWindow : GLib.Object { 			GlyphCanvas.redraw ();
 		});
 		listener.signal_submit.connect (() => {
-			MainWindow.native_window.hide_text_input ();
+			TabContent.hide_text_input ();
 		});
-		native_window.set_text_listener (listener);
+		TabContent.show_text_input (listener);
 	}
 	
 	public static MainWindow get_singleton () {
 		return singleton;
 	}
 	
-	public static void file_chooser (string title, FileChooser fc, uint flags) {
+	public static void file_chooser (string title, FileChooser fc, uint flags) {		
 		MainWindow.native_window.file_chooser (title, fc, flags);
 	}
 	
diff --git a/libbirdfont/MenuTab.vala b/libbirdfont/MenuTab.valaindex 416b986..b73aa34 100644--- a/libbirdfont/MenuTab.vala+++ b/libbirdfont/MenuTab.vala@@ -266,7 +266,7 @@ public class MenuTab : FontDisplay { 			return; 		} -		MainWindow.native_window.hide_text_input ();+		TabContent.hide_text_input ();  		SaveDialogListener dialog = new SaveDialogListener (); 		Font font = BirdFont.get_current_font ();@@ -553,11 +553,11 @@ public class MenuTab : FontDisplay { 			o.display_all_available_glyphs (); 			o.scroll_to_glyph (ligature_name); 			-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			show_all_available_characters (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public static void show_default_characters () {diff --git a/libbirdfont/NativeWindow.vala b/libbirdfont/NativeWindow.valaindex 28ef381..51ae6cf 100644--- a/libbirdfont/NativeWindow.vala+++ b/libbirdfont/NativeWindow.vala@@ -27,12 +27,6 @@ public interface NativeWindow : GLib.Object {  	public abstract void set_scrollbar_size (double size); 	public abstract void set_scrollbar_position (double position);-	-	/** Request text input from the UI. */-	public abstract void set_text_listener (TextListener listener);-	-	/** Remove the text listener and hode the text area. */-	public abstract void hide_text_input ();  	/** Show overwrite dialog */ 	public abstract void set_overwrite_dialog (OverWriteDialogListener dialog);diff --git a/libbirdfont/OpenFontFormat/Ligature.vala b/libbirdfont/OpenFontFormat/Ligature.valaindex 83961d9..af91ccf 100644--- a/libbirdfont/OpenFontFormat/Ligature.vala+++ b/libbirdfont/OpenFontFormat/Ligature.vala@@ -37,11 +37,11 @@ public class Ligature : GLib.Object { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_ligature_display ().update_rows (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public void set_substitution (ContextualLigature? clig = null) {@@ -62,11 +62,11 @@ public class Ligature : GLib.Object { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_ligature_display ().update_rows (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} } diff --git a/libbirdfont/OverView.vala b/libbirdfont/OverView.valaindex 4df4b78..8f942c1 100644--- a/libbirdfont/OverView.vala+++ b/libbirdfont/OverView.vala@@ -172,11 +172,11 @@ public class OverView : FontDisplay { 			OverView o = MainWindow.get_overview (); 			GlyphRange r = CharDatabase.search (o.search_query); 			o.set_glyph_range (r);-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			MainWindow.get_tab_bar ().select_tab_name ("Overview"); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public Glyph? get_current_glyph () {diff --git a/libbirdfont/Renderer/FontCache.vala b/libbirdfont/Renderer/FontCache.valaindex 7158029..d5f90e5 100644--- a/libbirdfont/Renderer/FontCache.vala+++ b/libbirdfont/Renderer/FontCache.vala@@ -12,18 +12,17 @@     Lesser General Public License for more details. */ +using Gee;+ namespace BirdFont {  /** Thread specific font cache. */	-public class FontCache {-	Font? font;-	string file_name;-	+public class FontCache {	 	static FontCache? default_cache = null;+	Gee.HashMap<string, Font> fonts; 	 	public FontCache () {-		font = null;-		file_name = "";+		fonts = new Gee.HashMap<string, Font> (); 	} 	 	public Font? get_font (string file_name) {@@ -35,21 +34,22 @@ public class FontCache { 			return null; 		} 		-		if (this.file_name != file_name) {-			f = new Font ();-			this.file_name = file_name;-			-			f.set_file (file_name);-			ok = f.load ();-			if (!ok) {-				stderr.printf ("Can't load %s\n", file_name);-				return null;-			}-			-			font = f;+		if (fonts.has_key (file_name)) {+			return fonts.get (file_name);+		}+		+		print (@"LOAD FONT $file_name\n");+		f = new Font ();+		f.set_file (file_name);+		ok = f.load ();+		if (!ok) {+			stderr.printf ("Can't load %s\n", file_name);+			return null; 		} 		-		return font;+		fonts.set (file_name, f);+		+		return f; 	} 	 	public static FontCache get_default_cache () {diff --git a/libbirdfont/Renderer/LineTextArea.vala b/libbirdfont/Renderer/LineTextArea.valaindex 15c7221..b1ad1c6 100644--- a/libbirdfont/Renderer/LineTextArea.vala+++ b/libbirdfont/Renderer/LineTextArea.vala@@ -21,9 +21,11 @@ public class LineTextArea : TextArea {  	public LineTextArea (double size) { 		base (size);+		 		single_line = true; 		min_height = size; 		height = min_height;+		 		layout (); 	} }diff --git a/libbirdfont/Renderer/Text.vala b/libbirdfont/Renderer/Text.valaindex 8012824..0f5a151 100644--- a/libbirdfont/Renderer/Text.vala+++ b/libbirdfont/Renderer/Text.vala@@ -1,5 +1,5 @@ /*-    Copyright (C) 2014 Johan Mattsson+    Copyright (C) 2014 2015 Johan Mattsson      This library is free software; you can redistribute it and/or modify      it under the terms of the GNU Lesser General Public License as @@ -61,7 +61,9 @@ public class Text : Widget { 	double g = 0; 	double b = 0; 	double a = 1;-			+	+	bool use_cached_glyphs = true;+		 	public Text (string text = "", double size = 17, double margin_bottom = 0) { 		current_font = null; 		this.margin_bottom = margin_bottom;@@ -71,16 +73,35 @@ public class Text : Widget { 		set_text (text); 	} +	public void use_cache (bool cache) {+		use_cached_glyphs = cache;+	}+ 	public static void load_default_font () { 		if (get_default_font () == null) { 			warning ("Default font not found."); 		} 	} 	+	/** Set font for this text area.+	 * @param font_absolute path to the font file or a file name for one of the font files in search paths.+	 * @return true if the font was found+	 */+	public bool load_font (string font_file) {+		File path;+		File f;+		+		f = File.new_for_path (font_file);+		path = (f.query_exists ()) ? f : SearchPaths.find_file (null, font_file);+		+		current_font = FontCache.get_default_cache ().get_font ((!) path.get_path ());+		return current_font != null;+	}+ 	public static Font? get_default_font () { 		File path = SearchPaths.find_file (null, "roboto.bf"); 		return FontCache.get_default_cache ().get_font ((!) path.get_path ());-	}+	}	  	public void set_font_size (double height_in_pixels) { 		font_size = height_in_pixels;@@ -289,16 +310,6 @@ public class Text : Widget { 		decender = font.base_line * ratio - min_y * ratio; 		return decender > 0 ? decender : 0;  	}		--	public bool load_font (string file) {-		Font? f = font_cache.get_font (file);-		-		if (f != null) {-			font = (!) f;-		}-		-		return f != null;-	} 	 	public override void draw (Context cr) { 		double y = widget_y + get_height () + get_scale () * (font.bottom_limit + font.base_line);@@ -340,38 +351,71 @@ public class Text : Widget {  		y = py; 		x = px;-					-		iterate ((glyph, kerning, last) => {-			double lsb;-			Surface cache;-			Context cc;-			-			if (unlikely (!glyph.has_cache (cache_id))) {-				cache = new Surface.similar (cr.get_target (), Cairo.Content.COLOR_ALPHA, (int) (glyph.get_width () * ratio) + 1, (int) font_size + 1);-				cc = new Context (cache);-				-				lsb = glyph.left_limit; -				cc.save ();-				cc.set_source_rgba (r, g, b, a);-				cc.new_path ();+		if (use_cached_glyphs) { // FIXME:+			iterate ((glyph, kerning, last) => {+				x += kerning * ratio;+				draw_chached (cr ,glyph, kerning, last, x, y, cc_y, cache_id, ratio);+				x += glyph.get_width () * ratio;+			});+		} else {+			iterate ((glyph, kerning, last) => {+				x += kerning * ratio;+				draw_without_cache (cr, glyph, kerning, last, x, y, cc_y, cache_id, ratio);+				x += glyph.get_width () * ratio;+			});+		}+	}+	+	void draw_without_cache (Context cr, Glyph glyph, double kerning, bool last, +		double x, double y, double cc_y, int64 cache_id, double ratio) {+	+		double lsb;+		+		cr.save ();+		cr.set_source_rgba (r, g, b, a);+		cr.new_path ();++		lsb = glyph.left_limit; -				foreach (Path path in glyph.path_list) {-					draw_path (cc, path, lsb, 0, cc_y, ratio);-				}-				-				cc.fill ();-				cc.restore ();+		foreach (Path path in glyph.path_list) {+			draw_path (cr, path, lsb, x, y, ratio);+		} -				glyph.set_cache (cache_id, cache);-			}+		cr.fill ();+		cr.restore ();+		+	}+	+	void draw_chached (Context cr, Glyph glyph, double kerning, bool last, +		double x, double y, double cc_y,int64 cache_id, double ratio) {+		+		double lsb;+		Surface cache;+		Context cc;+		+		if (unlikely (!glyph.has_cache (cache_id))) {+			cache = new Surface.similar (cr.get_target (), Cairo.Content.COLOR_ALPHA, (int) (glyph.get_width () * ratio) + 1, (int) font_size + 1);+			cc = new Context (cache);+			+			lsb = glyph.left_limit;++			cc.save ();+			cc.set_source_rgba (r, g, b, a);+			cc.new_path (); -			x += kerning * ratio;-			cr.set_source_surface (glyph.get_cache (cache_id), x, y - cc_y);-			x += glyph.get_width () * ratio;+			foreach (Path path in glyph.path_list) {+				draw_path (cc, path, lsb, 0, cc_y, ratio);+			} 			-			cr.paint ();-		});+			cc.fill ();+			cc.restore ();++			glyph.set_cache (cache_id, cache);+		}++		cr.set_source_surface (glyph.get_cache (cache_id), x, y - cc_y);		+		cr.paint (); 	} 	 	void draw_path (Context cr, Path path, double lsb, double x, double y, double scale) {diff --git a/libbirdfont/Renderer/TextArea.vala b/libbirdfont/Renderer/TextArea.valaindex 8d13f69..1de3a7b 100644--- a/libbirdfont/Renderer/TextArea.vala+++ b/libbirdfont/Renderer/TextArea.vala@@ -48,6 +48,7 @@ public class TextArea : Widget { 	 	public signal void scroll (double pixels); 	public signal void text_changed (string text);+	public signal void enter (string text); 	 	Gee.ArrayList<Paragraph> paragraphs = new Gee.ArrayList<Paragraph>  (); 	private static const int DONE = -2; @@ -205,6 +206,10 @@ public class TextArea : Widget { 			case Key.ENTER: 				store_undo_edit_state (); 				insert_text ("\n");+				+				if (single_line) {+					enter (get_text ());+				} 				break; 			case Key.DEL: 				if (has_selection ()) {@@ -740,7 +745,7 @@ public class TextArea : Widget { 				if (paragraph.start_y + widget_y - font_size <= click_y <= paragraph.end_y + widget_y + font_size) {  					foreach (Text next_word in paragraph.words) { 						double tt_click = click_y - widget_y - padding + font_size; //  - next_word.get_baseline_to_bottom (); //- font_size + next_word.get_baseline_to_bottom ();-						+ 						w = next_word.text; 						if (next_word.widget_y <= tt_click <= next_word.widget_y + font_size) { 							Theme.text_color (next_word, "Foreground 1");@@ -760,6 +765,7 @@ public class TextArea : Widget { 									string gc = (!) glyph.get_unichar ().to_string (); 									 									d = Math.fabs (click_x - tx);+									 									if (d <= min_d) { 										min_d = d; 										c.character_index = ch_index;@@ -825,11 +831,7 @@ public class TextArea : Widget { 		 		tx = 0; 		ty = font_size;--		if (unlikely (allocation.height == 0)) {-			warning ("Allocation is not set.");-		}-+		 		for (i = paragraphs.size - 1; i >= 0 && paragraphs.size > 1; i--) { 			if (unlikely (paragraphs.get (i).is_empty ())) { 				warning ("Empty paragraph.");@@ -1564,8 +1566,13 @@ public class TextArea : Widget { 		public int paragraph = 0; 		 		public int character_index {-			get { return ci; }-			set { if (value == 0) b(); ci = value; }+			get { +				return ci;+			}+			+			set { +				ci = value;+			} 		} 		 		private int ci = 0;@@ -1573,9 +1580,6 @@ public class TextArea : Widget { 		public double desired_x = 0; 		public double desired_y = 0; 		-		public void b () {-		}-		 		public Carret () { 		} 		diff --git a/libbirdfont/SpacingClass.vala b/libbirdfont/SpacingClass.valaindex 9b92826..2d14010 100644--- a/libbirdfont/SpacingClass.vala+++ b/libbirdfont/SpacingClass.vala@@ -61,10 +61,10 @@ public class SpacingClass : GLib.Object  { 		}); 		 		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 		}); 		-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} } diff --git a/libbirdfont/SpacingClassTab.vala b/libbirdfont/SpacingClassTab.valaindex 8fd5889..b4ac14a 100644--- a/libbirdfont/SpacingClassTab.vala+++ b/libbirdfont/SpacingClassTab.vala@@ -34,7 +34,7 @@ public class SpacingClassTab : Table { 		 		if (row.get_index () == -1) { 			spacing.add_class ("?", "?");-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			update_rows (); 			update_scrollbar (); 			font.touch ();@@ -42,7 +42,7 @@ public class SpacingClassTab : Table { 			if (delete_button) { 				return_if_fail (0 <= row.get_index () < spacing.classes.size); 				spacing.classes.remove_at (row.get_index ());-				MainWindow.native_window.hide_text_input ();+				TabContent.hide_text_input (); 				update_rows (); 				update_scrollbar (); 				font.touch ();diff --git a/libbirdfont/SpacingTab.vala b/libbirdfont/SpacingTab.valaindex f60a312..f723b4b 100644--- a/libbirdfont/SpacingTab.vala+++ b/libbirdfont/SpacingTab.vala@@ -219,7 +219,7 @@ public class SpacingTab : KerningDisplay { 		 		listener.signal_submit.connect (() => { 			double v;-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			 			text_input = false; 			suppress_input = false;@@ -230,7 +230,7 @@ public class SpacingTab : KerningDisplay { 		 		suppress_input = true; 		text_input = true;-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	void update_rsb (Glyph? g) {@@ -256,7 +256,7 @@ public class SpacingTab : KerningDisplay { 		 		listener.signal_submit.connect (() => { 			double v;-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			 			text_input = false; 			suppress_input = false;@@ -267,7 +267,7 @@ public class SpacingTab : KerningDisplay { 		 		suppress_input = true; 		text_input = true;-		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} } diff --git a/libbirdfont/SpinButton.vala b/libbirdfont/SpinButton.valaindex a66cc46..519c713 100644--- a/libbirdfont/SpinButton.vala+++ b/libbirdfont/SpinButton.vala@@ -42,8 +42,8 @@ public class SpinButton : Tool { 	bool waiting_for_icon_switch = false; 	bool show_icon_tool_icon = false; 	-	public SpinButton (string? name = null, string tip = "", unichar key = '\0', uint modifier_flag = 0) {-		base (null , tip, key, modifier_flag);+	public SpinButton (string? name = null, string tip = "") {+		base (null , tip); 		 		if (name != null) { 			base.name = (!) name;@@ -202,11 +202,11 @@ public class SpinButton : Tool { 		});  		listener.signal_submit.connect (() => {-			MainWindow.native_window.hide_text_input ();+			TabContent.hide_text_input (); 			redraw (); 		}); -		MainWindow.native_window.set_text_listener (listener);+		TabContent.show_text_input (listener); 	} 	 	public void set_max (double max) {diff --git a/libbirdfont/TabBar.vala b/libbirdfont/TabBar.valaindex 57b6f71..2a5bf29 100644--- a/libbirdfont/TabBar.vala+++ b/libbirdfont/TabBar.vala@@ -411,7 +411,7 @@ public class TabBar : GLib.Object { 		} 					 		// always close any pending text input if the user switches tab-		MainWindow.native_window.hide_text_input ();+		TabContent.hide_text_input ();  		if (index == SHOW_MENU) { 			MainWindow.get_menu ().show_menu = !MainWindow.get_menu ().show_menu;@@ -775,6 +775,7 @@ public class TabBar : GLib.Object { 			 			// tab label 			label = new Text ();+			label.use_cache (false); 			label.set_text (t.get_label ()); 			text_height = 16 / scale; 			label.set_font_size (text_height);diff --git a/libbirdfont/TabContent.vala b/libbirdfont/TabContent.valaindex 44783a0..66ae6ff 100644--- a/libbirdfont/TabContent.vala+++ b/libbirdfont/TabContent.vala@@ -1,5 +1,5 @@ /*-    Copyright (C) 2014 Johan Mattsson+    Copyright (C) 2014 2015 Johan Mattsson      This library is free software; you can redistribute it and/or modify      it under the terms of the GNU Lesser General Public License as @@ -19,6 +19,11 @@ namespace BirdFont { /** Interface for events from native window to the current tab. */ public class TabContent : GLib.Object { +	static Text text_input_label;+	static LineTextArea text_input;+	static Button text_input_button;+	static bool text_input_visible = false;+ 	public static void zoom_in () { 		if (MenuTab.suppress_event) { 		}@@ -89,6 +94,10 @@ public class TabContent : GLib.Object { 				GlyphCanvas.current_display.update_scrollbar (); 				FontDisplay.dirty_scrollbar = false; 			}+			+			if (text_input_visible) {+				draw_text_input (allocation, cr);+			} 		} 	} 	@@ -99,17 +108,24 @@ public class TabContent : GLib.Object { 		 		KeyBindings.add_modifier_from_keyval (keyval); 		-		MainWindow.get_menu ().process_key_binding_events (keyval);-		GlyphCanvas.current_display.key_press (keyval);+		if (!text_input_visible) {+			MainWindow.get_menu ().process_key_binding_events (keyval);+			GlyphCanvas.current_display.key_press (keyval);+		} else {+			text_input.key_press (keyval);+		} 	} 	 	public static void key_release (uint keyval) { 		if (MenuTab.suppress_event) { 			return; 		}-		-		GlyphCanvas.current_display.key_release (keyval);+ 		KeyBindings.remove_modifier_from_keyval (keyval);++		if (!text_input_visible) {+			GlyphCanvas.current_display.key_release (keyval);+		} 	} 	 	public static void motion_notify (double x, double y) {@@ -117,7 +133,12 @@ public class TabContent : GLib.Object { 			return; 		} 		-		GlyphCanvas.current_display.motion_notify (x, y);+		if (!text_input_visible) {+			GlyphCanvas.current_display.motion_notify (x, y);+		} else {+			text_input.motion (x, y);+			GlyphCanvas.redraw ();+		} 	} 	 	public static void button_release (int button, double x, double y) {@@ -129,6 +150,10 @@ public class TabContent : GLib.Object { 			MainWindow.get_menu ().button_release (button, x, y); 		} else { 			GlyphCanvas.current_display.button_release (button, x, y);+			+			if (text_input_visible) {+				text_input.button_release (button, x, y);+			} 		} 	} 	@@ -141,6 +166,11 @@ public class TabContent : GLib.Object { 			MainWindow.get_dialog ().button_press (button, x, y); 		} else if (!MainWindow.get_menu ().show_menu) { 			GlyphCanvas.current_display.button_press (button, x, y);+			+			if (text_input_visible) {+				text_input.button_press (button, x, y);+				text_input_button.button_press (button, x, y);+			} 		} 	} @@ -245,6 +275,66 @@ public class TabContent : GLib.Object { 		 		return uri; 	}+	+	public static void draw_text_input (WidgetAllocation allocation, Context cr) {+		cr.save ();+		Theme.color (cr, "Background 4");+		cr.rectangle (0, 0, allocation.width, 51);+		cr.fill ();+		cr.restore ();+		+		Theme.text_color (text_input_label, "Background 1");+		+		text_input_label.widget_x = 10;+		text_input_label.widget_y = 17;++		text_input.allocation = allocation;+		text_input.layout ();+		text_input.widget_x = text_input_label.get_extent () + 20;+		text_input.widget_y = 10;+		text_input.width = allocation.width +			- text_input_button.get_width () +			- text_input_label.get_extent ()+			- 40;+		+		text_input_button.allocation = allocation;+		text_input_button.widget_x = text_input.widget_x + text_input.width + 10;+		text_input_button.widget_y = 10;++		text_input_label.draw (cr);+		text_input.draw (cr);+		text_input_button.draw (cr);+	}+	+	public static void show_text_input (TextListener tl) {+		text_input_label = new Text (tl.label);+		text_input = new LineTextArea (20 * MainWindow.units);+		text_input_button = new Button (tl.button_label);+		+		text_input.carret_is_visible = true;+		+		text_input.set_text (tl.default_text);+		text_input.text_changed.connect ((text) => {+			tl.signal_text_input (text);+		});+		+		text_input.enter.connect ((text) => {+			tl.signal_submit (text);+			text_input_visible = false;+			GlyphCanvas.redraw ();+		});+		+		text_input_button.action.connect (() => {+			tl.signal_submit (text_input.get_text ());+		});+		+		text_input_visible = true;+		GlyphCanvas.redraw ();+	}+	+	public static void hide_text_input () {+		text_input_visible = false;+	} }  }diff --git a/libbirdfont/Tool.vala b/libbirdfont/Tool.valaindex cec3e11..20a3391 100644--- a/libbirdfont/Tool.vala+++ b/libbirdfont/Tool.vala@@ -28,6 +28,7 @@ public class Tool : Widget { 	public bool active = false; 	public bool selected = false; 	+	Text icon_font; 	ImageSurface? icon = null; 		 	public signal void select_action (Tool selected);@@ -80,18 +81,17 @@ public class Tool : Widget { 	bool visible = true; 	 	/** Create tool with a certain name and load icon "name".png */-	public Tool (string? name = null, string tip = "", unichar key = '\0', uint modifier_flag = 0) {+	public Tool (string? name = null, string tip = "") { 		this.tip = tip; 		+		icon_font = new Text ();+		 		scale = w / 111.0; // scale to 320 dpi 		 		if (name != null) { 			set_icon ((!) name); 			this.name = (!) name; 		}-		-		this.key = key;-		this.modifier_flag = modifier_flag; 				 		id = next_id; 		next_id++;@@ -179,10 +179,16 @@ public class Tool : Widget { 	} 	 	public void set_icon (string name) {-		StringBuilder n = new StringBuilder ();-		n.append (name);-		n.append (".png");-		icon = Icons.get_icon (n.str);+		bool found;+		+		icon_font = new Text ((!) name);+		found = icon_font.load_font ("icons.bf");+		icon_font.use_cache (true);+		icon_font.set_font_size (35);+		+		if (!found) {+			warning ("Icon font for toolbox was not found.");+		} 	} 	 	public bool is_active () {@@ -243,16 +249,9 @@ public class Tool : Widget { 		string background = "Tool Border 3"; 		 		cr.save ();-		-		if (unlikely (scale == 0)) {-			warning ("Scale is zero.");-			scale = 33 / 111.0;-		}-		-		cr.scale (scale, scale);-		-		bgx = xt / scale;-		bgy = yt / scale;+			+		bgx = xt;+		bgy = yt;  		// Button in four states 		if (selected) {@@ -276,27 +275,23 @@ public class Tool : Widget { 		}  		Theme.color (cr, background);-		draw_rounded_rectangle (cr, bgx, bgy, 34 / scale, 28 / scale, 4 / scale);+		draw_rounded_rectangle (cr, bgx, bgy, 34, 28, 4); 		cr.fill (); 				-		cr.set_line_width (1 / scale);+		cr.set_line_width (1); 		Theme.color (cr, border);-		draw_rounded_rectangle (cr, bgx, bgy, 34 / scale, 28 / scale, 4 / scale);+		draw_rounded_rectangle (cr, bgx, bgy, 34, 28, 4); 		cr.stroke ();-					-		if (icon != null) {-			ImageSurface i = (!) icon;-			-			if (likely (i.status () == Cairo.Status.SUCCESS)) {-				iconx = bgx + w / scale / 2 - i.get_width () / 2;-				icony = bgy + h / scale / 2 - i.get_height () / 2;+		+		iconx = bgx + w / 2 - icon_font.get_sidebearing_extent () / 2;+		icony = bgy + h / 2 - icon_font.get_height () / 2;+		+		Theme.text_color (icon_font, "Button Foreground");+		+		icon_font.widget_x = iconx;+		icon_font.widget_y = icony; -				cr.set_source_surface (i, iconx, icony);-				cr.paint ();-			} else {-				warning (@"Falied to load icon for $name");-			}-		}+		icon_font.draw (cr); 		 		cr.restore (); 	}diff --git a/libbirdfont/Toolbox.vala b/libbirdfont/Toolbox.valaindex e3d2570..44c4537 100644--- a/libbirdfont/Toolbox.vala+++ b/libbirdfont/Toolbox.vala@@ -47,9 +47,7 @@ public class Toolbox : GLib.Object  { 	 	static double scale = 1; 	-	public Toolbox (GlyphCanvas glyph_canvas, TabBar tab_bar) {	-		scale = Toolbox.allocation_width / 160.0;-		+	public Toolbox (GlyphCanvas glyph_canvas, TabBar tab_bar) {			 		current_tool = new Tool ("no_icon"); 		press_tool = new Tool (null); @@ -109,6 +107,9 @@ public class Toolbox : GLib.Object  { 		if (w != allocation_width || allocation_height != h) { 			allocation_width = w; 			allocation_height = h;+			+			scale = Toolbox.allocation_width / 160.0;+			 			Toolbox.redraw_tool_box (); 		} 	}diff --git a/libbirdfont/ZoomTool.vala b/libbirdfont/ZoomTool.valaindex 4226ab7..36d94d8 100644--- a/libbirdfont/ZoomTool.vala+++ b/libbirdfont/ZoomTool.vala@@ -23,7 +23,7 @@ public class ZoomTool : Tool { 	Gee.ArrayList<Tab> views; 	 	public ZoomTool (string n) {-		base (n, "Zoom", 'z');+		base (n, "Zoom");  		views = new Gee.ArrayList<Tab> (); diff --git a/resources/icons.bf b/resources/icons.bfnew file mode 100644index 0000000..477e570--- /dev/null+++ b/resources/icons.bf@@ -0,0 +1,277 @@+<?xml version="1.0" encoding="utf-8" standalone="yes"?>+<font>+<format>1.0</format>++<postscript_name>BirdfontIcons</postscript_name>+<name>Birdfont Icons</name>+<subfamily>Regular</subfamily>+<bold>false</bold>+<italic>false</italic>+<full_name>Birdfont Icons</full_name>+<unique_identifier>JM: Birdfont Tool Box Icons</unique_identifier>+<version>Version 1.0</version>+<description>An icon font for the font editor Birdfont.</description>+<copyright>Copyright 2015+GNU Lesser General Public License</copyright>+<weight>400</weight>++<horizontal>+	<top_limit>84.0000000000</top_limit>+	<top_position>76.8642803204</top_position>+	<x-height>8.8789808917</x-height>+	<base_line>0.0000000000</base_line>+	<bottom_position>-20.0000000000</bottom_position>+	<bottom_limit>-27.0000000000</bottom_limit>+</horizontal>++<grid width="1.0000"/>+<grid width="2.0000"/>+<grid width="4.0000"/>++<background scale="1.0000" />++<collection unicode="U+5f">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+61">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+62">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+		<path stroke="0" skew="0" data="S -15.8755304102,16.4363507779 L -15.8755304102,16.4363507779" />+		<path stroke="0" skew="0" data="S -17.4370579915,63.8026874116 L -17.4370579915,63.8026874116 O" />+	</glyph>+</collection>+<collection unicode="U+63">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+64">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+65">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+66">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="foresight">+	<selected id="1"/>+	<glyph id="1" left="-28" right="44.054140127388528">+		<path stroke="0" skew="0" data="B 1.7352501208,51.1497314336 M 1.1409314853,49.8422304356 M -5.3965735046,37.7181302725 M -5.5156274136,37.5990763634 M -5.5156274136,37.3613489092 C -10.5595573727,20.2818675093 -12.7015387894,9.4281448249 -14.3115432183,2.5342768720 M -14.6679442176,0.8701846928 M -13.0038520384,0.7511307836 M -5.6343009588,0.3947297844 M -4.9211185962,0.3947297844 M -4.4456636878,0.9890484198 C 3.8827468145,12.2591174584 13.9097865406,20.7964618657 25.6268592658,27.2579321066 M 26.3400416282,27.6143331060 M 26.4590955373,28.4463791955 M 26.5781494464,41.7591166296 M 26.5781494464,42.9477539004 M 25.3895121756,43.1854813546 C 25.3895121756,43.1854813546 18.5789439226,44.3706953502 14.0974581019,45.4438921693 C 12.3494196042,45.8624826707 9.5305045071,47.0266625410 7.2033619308,48.1777578924 C 4.8762193546,49.3288532436 3.0431314827,50.4361687070 3.0431314827,50.4361687070 M 1.7356304847,51.1493510696 M 1.7352501208,51.1497314336" />+		<path stroke="0" skew="0" data="B -11.1020324049,3.4853768707 C -9.5168657405,10.4284258792 -7.5605399563,20.4386535198 -2.9004352357,36.2917655474 M -2.9004352357,36.4108194564 C -2.8662024823,36.5329162769 -2.8178962636,36.5260697262 -2.7813813267,36.6485469105 C -0.8795616932,40.1748374809 1.0222579402,43.7011280512 2.9240775736,47.2274186215 C 2.9240141796,47.2273552275 2.9239507857,47.2272918336 2.9238873917,47.2272284396 C 3.6395421198,46.8346928673 4.2330239545,46.5043467969 5.8954805689,45.6819999875 C 8.2971364384,44.4940473716 11.2285251485,43.1361481533 13.5027591027,42.5915430832 C 17.6790028720,41.5914522107 22.5539371384,40.7720342034 23.7250396323,40.5708597225 M 23.4873121782,29.1599419219 C 12.0678361892,22.7190874058 2.0357756592,14.2266639783 -6.2286195942,3.2476494166 M -9.4948507735,3.4680384229 C -8.6198048572,5.9359548336 -6.8796276693,10.5766917379 -5.3000751764,14.0093240306 C -2.4664019591,20.1674160037 0.4748762132,24.8393880787 0.4036720862,24.6880032360 C 2.6550842047,26.3646093884 3.1176067395,28.9240021782 2.9204641163,31.1637751606 C 0.4798589807,30.1822840842 -0.9150116112,27.5883162133 -0.8880438088,25.2625429472 C -0.8880438088,25.2625429472 -4.3657492269,19.7384035307 -6.8750861240,14.0347703773 C -8.4322032682,10.4954376537 -10.2719000680,5.6928510460 -11.1020324049,3.4853768707" />+		<path stroke="0" skew="0" data="B 29.5493622597,56.6174628797 C 29.7474684715,57.0532965457 29.9455746833,57.4891302117 30.1436808951,57.9249638776 C 29.6682259868,58.0834488471 29.1927710784,58.2419338166 28.7173161701,58.4004187861 C 22.6156448462,60.5399658737 16.5139735223,62.6795129613 10.4123021984,64.8190600488 C 10.0160897747,64.9775450183 9.6198773511,65.1360299877 9.2236649274,65.2945149572 C 9.0255587156,64.8983025336 8.8274525038,64.5020901100 8.6293462920,64.1058776863 M 6.2522619321,58.1625011499 C 6.2521985381,58.1625645439 6.2521351442,58.1626279379 6.2520717502,58.1626913319 C 5.9747230536,57.6872364235 5.6973743571,57.2117815151 5.4200256606,56.7363266068 C 3.9936609355,54.4779157921 2.5672962104,52.2195049773 1.1409314853,49.9610941626 M 3.5182060272,48.4158657105 M 7.0841178398,54.2401883379 C 9.1581662592,52.8021084039 11.7426630682,51.1122655868 14.4536689194,50.1988216169 C 17.7246465433,49.0967171392 21.0143380723,49.1400786270 24.0816308136,48.7724568918 M 23.7252298143,41.6406332664 M 26.5779592645,41.5215793573 M 26.9343602638,49.8420402536 C 26.8919569619,49.8674342288 26.7674657219,49.9338721731 26.8071503582,49.9182221793 C 27.7212209921,52.1513024127 28.6380736854,54.3590520650 29.5493622597,56.6174628797" />+		<path stroke="0" skew="0" data="B 15.4047689181,52.9324971579 C 13.2237591708,53.6673594096 10.6537957932,55.0848270522 8.8069016564,56.3207143514 C 8.6765661551,56.4013037537 8.5003842887,56.5766633932 8.2855596512,56.6430719605 C 9.0737163183,58.3382490219 9.8618729854,60.0334260832 10.6500296525,61.7286031445 M 26.3400416282,56.2608716984 C 25.6483751530,54.6753594020 24.9156647087,53.1308910748 24.2650422025,51.5043348093 C 21.1934528293,51.8097465832 17.9738324608,52.0669058959 15.4047689181,52.9324971579" />+	</glyph>+</collection>+<collection unicode="U+67">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+68">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+69">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+6a">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+6b">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+6c">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+6d">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="move">+	<selected id="1"/>+	<glyph id="1" left="-28" right="44.833598726114666">+		<path stroke="0" skew="0" data="B 9.0778264331,66.4648436306 M 18.9215764331,51.8711436306 M 20.9528264331,49.0273436306 M 17.4528264331,49.0273436306 M 9.4215764331,49.0273436306 M 9.4215764331,38.9648436306 M 9.4215764331,36.9335436306 M 22.2390525478,36.9335436306 M 22.2390525478,33.3398436306 M 9.4215764331,33.3398436306 M 9.4215764331,30.4961436306 M 9.4215764331,20.5585436306 M 17.7653264331,20.5585436306 M 21.2965764331,20.5585436306 M 19.2340764331,17.7148436306 M 9.1715764331,3.1523436306 M 7.7028264331,0.9961436306 M 6.2340764331,3.1523436306 M -3.7034235669,17.7148436306 M -5.6096735669,20.5585436306 M -2.2346735669,20.5585436306 M 5.7965764331,20.5585436306 M 5.7965764331,30.4961436306 M 5.7965764331,33.3398436306 M -6.6409235669,33.3398436306 M -6.6409235669,24.9648436306 M -6.6409235669,21.4648436306 M -9.4534235669,23.4961436306 M -24.0471735669,33.5585436306 M -26.2034235669,35.0273436306 M -24.0471735669,36.4961436306 M -9.4534235669,46.4335436306 M -6.6409235669,48.3711436306 M -6.6409235669,44.9648436306 M -6.6409235669,36.9335436306 M 5.7965764331,36.9335436306 M 5.7965764331,38.9648436306 M 5.7965764331,49.0273436306 M -2.5784235669,49.0273436306 M -5.9534235669,49.0273436306 M -4.0471735669,51.8711436306 M 6.0153264331,66.4648436306 M 7.6090764331,68.5898436306 M 9.0778264331,66.4648436306" />+		<path stroke="0" skew="0" data="B 0.8278264331,52.6523436306 M 14.0465764331,52.6523436306 M 7.4840764331,62.1523436306 M 0.8278264331,52.6523436306" />+		<path stroke="0" skew="0" data="B 24.6715764331,46.7773436306 M 39.2653264331,36.7148436306 M 41.4215764331,35.1211436306 M 39.2653264331,33.6523436306 M 24.6715764331,23.7148436306 M 21.8590764331,21.8085436306 M 21.8590764331,25.3085436306 M 21.8590764331,45.3085436306 M 21.8590764331,48.7148436306 M 24.6715764331,46.7773436306" />+		<path stroke="0" skew="0" data="B 25.4528264331,28.6835436306 M 34.9528264331,35.2461436306 M 25.4528264331,41.9335436306 M 25.4528264331,28.6835436306" />+		<path stroke="0" skew="0" data="B -19.8596735669,35.0273436306 M -10.2659235669,28.3398436306 M -10.2659235669,41.5898436306 M -19.8596735669,35.0273436306" />+		<path stroke="0" skew="0" data="B 7.7028264331,7.3085436306 M 14.3903264331,16.9335436306 M 1.1715764331,16.9335436306 M 7.7028264331,7.3085436306" />+	</glyph>+</collection>+<collection name="move_background">+	<selected id="1"/>+	<glyph id="1" left="-28" right="44.817675159235684">+		<path stroke="0" skew="0" data="B -20.8832904665,33.1925814297 C -20.8832904665,17.3819981760 -8.1779112752,4.5445546897 7.6326836554,4.5445546897 C 23.4432669092,4.5445546897 36.2806636883,17.3819981760 36.2806636883,33.1925814297 C 36.2806636883,49.0031646835 23.4412059889,61.9638171751 7.6326836554,61.7085438749 T C -6.7486881000,61.4763159568 -20.8832904665,49.0031646835 -20.8832904665,33.1925814297" />+		<path stroke="0" skew="0" data="B -19.3451152333,32.9015857197 M -17.3037905485,31.4937755922 M -7.0971671243,24.3843344484 M -4.4223278820,22.5541812827 M -4.4223278820,25.7921445758 M -4.4223278820,39.8702458506 M -4.4223278820,43.0378186376 M -7.0267766178,41.2780559781 M -17.3037905485,34.3093958472 M -19.3451152333,32.9015857197" />+		<path stroke="0" skew="0" data="B 40.7255376210,33.2105010095 C 40.7255376210,15.1167584644 25.9466906156,0.3379348126 7.8529714241,0.3379348126 C -10.2407594443,0.3379348126 -24.8875883947,15.1167584644 -24.8875883947,33.2105010095 C -24.8875883947,51.3042435546 -10.2407594443,65.9510033786 7.8529714241,65.9510033786 C 25.9466906156,65.9510033786 40.7255376210,51.3042435546 40.7255376210,33.2105010095" />+		<path stroke="0" skew="0" data="B -5.6189664903,31.2122135667 M 8.1775727590,31.2122135667 M 8.1775727590,34.5909578727 M -5.6189664903,34.5909578727 M -5.6189664903,31.2122135667" />+		<path stroke="0" skew="0" data="B -13.1815644026,32.4704796353 M -7.6207143990,36.2715669795 M -7.6207143990,28.6693922911 M -13.1815644026,32.4704796353" />+		<path stroke="0" skew="0" data="B 8.6880678262,5.9748620216 M 10.0958779537,8.0161867064 M 17.2053190975,18.2228101306 M 19.0354722632,20.8976493729 M 15.7975089700,20.8976493729 M 1.7194076952,20.8976493729 M -1.4481650916,20.8976493729 M 0.3115975677,18.2932006370 M 7.2802576988,8.0161867064 M 8.6880678262,5.9748620216" />+		<path stroke="0" skew="0" data="B 8.7584583326,11.9580550633 M 4.9573709884,17.5189050669 M 12.5595456768,17.5189050669 M 8.7584583326,11.9580550633" />+		<path stroke="0" skew="0" data="B 10.3774399792,19.7010107645 M 10.3774399792,33.4975500138 M 6.9986956733,33.4975500138 M 6.9986956733,19.7010107645 M 10.3774399792,19.7010107645" />+		<path stroke="0" skew="0" data="B 7.3231512539,57.7748651954 M 0.3544911229,47.4978512648 M -1.4052715365,44.8934025289 M 1.7623012503,44.8934025289 M 15.8404025251,44.8934025289 M 19.0783658184,44.8934025289 M 17.2482126526,47.5682417712 M 10.1387715089,57.7748651954 M 8.7309613814,59.8161898802 M 7.3231512539,57.7748651954" />+		<path stroke="0" skew="0" data="B 12.6024392320,48.2721468348 M 5.0002645436,48.2721468348 M 8.8013518877,53.8329968384 M 12.6024392320,48.2721468348" />+		<path stroke="0" skew="0" data="B 7.0415892284,46.0900411373 M 7.0415892284,32.2935018880 M 10.4203335344,32.2935018880 M 10.4203335344,46.0900411373 M 7.0415892284,46.0900411373" />+		<path stroke="0" skew="0" data="B 35.8304529874,32.9235505464 M 33.7891283026,34.3313606739 M 23.5825048784,41.4408018176 M 20.9076656361,43.2709549833 M 20.9076656361,40.0329916901 M 20.9076656361,25.9548904153 M 20.9076656361,22.7873176285 M 23.5121143719,24.5470802878 M 33.7891283026,31.5157404189 M 35.8304529874,32.9235505464" />+		<path stroke="0" skew="0" data="B 29.6669021565,33.3546566306 M 24.1060521531,29.5535692865 M 24.1060521531,37.1557439749 M 29.6669021565,33.3546566306" />+		<path stroke="0" skew="0" data="B 22.1043042444,34.6129226994 M 8.3077649951,34.6129226994 M 8.3077649951,31.2341783934 M 22.1043042444,31.2341783934 M 22.1043042444,34.6129226994" />+	</glyph>+</collection>+<collection name="move_canvas">+	<selected id="1"/>+	<glyph id="1" left="-28" right="44.524681528662434">+		<path stroke="0" skew="0" data="B 10.6961492707,63.3315307860 C 11.4129992707,62.5180207860 11.7528992707,61.5258607860 11.9773992707,60.4565307860 C 12.4263992707,58.3178807860 12.4019392707,55.7530007860 12.5711492707,53.0815312860 C 12.7745892707,49.8714912860 13.1609692707,46.6222012860 13.5711492707,43.7690312860 C 14.4111992707,45.9815312860 15.1462492707,47.5688312860 15.9773992707,50.4252812860 C 16.7020192707,52.9156212860 17.3379792707,55.4965007860 18.3836492707,57.6440307860 C 18.9064792707,58.7177907860 19.5269992707,59.7083607860 20.4148992707,60.4565307860 C 21.3027992707,61.2047007860 22.4705192707,61.6929307860 23.7586492707,61.7065307860 C 25.0884192707,61.7203207860 26.3680892707,61.1124307860 26.9773992707,60.0815307860 C 27.5867492707,59.0506307860 27.6128392707,57.8999007860 27.5086492707,56.6752807860 C 27.3002792707,54.2260312860 26.3964992707,51.2385912860 25.6023992707,48.0815312860 C 24.8214792707,44.9768612860 24.4161392707,41.8109712860 24.1648992707,38.9565312860 C 25.2212392707,40.4025512860 26.1402792707,41.9518912860 26.8836492707,43.5502812860 C 28.1589392707,46.2924012860 29.0180292707,48.8934712860 30.0711492707,50.6440312860 M 30.2898992707,51.0190312860 M 30.6648992707,51.1752812860 C 32.3143192707,51.8919812860 33.7798892707,52.1897012860 35.1023992707,51.8002812860 C 36.4249092707,51.4108612860 37.3117792707,50.2357812860 37.6336492707,48.9252812860 C 38.2773892707,46.3042912860 37.4930592707,42.8267612860 35.9148992707,38.4877812860 C 35.0725992707,36.1720112860 33.8146092707,32.8334212860 32.2273992707,29.7065312860 C 30.7403492707,26.7769712860 28.9945292707,24.0903412860 26.8211492707,22.4877812860 C 25.9592892707,21.1950112860 25.2416492707,18.4521812860 24.6648992707,15.6752812860 C 24.0881492707,12.8983812860 23.6318892707,10.1092712860 22.6336492707,8.1128312860 C 22.6053892707,8.0562312860 22.5959992707,7.0502312860 22.7586492707,5.8940312860 C 22.8399992707,5.3159312860 22.9489992707,4.6783312860 22.9148992707,4.0190312860 C 22.8808292707,3.3597312860 22.6895992707,2.5750312860 22.0711492707,1.9565312860 C 21.4024492707,1.2878312860 20.6563592707,1.0706312860 19.7273992707,0.8315312860 C 18.7984392707,0.5924312860 17.6952992707,0.4323312860 16.4461492707,0.3002312860 C 13.9478492707,0.0360312860 10.8682292707,-0.0579687140 7.7898992707,0.0190312860 C 4.7115692707,0.0961312860 1.6462492707,0.3329312860 -0.8976007293,0.7378312860 C -2.1695307293,0.9402312860 -3.3138407293,1.1858312860 -4.2726007293,1.4878312860 C -5.2313607293,1.7897312860 -6.0256007293,2.0845312860 -6.6788507293,2.7378312860 C -7.2834007293,3.3423312860 -7.0955507293,3.5342312860 -7.1163507293,3.7065312860 C -7.1371507293,3.8788312860 -7.1143507293,4.0143312860 -7.1163507293,4.1752312860 C -7.1203507293,4.4971312860 -7.1264507293,4.8806312860 -7.1163507293,5.3315312860 C -7.0962507293,6.2333312860 -7.0759507293,7.3969312860 -7.1476507293,8.6440312860 C -7.2910107293,11.1381812860 -7.8973807293,13.8625212860 -9.1789007293,15.1440312860 C -13.7380908293,19.7031812860 -15.0554208293,20.7080412860 -18.7101508293,24.3627812860 C -20.0175508293,25.6701912860 -20.4994008293,27.2998412860 -20.8976508293,28.6127812860 C -21.2959008293,29.9257212860 -21.6623408293,30.9086912860 -22.1789008293,31.4252812860 C -22.3572008293,31.6035612860 -22.3530008293,31.6325612860 -22.4289008293,31.7377812860 C -22.5048208293,31.8430012860 -22.5869007993,31.9973712860 -22.6789007993,32.1440312860 C -22.8629307993,32.4373612860 -23.0891907993,32.8033412860 -23.2726507993,33.2377812860 C -23.4561107993,33.6722212860 -23.6182507993,34.1523712860 -23.6476507993,34.7377812860 C -23.6770707993,35.3231912860 -23.5156607993,36.0885112860 -22.9601507993,36.6440312860 C -21.8077308293,37.7964712860 -20.8413408293,38.6394412860 -19.8039008293,39.1440312860 C -18.7664608293,39.6486212860 -17.5405908293,39.7234612860 -16.5226508293,39.2690312860 C -14.5427908293,38.3851912860 -13.2372707293,36.3336712860 -10.9914007293,33.3627812860 C -9.4804807293,32.3675412860 -8.4690207293,31.7284512860 -7.1164007293,30.5502812860 C -6.9519507293,31.0319712860 -6.8926507293,31.5893712860 -6.8976507293,32.2690312860 C -6.9066507293,33.5634012860 -7.2350807293,35.2113112860 -7.7726507293,36.9877812860 C -8.8477807293,40.5407312860 -10.6664007293,44.6460612860 -11.6164007293,48.4877812860 C -12.2693007293,51.1279312860 -12.8946007293,53.5333012860 -12.6164007293,55.7690307860 C -12.4773007293,56.8869007860 -12.0836507293,57.9895507860 -11.2726507293,58.8627807860 C -10.4616507293,59.7360107860 -9.3182807293,60.3153607860 -7.8976507293,60.6752807860 C -6.8023307293,60.9527907860 -5.6593207293,60.8365807860 -4.7726507293,60.3315307860 C -3.8859807293,59.8264807860 -3.2722807293,59.0553107860 -2.8039007293,58.1752807860 C -1.8671307293,56.4152207860 -1.4119507293,54.1513212860 -0.8976507293,51.7690312860 C -0.3370007293,49.1720712860 0.8122492707,46.0211912860 1.9773492707,43.1440312860 C 2.1311592707,46.2581712860 2.3457992707,49.0978512860 2.3210992707,52.2690312860 C 2.2986692707,55.1561707860 2.1372892707,57.9644007860 2.6335992707,60.3002807860 C 2.8817492707,61.4682207860 3.3118192707,62.5853807860 4.1648492707,63.4252807860 C 5.0178792707,64.2651808160 6.2828192707,64.7012808160 7.6648492707,64.6752808160 C 8.8745692707,64.6526808160 9.9792992707,64.1450408160 10.6961492707,63.3315307860" />+		<path stroke="0" skew="0" data="B 6.0709492707,61.4877807860 C 5.7604292707,61.1820407860 5.4739992707,60.6052007860 5.2896992707,59.7377807860 C 4.9210892707,58.0029307860 5.0166992707,55.2552407860 5.0396992707,52.3002812860 C 5.0810592707,46.9801012860 4.8143292707,40.4747812860 4.4771992707,37.0502812860 M 4.0084492707,32.3315312860 M 1.8834492707,36.5815312860 C 0.5010792707,39.3639612860 -2.4576907293,46.1281212860 -3.5540507293,51.2065312860 C -4.0638507293,53.5679412860 -4.5695307293,55.6901207860 -5.2103007293,56.8940307860 C -5.5306807293,57.4959907860 -5.8504707293,57.8362207860 -6.1165507293,57.9877807860 C -6.3826307293,58.1393807860 -6.6384507293,58.1951707860 -7.2103007293,58.0502807860 C -8.2765507293,57.7801507860 -8.8995307293,57.4209507860 -9.2728007293,57.0190307860 C -9.6460707293,56.6171107860 -9.8411507293,56.1316907860 -9.9290507293,55.4252807860 C -10.1048507293,54.0124612860 -9.6104807293,51.7731812860 -8.9603007293,49.1440312860 C -8.0988807293,45.6605512860 -6.3280307293,41.5660112860 -5.1790507293,37.7690312860 C -4.6045607293,35.8705412860 -4.1599007293,34.0381712860 -4.1478007293,32.3002812860 C -4.1357107293,30.5623912860 -4.6077907293,28.8376512860 -5.8353007293,27.5502812860 M -6.8040507293,26.5190312860 M -7.7728007293,27.5502812860 C -10.0626907293,29.8810212860 -10.3400107293,29.6612612860 -12.6478007293,31.2065312860 M -12.8353007293,31.3315312860 M -12.9915507293,31.5190312860 C -15.3741408293,34.6507312860 -16.9038208293,36.4508612860 -17.6165508293,36.7690312860 C -17.9729108293,36.9281712860 -18.0891208293,36.9318612860 -18.6165508293,36.6753312860 C -19.1214808293,36.4297412860 -19.9307808293,35.8154112860 -20.9290508293,34.8315812860 C -20.9197508293,34.7299912860 -20.8428708293,34.5402712860 -20.7415508293,34.3003312860 C -20.6348908293,34.0477612860 -20.4896108293,33.7777312860 -20.3665508293,33.5815812860 C -20.3140508293,33.4978312860 -20.2776508293,33.4140312860 -20.2415508293,33.3628312860 C -20.1056708293,33.2269812860 -20.1732508293,33.2802312860 -20.2102508293,33.3315312860 C -19.0432808293,32.1437712860 -18.6876308293,30.6587612860 -18.3040008293,29.3940312860 C -17.9168108293,28.1175512860 -17.5472908293,27.0435712860 -16.8040008293,26.3002812860 C -13.2021507293,22.6984212860 -11.8425907293,21.6513312860 -7.2415007293,17.0502812860 C -5.0480907293,14.8568912860 -4.5869807293,11.5487712860 -4.4290007293,8.8002312860 C -4.3500007293,7.4260312860 -4.3773007293,6.1797312860 -4.3977007293,5.2690312860 C -4.4047007293,4.9476312860 -4.3957007293,4.7358312860 -4.3977007293,4.5190312860 C -4.2017707293,4.4024312860 -4.0194207293,4.2576312860 -3.4602007293,4.0815312860 C -2.6968807293,3.8411312860 -1.6756707293,3.6137312860 -0.4914507293,3.4252312860 C 1.8769892707,3.0483312860 4.9015992707,2.8128312860 7.8835492707,2.7378312860 C 10.8654992707,2.6630312860 13.8392092707,2.7420312860 16.1647992707,2.9878312860 C 17.3275892707,3.1106312860 18.3129792707,3.2694312860 19.0397992707,3.4565312860 C 19.7666192707,3.6436312860 20.2318992707,3.9610312860 20.1647992707,3.8940312860 C 20.1187992707,3.8480312860 20.1803992707,3.8718312860 20.1960992707,4.1752312860 C 20.2117792707,4.4787312860 20.1475992707,4.9754312860 20.0710992707,5.5190312860 C 19.9181492707,6.6062312860 19.5107092707,7.8982312860 20.2273492707,9.3315312860 C 20.8757392707,10.6283212860 21.4228092707,13.4173312860 22.0085992707,16.2377812860 C 22.5943892707,19.0582312860 23.2028692707,21.9354512860 24.5710992707,23.9877812860 M 24.7273492707,24.2377812860 M 24.9460992707,24.3940312860 C 26.4471492707,25.3599312860 28.2907192707,27.9719212860 29.7898492707,30.9252812860 C 31.2889792707,33.8786412860 32.5567292707,37.1519512860 33.3835992707,39.4252812860 C 34.8842392707,43.5511012860 35.3544992707,46.8606712860 35.0085992707,48.2690312860 C 34.8356492707,48.9732112860 34.6815192707,49.1004012860 34.3210992707,49.2065312860 C 34.0224392707,49.2944712860 33.1682292707,49.1362712860 32.1960992707,48.8002812860 C 31.4913392707,47.4983312860 30.6187292707,45.1170112860 29.3523492707,42.3940312860 C 27.9999692707,39.4861512860 26.2040392707,36.3327812860 23.3835992707,34.0190312860 M 21.1335992707,32.1752812860 M 21.1648992707,35.0815312860 C 21.1912592707,38.5348112860 21.7166992707,43.8498912860 22.9461492707,48.7377812860 C 23.7592892707,51.9705212860 24.6577492707,54.9733807860 24.8211492707,56.8940307860 C 24.9028492707,57.8543607860 24.7521592707,58.5060307860 24.6336492707,58.7065307860 C 24.5151392707,58.9070807860 24.5048692707,58.9947807860 23.7898992707,58.9877807860 C 23.0953992707,58.9804207860 22.6362092707,58.7599207860 22.1648992707,58.3627807860 C 21.6935892707,57.9656407860 21.2418092707,57.3204707860 20.8211492707,56.4565307860 C 19.9798192707,54.7286607860 19.3481792707,52.2070912860 18.6023992707,49.6440312860 C 17.1193692707,44.5472312860 15.2492292707,39.7081612860 14.2898992707,37.7065312860 M 12.4773992707,33.9252812860 M 11.7273992707,38.0815312860 C 11.2649892707,40.6474312860 10.2208992707,47.0795712860 9.8523992707,52.8940312860 C 9.6757392707,55.6830607860 9.6655192707,58.2537307860 9.3211492707,59.8940307860 C 9.1489592707,60.7141807860 8.9072992707,61.2751907860 8.6648992707,61.5502807860 C 8.4224992707,61.8253707860 8.2150192707,61.9451307860 7.6023992707,61.9565307860 C 7.0919159373,61.8002807860 6.3814692707,61.7935207860 6.0709492707,61.4877807860" />+	</glyph>+</collection>+<collection unicode="U+6e">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+6f">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+70">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="pen_tool">+	<selected id="1"/>+	<glyph id="1" left="-28" right="40.883429529426067">+		<path stroke="0" skew="0" data="B 11.6640716561,62.5973545136 C 14.4605516561,62.4310545136 17.9232316561,61.5632545036 21.3203216561,59.7223545036 C 25.8497716561,57.2678545036 30.1982316561,52.9441545036 31.8515716561,46.0973544036 C 33.2817716561,40.1748544036 33.7285116561,38.0312544036 33.8828216561,37.2223544036 C 33.9021216561,37.1212544036 33.9334216561,37.0221544036 33.9453216561,36.9411544036 C 33.9574216561,36.8604544036 33.9935216561,36.8612544036 33.9766216561,36.5661544036 C 33.9724216561,36.4924544036 33.9531216561,36.3722544036 33.8829216561,36.1598544036 C 33.8654216561,36.1067544036 33.8205916561,36.0038544036 33.8204216561,36.0035544036 C 33.8202516561,36.0032544036 33.6643616561,35.7538544036 33.6641716561,35.7535544036 C 33.6639716561,35.7534544036 33.3518916561,35.4412544036 33.3516716561,35.4411544036 C 33.3515216561,35.4411544036 33.1527216561,35.3498544036 33.0079216561,35.2848544036 M 16.7266716561,11.0035544036 M 16.8930761062,11.1885588706 D 16.7873541412,11.0418940443 16.7315933085,10.9695074437 16.6641716561,10.9095544036 T D 16.6049236780,10.8568696016 16.7946688980,11.0759004115 16.8599175190,11.1590734155 D 16.7551722389,11.0117094733 16.6930654840,10.9457611690 16.6328716561,10.8785544036 T D 16.5872748359,10.8276452837 16.7452459340,11.0220349244 16.8014330729,11.0937751849 D 16.6945768117,10.9479347083 16.6291518640,10.8850009770 16.5703716561,10.8165544036 T D 16.5494133073,10.7921494685 16.5118412009,10.7538396351 16.4825759734,10.7224822509 D 16.3458117158,10.6042314876 16.2339890934,10.5854942085 16.1953716561,10.5039544036 T D 16.1672552678,10.4445873151 16.3535185305,10.5792796051 16.4325919678,10.6169422059 D 16.2716372988,10.5345935587 16.1727877921,10.4174337639 16.1016716561,10.4729544036 T D 16.0391770847,10.5217441548 16.2321688980,10.6393004115 16.2974175190,10.7224734155 D 16.1926722389,10.5751094733 16.0649023886,10.5320106824 16.0703716561,10.4419544036 T D 16.0743536927,10.3763866839 16.2285185305,10.5172796051 16.3075919678,10.5549422059 D 16.1466372988,10.4725935587 16.0601315136,10.4452253596 15.9766716561,10.4109544036 T M 3.0391716561,5.0984544036 M 3.0391716561,5.0674544036 M 1.7579216561,4.5361544036 M -7.9920783439,0.5361544036 C -8.2425083439,0.3401544036 -8.4628683439,0.2204544036 -8.5858283439,0.1924544036 C -8.7640183439,0.1524544036 -8.8414783439,0.1924544036 -8.9295783439,0.1924544036 C -9.1058083439,0.1824544036 -9.2420783439,0.1924544036 -9.2420783439,0.1924544036 M -9.4736737025,0.3300455254 D -9.6436540405,0.3916441443 -9.7300868147,0.4231252125 -9.8046283439,0.4739544036 T M -10.4921283439,0.9427544036 M -11.3358783439,1.2551544036 M -11.2165848858,1.9264742447 D -11.2406456654,2.1056634855 -11.2421783439,2.1962321988 -11.2421783439,2.2864544036 T M -11.2421783439,2.3174544036 M -10.6171783439,12.5986544036 M -10.5234783439,14.0674544036 M -10.4921783439,14.0674544036 M -9.1884300287,31.5832722520 D -9.3082009172,31.7187072527 -9.5039222114,32.0270325910 -9.5545339412,32.1987664815 T D -9.6051456710,32.3705003720 -9.5965435041,32.7360956694 -9.5807366981,32.9144330497 T D -9.5727711452,33.0043029346 -9.4908804325,33.1697490651 -9.4609283439,33.2548544036 T C -9.3825706574,33.4774985577 -9.2691583439,33.5610544036 -9.1171783439,33.8174544036 C -8.9651983439,34.0737544036 -8.7777683439,34.3960544036 -8.5234283439,34.8174544036 C -8.0147483439,35.6604544036 -7.2887483439,36.8348544036 -6.4609283439,38.1924544036 C -4.8052883439,40.9076544036 -2.6435983439,44.4340544036 -0.4921783439,47.9424544036 C 3.8106916561,54.9594545036 8.0390716561,61.8798545136 8.1892823051,62.0839080315 D 8.3170378150,62.2118386177 8.6215838651,62.4057819522 8.7809156144,62.4874365294 T D 8.8612079567,62.5285848711 9.0448451456,62.5474500176 9.1328216561,62.5674545136 T C 9.5022081802,62.6514472885 9.8949916561,62.6194545136 10.3203216561,62.6294545136 C 10.7456516561,62.6373545136 11.1979916561,62.6243545136 11.6640716561,62.5973545136" />+		<path stroke="0" skew="0" data="B 1.9765716561,46.4107544036 C -0.1742083439,42.9033544036 -2.3389683439,39.4030544036 -3.9921783439,36.6920544036 C -4.7310183439,35.4803544036 -5.3194683439,34.4643544036 -5.8046783439,33.6607544036 C -0.7580983439,32.7041544036 4.2740416561,30.9274544036 8.3828216561,27.8170544036 C 9.3991816561,27.0475544036 10.3476916561,26.1943544036 11.2265716561,25.2544544036 C 11.3462016561,25.1265544036 11.4848316561,25.0106544036 11.6015716561,24.8794544036 C 11.6316716561,24.8474544036 11.6654716561,24.8174544036 11.6952716561,24.7854544036 C 14.5265216561,21.7180544036 15.7638916561,18.3488544036 16.3515216561,15.7854544036 C 16.3535216561,15.7764544036 16.3495216561,15.7644544036 16.3515216561,15.7544544036 C 16.3605216561,15.7154544036 16.3738216561,15.6684544036 16.3828216561,15.6294544036 M 30.8828216561,37.3794544036 C 30.7144216561,38.1995544036 30.3188316561,39.9817544036 29.0078216561,45.4107544036 C 27.5557616561,51.4240544036 23.9123716561,55.0423545036 19.9453216561,57.1920545036 C 16.2631816561,59.1873545036 12.4151716561,59.7435545036 10.1015716561,59.6294545036 C 7.3932383227,55.2232211369 6.0586416561,53.0676545036 1.9765716561,46.4107544036" />+		<path stroke="0" skew="0" data="B -6.5859783439,30.8172544036 M -7.6172283439,13.7859544036 C -6.3351683439,13.6137544036 -4.7570483439,13.2944544036 -3.1484783439,12.5672544036 C -1.2377983439,11.7033544036 0.6841816561,10.1635544036 1.9452716561,7.7546544036 M 13.9140216561,12.6922544036 C 13.3574416561,17.0733544036 11.7009916561,20.4530544036 9.2890216561,23.0984544036 C 9.1517516561,23.2489544036 8.9936216561,23.3901544036 8.8515216561,23.5359544036 C 8.6651816561,23.7137544036 8.4889116561,23.8930544036 8.2890216561,24.0672544036 C 7.8892416561,24.4155544036 7.4646116561,24.7372544036 7.0077716561,25.0672544036 C 3.4619016561,27.6281544036 -0.0911783439,29.1064544036 -2.8984783439,29.9734544036 C -2.9302783439,29.9824544036 -2.9602783439,29.9944544036 -2.9921783439,30.0044544036 C -4.1681683439,30.3273544036 -5.3839483439,30.5939544036 -6.5859283439,30.8170544036 M -6.5859783439,30.8172544036" />+		<path stroke="0" skew="0" data="B -8.2422283439,3.5672544036 M -0.8984783439,6.5984544036 C -1.8099483439,8.1850544036 -2.9675583439,9.2923544036 -4.3359783439,9.9109544036 C -5.5075683439,10.4405544036 -6.7087883439,10.6888544036 -7.8047283439,10.8484544036 M -8.2422283439,3.5672544036" />+		<path stroke="0" skew="0" data="S -15.5469745223,52.8646496815 L -14.3113057325,51.8220541401 L -10.6042993631,48.6942675159 L -11.2221337580,46.6863057325 L -13.0756369427,40.6624203822 L -14.6202229299,40.8941082803 L -19.2539808917,41.5891719745 L -19.0609076433,44.1763535032 L -18.4816878981,51.9378980892 L -15.5469745223,52.8646496815" />+		<path stroke="0" skew="0" data="S -18.4816878981,51.9378980892 L -19.0609076433,44.1763535032 L -19.2539808917,41.5891719745 L -14.6202229299,40.8941082803 L -13.0756369427,40.6624203822 L -11.2221337580,46.6863057325 L -10.6042993631,48.6942675159 L -14.3113057325,51.8220541401 L -15.5469745223,52.8646496815 L -18.4816878981,51.9378980892" />+	</glyph>+</collection>+<collection name="point_tool">+	<selected id="1"/>+	<glyph id="1" left="-28" right="40.354299363057336">+		<path stroke="0" skew="0" data="B 29.9752984992,19.5314631223 M 33.6101092106,16.4055259105 M 28.8848552858,15.8603043038 M 11.6195044068,13.7521140911 M 6.2036364469,-2.6772303243 M 4.4589273054,-8.0204020700 M 2.2780408786,-2.8589708599 M -24.7286027070,61.1500457676 M -21.4209249596,63.5490208371 M 29.9752984992,19.5314631223" />+		<path stroke="0" skew="0" data="B 3.9500538057,3.9744732775 M 8.0210418025,16.3328296962 M 8.4572190879,17.6050134452 M 9.7657509439,17.7867539808 M 23.5780316473,19.4587669080 M -17.3499369629,54.5346902728 M 3.9500538057,3.9744732775" />+	</glyph>+</collection>+<collection unicode="U+71">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+72">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="resize">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+		<path stroke="0" skew="0" data="B -12.6075353516,43.9448258786 M 20.4549646484,43.9448258786 M 22.2362146484,43.9448258786 M 22.2362146484,42.1323258786 M 22.2362146484,7.8198258786 M 22.2362146484,3.4448258786 M 19.1737146484,6.5385258786 M 12.5799646484,13.1323258786 M 9.5799646484,10.0073258786 M 16.1112146484,3.3198258786 M 19.0799646484,0.2261258786 M 14.7987146484,0.2261258786 M -19.1387853516,0.2261258786 M -20.9512853516,0.2261258786 M -20.9512853516,2.0385258786 M -20.9512853516,34.6948258786 M -20.9512853516,38.8198258786 M -17.9200353516,36.0073258786 M -10.6075353516,29.2260758786 M -6.4200353516,33.4135758786 M -13.8887853516,40.8823258786 M -16.9512853516,43.9448258786 M -12.6075353516,43.9448258786" />+		<path stroke="0" skew="0" data="B -2.5762853516,34.6948258786 M -1.2950353516,33.4135758786 M -2.5762853516,32.1323258786 M -9.2637853516,25.4448258786 M -10.4825353516,24.2260758786 M -11.7637853516,25.3823258786 M -17.3575353516,30.5385758786 M -17.3575353516,3.8511258786 M 10.5487146484,3.8511258786 M 5.7674646484,8.7573258786 M 4.5487146484,10.0073258786 M 5.7674646484,11.2573258786 M 11.2362146484,16.9760758786 M 12.5174646484,18.3198258786 M 13.8299646484,17.0073258786 M 18.6424646484,12.1948258786 M 18.6424646484,40.3510758786 M -8.2637853516,40.3510758786 M -2.5762853516,34.6948258786" />+	</glyph>+</collection>+<collection unicode="U+73">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="spin_button">+	<selected id="1"/>+	<glyph id="1" left="-28" right="55.954617834394917">+		<path stroke="0" skew="0" data="B 14.1079053822,66.3469746815 M 49.3654353822,57.0518146815 M 49.6859753822,51.8646646815 M 36.2240153822,51.8646646815 M 36.2240153822,54.4876346815 M -8.0081446178,54.4876346815 M -8.0081446178,52.1851946815 M -22.1111346178,52.1851946815 M -22.1111346178,58.0133846815 M 14.1079053822,66.3469746815" />+		<path stroke="0" skew="0" data="B -22.1111346178,-0.7840853185 M -22.1111346178,5.0441146815 M -8.0081446178,5.0441146815 M -8.0081446178,2.7416746815 M 36.2240153822,2.7416746815 M 36.2240153822,5.3646346815 M 49.6859753822,5.3646346815 M 49.3654353822,0.1774846815 M 14.1079053822,-9.1176753185 M -22.1111346178,-0.7840853185" />+	</glyph>+</collection>+<collection unicode="U+74">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="track">+	<selected id="1"/>+	<glyph id="1" left="-28" right="42.053343949044596">+		<path stroke="0" skew="0" data="B -5.2851563694,29.0758350318 M -3.9414063694,27.7008350318 M 10.4960936306,12.7945350318 M 11.8085936306,11.4508350318 M 10.1523436306,10.5133350318 M -8.9726563694,0.0133350318 M -9.3789063694,-0.2054649682 M -9.8164063694,-0.1424649682 M -19.1601563694,0.7012350318 M -21.4101563694,0.8887350318 M -20.2851563694,2.8575350318 M -6.2539063694,27.4199350318 M -5.2851563694,29.0762350318 M -5.2851563694,29.0758350318" />+		<path stroke="0" skew="0" data="B -16.6601563694,3.3887350318 M -9.9726563694,2.7637350318 M 7.0898436306,12.1699350318 M -4.6914063694,24.2949350318 M -16.6601563694,3.3887350318" />+		<path stroke="0" skew="0" data="B 37.2461436306,69.4825350318 M 36.9961436306,66.6387350318 M 33.5898936306,26.6699350318 M 33.5585936306,26.1075350318 M 33.1523436306,25.7325350318 C 33.1523436306,25.7325350318 31.7244036306,24.4164350318 29.9335936306,22.9512350318 C 28.1427836306,21.4860350318 26.0469936306,19.8614350318 24.2148436306,19.0762350318 C 21.4025636306,17.8709350318 13.4960936306,13.8262350318 13.4960936306,13.8262350318 M 12.5273436306,13.3575350318 M 11.8085936306,14.1075350318 M -3.5039063694,29.6699350318 M -4.2226563694,30.3887350318 M -3.7851563694,31.3262350318 C -3.7851563694,31.3262350318 0.2848236306,39.8354350318 5.9648436306,46.8262350318 C 9.0398236306,50.6108350318 16.1265536306,55.7274350318 22.5898436306,60.1075350318 C 29.0531336306,64.4875350318 34.8085936306,67.9825350318 34.8085936306,67.9825350318 M 37.2460936306,69.4825350318 M 37.2461436306,69.4825350318" />+		<path stroke="0" skew="0" data="B 24.2148436306,57.7012350318 C 17.8166036306,53.3652350318 10.6358836306,48.0319350318 8.1835936306,45.0137350318 C 3.2801936306,38.9788350318 -0.0722063694,32.2131350318 -0.6914063694,30.9512350318 M 13.1210936306,16.8887350318 C 14.2875436306,17.4849350318 20.2276636306,20.5058350318 23.0898436306,21.7325350318 C 24.2339236306,22.2228350318 26.4042136306,23.7965350318 28.1210936306,25.2012350318 C 29.6039436306,26.4145350318 30.4745136306,27.2059350318 30.7773436306,27.4825350318 M 33.8710936306,63.9512350318 C 30.6523436306,61.8679016985 29.3264336306,61.1653350318 24.2148436306,57.7012350318" />+	</glyph>+</collection>+<collection unicode="U+75">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+76">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+77">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+78">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+79">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection unicode="U+7a">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+	</glyph>+</collection>+<collection name="zoom_tool">+	<selected id="1"/>+	<glyph id="1" left="-28" right="28">+		<path stroke="0" skew="0" data="B 14.0790197006,42.0048020701 C 14.0790197006,35.7823820701 10.8599497006,30.3057120701 6.0165197006,27.0985520701 M 20.6102697006,1.8798520701 M 17.4540197006,0.0672520701 M 2.7977697006,25.4110520701 C 0.7261897006,24.5770520701 -1.5264082994,24.0985520701 -3.8897282994,24.0985520701 C -13.7659472994,24.0985520701 -21.7647282994,32.1285820701 -21.7647282994,42.0048020701 C -21.7647282994,51.8810220701 -13.7659472994,59.9423020701 -3.8897282994,59.9423020701 C 5.9864897006,59.9423020701 14.0790197006,51.8810220701 14.0790197006,42.0048020701" />+		<path stroke="0" skew="0" data="B -18.1709782994,42.0048020701 C -18.1709782994,34.0838720701 -11.8106662994,27.6923020701 -3.8897282994,27.6923020701 C 4.0311997006,27.6923020701 10.4227697006,34.0838720701 10.4227697006,42.0048020701 C 10.4227697006,49.9257420701 4.0311997006,56.2860520701 -3.8897282994,56.2860520701 C -11.8937755393,56.1593933652 -18.1709782994,49.9257420701 -18.1709782994,42.0048020701" />+	</glyph>+</collection>+++<ligature sequence="m o v e _ b a c k g r o u n d" replacement="move_background"/>+<ligature sequence="m o v e _ c a n v a s" replacement="move_canvas"/>+<ligature sequence="s p i n _ b u t t o n" replacement="spin_button"/>+<ligature sequence="p o i n t _ t o o l" replacement="point_tool"/>+<ligature sequence="z o o m _ t o o l" replacement="zoom_tool"/>+<ligature sequence="f o r e s i g h t" replacement="foresight"/>+<ligature sequence="p e n _ t o o l" replacement="pen_tool"/>+<ligature sequence="r e s i z e" replacement="resize"/>+<ligature sequence="t r a c k" replacement="track"/>+<ligature sequence="m o v e" replacement="move"/>++</font>diff --git a/scripts/linux_build.py b/scripts/linux_build.pyindex 8e2e535..533738b 100755--- a/scripts/linux_build.py+++ b/scripts/linux_build.py@@ -27,6 +27,7 @@ parser.add_option("-c", "--cc", dest="cc", help="select the C compiler", metavar parser.add_option("-f", "--cflags", dest="cflags", help="set compiler flags", metavar="CFLAGS") parser.add_option("-l", "--ldflags", dest="ldflags", help="set linker flags", metavar="LDFLAGS") parser.add_option("-v", "--valac", dest="valac", help="select vala compiler", metavar="VALAC")+parser.add_option("-w", "--valac-flags", dest="valaflags", help="vala flags", metavar="VALAFLAGS")  (options, args) = parser.parse_args() @@ -40,10 +41,12 @@ if not options.ldflags: 	options.ldflags = "" if not options.valac: 	options.valac = "valac"+if not options.valaflags:+	options.valaflags = ""  prefix = options.prefix valac = options.valac-valaflags = "--pkg gdk-pixbuf-2.0 --pkg gtk+-3.0"+valaflags = options.valaflags + " --pkg gdk-pixbuf-2.0 --pkg gtk+-3.0" cc = options.cc cflags = options.cflags + " " + "$(pkg-config --cflags gdk-pixbuf-2.0)" ldflags = options.ldflags + " " + "$(pkg-config --libs gdk-pixbuf-2.0)"

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112