Clone in a terminal:
Commit 2d24cb9
Johan Mattsson - 2015-06-03T20:54:10+00:00
2d24cb95fecdfd30320b046323c63a755528a474johan.mattsson.m@gmail.com

Toggle visibility for layer labels

Changed files (5)

Diff

diff --git a/libbirdfont/BirdFontFile.vala b/libbirdfont/BirdFontFile.valaindex 05cc796..46fb599 100644--- a/libbirdfont/BirdFontFile.vala+++ b/libbirdfont/BirdFontFile.vala@@ -1392,7 +1392,7 @@ class BirdFontFile : GLib.Object { 	} 	 	public static void close (Path path) {-		EditPoint ep1, ep2, last;+		EditPoint ep1, ep2; 		 		if (path.points.size < 2) { 			warning ("Less  than two points in path.");diff --git a/libbirdfont/DrawingTools.vala b/libbirdfont/DrawingTools.valaindex 3210323..048778a 100644--- a/libbirdfont/DrawingTools.vala+++ b/libbirdfont/DrawingTools.vala@@ -49,6 +49,7 @@ public class DrawingTools : ToolCollection  { 	public static BackgroundTool move_background; 	public static Tool move_canvas; 	public static Tool add_layer;+	public static Tool show_layers; 	 	static Tool quadratic_points; 	static Tool cubic_points;@@ -782,11 +783,23 @@ public class DrawingTools : ToolCollection  {  		add_layer = new Tool ("add_layer", t_("Add layer")); 		add_layer.select_action.connect ((self) => {+			layer_tools.visible = true; 			MainWindow.get_current_glyph ().add_new_layer (); 			update_layers ();+			show_layers.selected = true;+			add_layer.selected = false; 		}); 		layer_settings.add_tool (add_layer);-		++		show_layers = new Tool ("show_layers", t_("Show layers"));+		show_layers.select_action.connect ((self) => {+			layer_tools.visible = !layer_tools.visible;+			MainWindow.get_toolbox ().update_expanders ();+			Toolbox.redraw_tool_box ();+			show_layers.selected = layer_tools.visible;+		});+		layer_settings.add_tool (show_layers);+				 		// add stroke to path 		add_stroke = new Tool ("apply_stroke", t_("Apply stroke")); 		add_stroke.select_action.connect ((self) => {@@ -1137,6 +1150,9 @@ public class DrawingTools : ToolCollection  { 			add_expander (test_tools); 		} 		+		layer_settings.set_persistent (true);+		layer_settings.set_unique (false);+		 		draw_tools.set_persistent (true); 		draw_tools.set_unique (false); 		diff --git a/libbirdfont/Glyph.vala b/libbirdfont/Glyph.valaindex 21627c5..8582fc9 100644--- a/libbirdfont/Glyph.vala+++ b/libbirdfont/Glyph.vala@@ -111,13 +111,14 @@ public class Glyph : FontDisplay { 	public static double orientation_arrow_opacity = 1; 	 	public Gee.ArrayList<Layer> layers = new Gee.ArrayList<Layer> ();+	public Layer current_layer = new Layer (); 	 	public Glyph (string name, unichar unichar_code = 0) { 		this.name = name; 		this.unichar_code = unichar_code;  		path_list.add (new Path ());-		+		layers.add (current_layer); 		add_help_lines (); 		 		left_limit = -28;@@ -129,6 +130,7 @@ public class Glyph : FontDisplay { 		this.unichar_code = unichar_code;  		path_list.add (new Path ());+		layers.add (current_layer); 	} 		 	~Glyph () {@@ -398,6 +400,7 @@ public class Glyph : FontDisplay { 		} 		 		update_zoom_bar ();+		DrawingTools.update_layers (); 	} 	 	void update_zoom_bar () {diff --git a/libbirdfont/LayerLabel.vala b/libbirdfont/LayerLabel.valaindex c0af756..2afe842 100644--- a/libbirdfont/LayerLabel.vala+++ b/libbirdfont/LayerLabel.vala@@ -39,17 +39,16 @@ public class LayerLabel : Tool { 		text_height = 17 * Toolbox.get_scale (); 		label_text.set_font_size (text_height); -		panel_press_action.connect ((selected, button, tx, ty) => {-			LayerLabel l;-			-			DrawingTools.deselect_layers ();-			+		panel_press_action.connect ((selected, button, tx, ty) => {	 			if (y <= ty <= y + h) { 				if (tx >= w - 30 * Toolbox.get_scale ()) {+					DrawingTools.deselect_layers (); 					remove_layer (); 				} if (tx < 25 * Toolbox.get_scale ()) { 					layer.visible = !layer.visible; 				} else {+					MainWindow.get_current_glyph ().current_layer = layer;+					DrawingTools.deselect_layers (); 					selected_layer = true; 				} 			} else {@@ -76,7 +75,6 @@ public class LayerLabel : Tool { 		Text visibility_icon; 		double x = this.x - px; 		double y = this.y - py;-		double text_height; 		double text_width; 		string visibility; 		diff --git a/resources/icons.bf b/resources/icons.bfindex 1d7466a..1eb3a0f 100644--- a/resources/icons.bf+++ b/resources/icons.bf@@ -896,6 +896,14 @@ GNU Lesser General Public License</copyright> 		<path data="B 39.1201840879,43.0193454106 M 39.1201840879,39.4014037106 M -34.8214989121,39.4014037106 M -34.8214989121,43.0193454106 M 39.1201840879,43.0193454106" /> 	</glyph> </collection>+<collection name="show_layers">+	<selected id="0"/>+	<glyph id="0" left="-28" right="26">+		<path data="B -26.0000000000,28.9383886256 M 24.0000000000,28.9383886256 M 24.0000000000,24.9383886256 M -26.0000000000,24.9383886256 M -26.0000000000,28.9383886256" />+		<path data="B -26.0000000000,41.9769852142 M 24.0000000000,41.9769852142 M 24.0000000000,37.9769852142 M -26.0000000000,37.9769852142 M -26.0000000000,41.9769852142" />+		<path data="B 23.9747235387,15.4218009479 M 23.9747235387,11.4218009479 M 0.0000000000,3.4218009479 M -25.9747235387,11.4218009479 M -25.9747235387,15.4218009479 M 0.0000000000,7.4218009479 M 23.9747235387,15.4218009479" />+	</glyph>+</collection> <collection name="show_xheight_helplines"> 	<selected id="1"/> 	<glyph id="1" left="-31.518584070796479" right="34.046017699115026">@@ -1105,97 +1113,98 @@ GNU Lesser General Public License</copyright> <ligature sequence="i n s e r t _ g l y p h _ f r o m _ o v e r v i e w" replacement="insert_glyph_from_overview"/> <ligature sequence="h i g h _ c o n t r a s t _ b a c k g r o u n d" replacement="high_contrast_background"/> <ligature sequence="p r e v i o u s _ k e r n i n g _ s t r i n g" replacement="previous_kerning_string"/>-<ligature sequence="s h o w _ x h e i g h t _ h e l p l i n e s" replacement="show_xheight_helplines"/> <ligature sequence="g e n e r a t e _ h t m l _ d o c u m e n t" replacement="generate_html_document"/>-<ligature sequence="s h o w _ a l l _ l i n e _ h a n d l e s" replacement="show_all_line_handles"/>-<ligature sequence="b a c k g r o u n d _ h e l p _ l i n e s" replacement="background_help_lines"/>-<ligature sequence="a u t o _ t r a c e _ r e s o l u t i o n" replacement="auto_trace_resolution"/>-<ligature sequence="z o o m _ b a c k g r o u n d _ i m a g e" replacement="zoom_background_image"/>+<ligature sequence="s h o w _ x h e i g h t _ h e l p l i n e s" replacement="show_xheight_helplines"/> <ligature sequence="o r i e n t a t i o n _ c l o c k w i s e" replacement="orientation_clockwise"/>-<ligature sequence="a u t o _ t r a c e _ s i m p l i f y" replacement="auto_trace_simplify"/>+<ligature sequence="z o o m _ b a c k g r o u n d _ i m a g e" replacement="zoom_background_image"/>+<ligature sequence="a u t o _ t r a c e _ r e s o l u t i o n" replacement="auto_trace_resolution"/>+<ligature sequence="b a c k g r o u n d _ h e l p _ l i n e s" replacement="background_help_lines"/>+<ligature sequence="s h o w _ a l l _ l i n e _ h a n d l e s" replacement="show_all_line_handles"/> <ligature sequence="n e x t _ k e r n i n g _ s t r i n g" replacement="next_kerning_string"/>-<ligature sequence="k e r n i n g _ t e x t _ i n p u t" replacement="kerning_text_input"/>+<ligature sequence="a u t o _ t r a c e _ s i m p l i f y" replacement="auto_trace_simplify"/> <ligature sequence="c o n t r a s t _ t h r e s h o l d" replacement="contrast_threshold"/>-<ligature sequence="o r i e n t a t i o n _ a r r o w" replacement="orientation_arrow"/>-<ligature sequence="d e l e t e _ b a c k g r o u n d" replacement="delete_background"/>-<ligature sequence="n e w _ p o i n t _ o n _ p a t h" replacement="new_point_on_path"/>-<ligature sequence="i n s e r t _ b a c k g r o u n d" replacement="insert_background"/>-<ligature sequence="s e l e c t _ b a c k g r o u n d" replacement="select_background"/>+<ligature sequence="k e r n i n g _ t e x t _ i n p u t" replacement="kerning_text_input"/> <ligature sequence="s t r o k e _ t o _ o u t l i n e" replacement="stroke_to_outline"/>-<ligature sequence="s c a l e _ b a c k g r o u n d" replacement="scale_background"/>-<ligature sequence="q u a d r a t i c _ p o i n t s" replacement="quadratic_points"/>+<ligature sequence="s e l e c t _ b a c k g r o u n d" replacement="select_background"/>+<ligature sequence="i n s e r t _ b a c k g r o u n d" replacement="insert_background"/>+<ligature sequence="n e w _ p o i n t _ o n _ p a t h" replacement="new_point_on_path"/>+<ligature sequence="d e l e t e _ b a c k g r o u n d" replacement="delete_background"/>+<ligature sequence="o r i e n t a t i o n _ a r r o w" replacement="orientation_arrow"/> <ligature sequence="o r i e n t a t i o n _ b o t h" replacement="orientation_both"/>-<ligature sequence="l i n e _ c a p _ s q u a r e" replacement="line_cap_square"/>-<ligature sequence="m o v e _ b a c k g r o u n d" replacement="move_background"/>-<ligature sequence="f l i p _ h o r i z o n t a l" replacement="flip_horizontal"/>-<ligature sequence="s h o w _ b a c k g r o u n d" replacement="show_background"/>+<ligature sequence="q u a d r a t i c _ p o i n t s" replacement="quadratic_points"/>+<ligature sequence="s c a l e _ b a c k g r o u n d" replacement="scale_background"/> <ligature sequence="z o o m _ b o u n d a r i e s" replacement="zoom_boundaries"/>-<ligature sequence="l i n e _ c a p _ r o u n d" replacement="line_cap_round"/>-<ligature sequence="i n s e r t _ u n i c h a r" replacement="insert_unichar"/>-<ligature sequence="c u t _ b a c k g r o u n d" replacement="cut_background"/>-<ligature sequence="u p d a t e _ w e b v i e w" replacement="update_webview"/>+<ligature sequence="s h o w _ b a c k g r o u n d" replacement="show_background"/>+<ligature sequence="f l i p _ h o r i z o n t a l" replacement="flip_horizontal"/>+<ligature sequence="m o v e _ b a c k g r o u n d" replacement="move_background"/>+<ligature sequence="l i n e _ c a p _ s q u a r e" replacement="line_cap_square"/> <ligature sequence="f i l l _ o p e n _ p a t h" replacement="fill_open_path"/>-<ligature sequence="l a y e r _ v i s i b l e" replacement="layer_visible"/>-<ligature sequence="l i n e _ c a p _ b u t t" replacement="line_cap_butt"/>-<ligature sequence="r e s i z e _ h a n d l e" replacement="resize_handle"/>-<ligature sequence="d r o p d o w n _ m e n u" replacement="dropdown_menu"/>-<ligature sequence="f l i p _ v e r t i c a l" replacement="flip_vertical"/>-<ligature sequence="d e l e t e _ b u t t o n" replacement="delete_button"/>-<ligature sequence="c o n v e r t _ p o i n t" replacement="convert_point"/>-<ligature sequence="d o u b l e _ p o i n t s" replacement="double_points"/>-<ligature sequence="k e r n i n g _ c l a s s" replacement="kerning_class"/>+<ligature sequence="u p d a t e _ w e b v i e w" replacement="update_webview"/>+<ligature sequence="c u t _ b a c k g r o u n d" replacement="cut_background"/>+<ligature sequence="i n s e r t _ u n i c h a r" replacement="insert_unichar"/>+<ligature sequence="l i n e _ c a p _ r o u n d" replacement="line_cap_round"/> <ligature sequence="a d d _ n e w _ t h e m e" replacement="add_new_theme"/>-<ligature sequence="l a y e r _ h i d d e n" replacement="layer_hidden"/>-<ligature sequence="y _ c o o r d i n a t e" replacement="y_coordinate"/>-<ligature sequence="x _ c o o r d i n a t e" replacement="x_coordinate"/>-<ligature sequence="c u b i c _ p o i n t s" replacement="cubic_points"/>-<ligature sequence="r e v e r s e _ p a t h" replacement="reverse_path"/>-<ligature sequence="e x p o r t _ f o n t s" replacement="export_fonts"/>+<ligature sequence="k e r n i n g _ c l a s s" replacement="kerning_class"/>+<ligature sequence="d o u b l e _ p o i n t s" replacement="double_points"/>+<ligature sequence="c o n v e r t _ p o i n t" replacement="convert_point"/>+<ligature sequence="d e l e t e _ b u t t o n" replacement="delete_button"/>+<ligature sequence="f l i p _ v e r t i c a l" replacement="flip_vertical"/>+<ligature sequence="d r o p d o w n _ m e n u" replacement="dropdown_menu"/>+<ligature sequence="r e s i z e _ h a n d l e" replacement="resize_handle"/>+<ligature sequence="l i n e _ c a p _ b u t t" replacement="line_cap_butt"/>+<ligature sequence="l a y e r _ v i s i b l e" replacement="layer_visible"/> <ligature sequence="a p p l y _ s t r o k e" replacement="apply_stroke"/>-<ligature sequence="b e z i e r _ t o o l" replacement="bezier_tool"/>-<ligature sequence="r i g h t _ a r r o w" replacement="right_arrow"/>-<ligature sequence="b e z i e r _ l i n e" replacement="bezier_line"/>-<ligature sequence="c r e a t e _ l i n e" replacement="create_line"/>-<ligature sequence="s p i n _ b u t t o n" replacement="spin_button"/>+<ligature sequence="e x p o r t _ f o n t s" replacement="export_fonts"/>+<ligature sequence="r e v e r s e _ p a t h" replacement="reverse_path"/>+<ligature sequence="c u b i c _ p o i n t s" replacement="cubic_points"/>+<ligature sequence="x _ c o o r d i n a t e" replacement="x_coordinate"/>+<ligature sequence="y _ c o o r d i n a t e" replacement="y_coordinate"/>+<ligature sequence="l a y e r _ h i d d e n" replacement="layer_hidden"/> <ligature sequence="m o v e _ c a n v a s" replacement="move_canvas"/>-<ligature sequence="c l o s e _ p a t h" replacement="close_path"/>-<ligature sequence="l e f t _ a r r o w" replacement="left_arrow"/>-<ligature sequence="h e l p _ l i n e s" replacement="help_lines"/>-<ligature sequence="m o v e _ l a y e r" replacement="move_layer"/>-<ligature sequence="s e l e c t _ a l l" replacement="select_all"/>-<ligature sequence="p o i n t _ t o o l" replacement="point_tool"/>+<ligature sequence="s p i n _ b u t t o n" replacement="spin_button"/>+<ligature sequence="c r e a t e _ l i n e" replacement="create_line"/>+<ligature sequence="b e z i e r _ l i n e" replacement="bezier_line"/>+<ligature sequence="r i g h t _ a r r o w" replacement="right_arrow"/>+<ligature sequence="b e z i e r _ t o o l" replacement="bezier_tool"/>+<ligature sequence="s h o w _ l a y e r s" replacement="show_layers"/> <ligature sequence="f u l l _ g l y p h" replacement="full_glyph"/>-<ligature sequence="s a v e _ f o n t" replacement="save_font"/>-<ligature sequence="i n f o _ i c o n" replacement="info_icon"/>-<ligature sequence="s h o w _ g r i d" replacement="show_grid"/>-<ligature sequence="a u t o t r a c e" replacement="autotrace"/>-<ligature sequence="u n d o _ t o o l" replacement="undo_tool"/>-<ligature sequence="t i e _ p o i n t" replacement="tie_point"/>-<ligature sequence="s y m m e t r i c" replacement="symmetric"/>-<ligature sequence="z o o m _ t o o l" replacement="zoom_tool"/>-<ligature sequence="r e c t a n g l e" replacement="rectangle"/>-<ligature sequence="t t f _ u n i t s" replacement="ttf_units"/>-<ligature sequence="m e n u _ i c o n" replacement="menu_icon"/>-<ligature sequence="o p e n _ f o n t" replacement="open_font"/>+<ligature sequence="p o i n t _ t o o l" replacement="point_tool"/>+<ligature sequence="s e l e c t _ a l l" replacement="select_all"/>+<ligature sequence="m o v e _ l a y e r" replacement="move_layer"/>+<ligature sequence="h e l p _ l i n e s" replacement="help_lines"/>+<ligature sequence="l e f t _ a r r o w" replacement="left_arrow"/>+<ligature sequence="c l o s e _ p a t h" replacement="close_path"/> <ligature sequence="a d d _ l a y e r" replacement="add_layer"/>-<ligature sequence="s e t t i n g s" replacement="settings"/>-<ligature sequence="z o o m _ o u t" replacement="zoom_out"/>-<ligature sequence="r o t a t i o n" replacement="rotation"/>-<ligature sequence="p e n _ t o o l" replacement="pen_tool"/>-<ligature sequence="z o o m _ 1 _ 1" replacement="zoom_1_1"/>-<ligature sequence="p r o g r e s s" replacement="progress"/>+<ligature sequence="o p e n _ f o n t" replacement="open_font"/>+<ligature sequence="m e n u _ i c o n" replacement="menu_icon"/>+<ligature sequence="t t f _ u n i t s" replacement="ttf_units"/>+<ligature sequence="r e c t a n g l e" replacement="rectangle"/>+<ligature sequence="z o o m _ t o o l" replacement="zoom_tool"/>+<ligature sequence="s y m m e t r i c" replacement="symmetric"/>+<ligature sequence="t i e _ p o i n t" replacement="tie_point"/>+<ligature sequence="u n d o _ t o o l" replacement="undo_tool"/>+<ligature sequence="a u t o t r a c e" replacement="autotrace"/>+<ligature sequence="s h o w _ g r i d" replacement="show_grid"/>+<ligature sequence="i n f o _ i c o n" replacement="info_icon"/>+<ligature sequence="s a v e _ f o n t" replacement="save_font"/> <ligature sequence="n e w _ f o n t" replacement="new_font"/>+<ligature sequence="p r o g r e s s" replacement="progress"/>+<ligature sequence="z o o m _ 1 _ 1" replacement="zoom_1_1"/>+<ligature sequence="p e n _ t o o l" replacement="pen_tool"/>+<ligature sequence="r o t a t i o n" replacement="rotation"/>+<ligature sequence="z o o m _ o u t" replacement="zoom_out"/>+<ligature sequence="s e t t i n g s" replacement="settings"/> <ligature sequence="z o o m _ i n" replacement="zoom_in"/>-<ligature sequence="h e i g h t" replacement="height"/>-<ligature sequence="r e s i z e" replacement="resize"/> <ligature sequence="c i r c l e" replacement="circle"/>-<ligature sequence="t h e m e" replacement="theme"/>-<ligature sequence="w i d t h" replacement="width"/>+<ligature sequence="r e s i z e" replacement="resize"/>+<ligature sequence="h e i g h t" replacement="height"/> <ligature sequence="t r a c k" replacement="track"/>-<ligature sequence="s k e w" replacement="skew"/>-<ligature sequence="m o v e" replacement="move"/>-<ligature sequence="p r e v" replacement="prev"/>+<ligature sequence="w i d t h" replacement="width"/>+<ligature sequence="t h e m e" replacement="theme"/> <ligature sequence="n e x t" replacement="next"/>+<ligature sequence="p r e v" replacement="prev"/>+<ligature sequence="m o v e" replacement="move"/>+<ligature sequence="s k e w" replacement="skew"/>  <kerning left="settings" right="l" hadjustment="3.8289794922" /> </font>

Contact

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