diff src/layout.c @ 318:b16b9b8979e5

Add a new struct ConfOptions to handle options. Changes were made among the code to use only one global var named "options" of type ConfOptions *. Initialization takes place in new init_options().
author zas_
date Fri, 11 Apr 2008 22:14:36 +0000
parents 6a7298988a7a
children c74af1cbd61a
line wrap: on
line diff
--- a/src/layout.c	Fri Apr 11 20:35:37 2008 +0000
+++ b/src/layout.c	Fri Apr 11 22:14:36 2008 +0000
@@ -1258,8 +1258,8 @@
 
 static void layout_tools_geometry_sync(LayoutWindow *lw)
 {
-	layout_geometry_get_tools(lw, &float_window_x, &float_window_x,
-				  &float_window_w, &float_window_h, &lw->div_float);
+	layout_geometry_get_tools(lw, &options->float_window_x, &options->float_window_x,
+				  &options->float_window_w, &options->float_window_h, &lw->div_float);
 }
 
 static void layout_tools_hide(LayoutWindow *lw, gint hide)
@@ -1322,7 +1322,7 @@
 				 G_CALLBACK(layout_tools_delete_cb), lw);
 		layout_keyboard_init(lw, lw->tools);
 
-		if (save_window_positions)
+		if (options->save_window_positions)
 			{
 			hints = GDK_HINT_USER_POS;
 			}
@@ -1378,10 +1378,10 @@
 
 	if (new_window)
 		{
-		if (save_window_positions)
+		if (options->save_window_positions)
 			{
-			gtk_window_set_default_size(GTK_WINDOW(lw->tools), float_window_w, float_window_h);
-			gtk_window_move(GTK_WINDOW(lw->tools), float_window_x, float_window_y);
+			gtk_window_set_default_size(GTK_WINDOW(lw->tools), options->float_window_w, options->float_window_h);
+			gtk_window_move(GTK_WINDOW(lw->tools), options->float_window_x, options->float_window_y);
 			}
 		else
 			{
@@ -1398,7 +1398,7 @@
 			}
 		}
 
-	if (!save_window_positions)
+	if (!options->save_window_positions)
 		{
 		if (vertical)
 			{
@@ -1719,7 +1719,7 @@
 		work = work->next;
 		
 		if (!lw->image) continue;
-		image_background_set_color(lw->image, user_specified_window_background ? &window_background_color : NULL);
+		image_background_set_color(lw->image, options->user_specified_window_background ? &options->window_background_color : NULL);
 		}
 }
 
@@ -1879,14 +1879,14 @@
 
 	lw = g_new0(LayoutWindow, 1);
 
-	lw->thumbs_enabled = thumbnails_enabled;
+	lw->thumbs_enabled = options->thumbnails_enabled;
 	lw->sort_method = SORT_NAME;
 	lw->sort_ascend = TRUE;
 
 	lw->tools_float = popped;
 	lw->tools_hidden = hidden;
 
-	lw->toolbar_hidden = toolbar_hidden;
+	lw->toolbar_hidden = options->toolbar_hidden;
 
 	lw->utility_box = NULL;
 	lw->bar_sort = NULL;
@@ -1907,11 +1907,11 @@
 
 	/* divider positions */
 
-	if (save_window_positions)
+	if (options->save_window_positions)
 		{
-		lw->div_h = window_hdivider_pos;
-		lw->div_v = window_vdivider_pos;
-		lw->div_float = float_window_divider;
+		lw->div_h = options->window_hdivider_pos;
+		lw->div_v = options->window_vdivider_pos;
+		lw->div_float = options->float_window_divider;
 		}
 	else
 		{
@@ -1926,7 +1926,7 @@
 	gtk_window_set_resizable(GTK_WINDOW(lw->window), TRUE);
 	gtk_container_set_border_width(GTK_CONTAINER(lw->window), 0);
 
-	if (save_window_positions)
+	if (options->save_window_positions)
 		{
 		hint_mask = GDK_HINT_USER_POS;
 		}
@@ -1942,13 +1942,13 @@
 	gtk_window_set_geometry_hints(GTK_WINDOW(lw->window), NULL, &hint,
 				      GDK_HINT_MIN_SIZE | GDK_HINT_BASE_SIZE | hint_mask);
 
-	if (save_window_positions)
+	if (options->save_window_positions)
 		{
-		gtk_window_set_default_size(GTK_WINDOW(lw->window), main_window_w, main_window_h);
+		gtk_window_set_default_size(GTK_WINDOW(lw->window), options->main_window_w, options->main_window_h);
 		if (!layout_window_list)
 			{
-			gtk_window_move(GTK_WINDOW(lw->window), main_window_x, main_window_y);
-			if (main_window_maximized) gtk_window_maximize(GTK_WINDOW(lw->window));
+			gtk_window_move(GTK_WINDOW(lw->window), options->main_window_x, options->main_window_y);
+			if (options->main_window_maximized) gtk_window_maximize(GTK_WINDOW(lw->window));
 			}
 		}
 	else