comparison src/layout.c @ 1375:df58e511d90e

Display pixel coordinates and rgb - patch by Ruben Stein
author nadvornik
date Wed, 04 Mar 2009 18:53:47 +0000
parents 4db89b602093
children 3c9abbc05792
comparison
equal deleted inserted replaced
1374:27ba259d3496 1375:df58e511d90e
49 49
50 #define TOOLWINDOW_DEF_WIDTH 260 50 #define TOOLWINDOW_DEF_WIDTH 260
51 #define TOOLWINDOW_DEF_HEIGHT 450 51 #define TOOLWINDOW_DEF_HEIGHT 450
52 52
53 #define PROGRESS_WIDTH 150 53 #define PROGRESS_WIDTH 150
54 #define PIXEL_LABEL_WIDTH 130
54 #define ZOOM_LABEL_WIDTH 64 55 #define ZOOM_LABEL_WIDTH 64
55 56
56 #define PANE_DIVIDER_SIZE 10 57 #define PANE_DIVIDER_SIZE 10
57 58
58 59
703 image_get_image_size(lw->image, &width, &height); 704 image_get_image_size(lw->image, &width, &height);
704 text = g_strdup_printf(_("( %d x %d ) %s bytes"), 705 text = g_strdup_printf(_("( %d x %d ) %s bytes"),
705 width, height, b); 706 width, height, b);
706 } 707 }
707 708
709 g_signal_emit_by_name (lw->image->pr, "update-pixel");
710
708 g_free(b); 711 g_free(b);
709 712
710 gtk_label_set_text(GTK_LABEL(lw->info_details), text); 713 gtk_label_set_text(GTK_LABEL(lw->info_details), text);
711 g_free(text); 714 g_free(text);
712 } 715 }
803 hbox = lw->info_box; 806 hbox = lw->info_box;
804 } 807 }
805 lw->info_details = layout_status_label(NULL, hbox, TRUE, 0, TRUE); 808 lw->info_details = layout_status_label(NULL, hbox, TRUE, 0, TRUE);
806 if (!small_format) gtk_box_pack_start(GTK_BOX(hbox), lw->info_color, FALSE, FALSE, 0); 809 if (!small_format) gtk_box_pack_start(GTK_BOX(hbox), lw->info_color, FALSE, FALSE, 0);
807 if (!small_format) gtk_box_pack_start(GTK_BOX(hbox), lw->info_write, FALSE, FALSE, 0); 810 if (!small_format) gtk_box_pack_start(GTK_BOX(hbox), lw->info_write, FALSE, FALSE, 0);
811 lw->info_pixel = layout_status_label(NULL, hbox, FALSE, PIXEL_LABEL_WIDTH, TRUE);
812 if (lw->options.info_pixel_hidden) gtk_widget_hide(gtk_widget_get_parent(lw->info_pixel));
808 lw->info_zoom = layout_status_label(NULL, hbox, FALSE, ZOOM_LABEL_WIDTH, FALSE); 813 lw->info_zoom = layout_status_label(NULL, hbox, FALSE, ZOOM_LABEL_WIDTH, FALSE);
809 } 814 }
810 815
811 /* 816 /*
812 *----------------------------------------------------------------------------- 817 *-----------------------------------------------------------------------------
1740 lw->info_progress_bar = NULL; 1745 lw->info_progress_bar = NULL;
1741 lw->info_sort = NULL; 1746 lw->info_sort = NULL;
1742 lw->info_color = NULL; 1747 lw->info_color = NULL;
1743 lw->info_status = NULL; 1748 lw->info_status = NULL;
1744 lw->info_details = NULL; 1749 lw->info_details = NULL;
1750 lw->info_pixel = NULL;
1745 lw->info_zoom = NULL; 1751 lw->info_zoom = NULL;
1746 1752
1747 if (lw->ui_manager) g_object_unref(lw->ui_manager); 1753 if (lw->ui_manager) g_object_unref(lw->ui_manager);
1748 lw->ui_manager = NULL; 1754 lw->ui_manager = NULL;
1749 lw->action_group = NULL; 1755 lw->action_group = NULL;
1896 gint layout_toolbar_hidden(LayoutWindow *lw) 1902 gint layout_toolbar_hidden(LayoutWindow *lw)
1897 { 1903 {
1898 if (!layout_valid(&lw)) return TRUE; 1904 if (!layout_valid(&lw)) return TRUE;
1899 1905
1900 return lw->options.toolbar_hidden; 1906 return lw->options.toolbar_hidden;
1907 }
1908
1909 void layout_info_pixel_toggle(LayoutWindow *lw)
1910 {
1911 GtkWidget *frame;
1912
1913 if (!layout_valid(&lw)) return;
1914 if (!lw->info_pixel) return;
1915
1916 lw->options.info_pixel_hidden = !lw->options.info_pixel_hidden;
1917
1918 frame = gtk_widget_get_parent(lw->info_pixel);
1919 if (lw->options.info_pixel_hidden)
1920 {
1921 if (GTK_WIDGET_VISIBLE(frame)) gtk_widget_hide(frame);
1922 }
1923 else
1924 {
1925 if (!GTK_WIDGET_VISIBLE(frame)) gtk_widget_show(frame);
1926 }
1927 }
1928
1929 gint layout_info_pixel_hidden(LayoutWindow *lw)
1930 {
1931 if (!layout_valid(&lw)) return TRUE;
1932
1933 return lw->options.info_pixel_hidden;
1901 } 1934 }
1902 1935
1903 /* 1936 /*
1904 *----------------------------------------------------------------------------- 1937 *-----------------------------------------------------------------------------
1905 * base 1938 * base
2162 WRITE_BOOL(*layout, tools_hidden); 2195 WRITE_BOOL(*layout, tools_hidden);
2163 WRITE_BOOL(*layout, tools_restore_state); 2196 WRITE_BOOL(*layout, tools_restore_state);
2164 WRITE_SEPARATOR(); 2197 WRITE_SEPARATOR();
2165 2198
2166 WRITE_BOOL(*layout, toolbar_hidden); 2199 WRITE_BOOL(*layout, toolbar_hidden);
2167 2200 WRITE_BOOL(*layout, info_pixel_hidden);
2201
2168 WRITE_UINT(*layout, image_overlay.state); 2202 WRITE_UINT(*layout, image_overlay.state);
2169 WRITE_INT(*layout, image_overlay.histogram_channel); 2203 WRITE_INT(*layout, image_overlay.histogram_channel);
2170 WRITE_INT(*layout, image_overlay.histogram_mode); 2204 WRITE_INT(*layout, image_overlay.histogram_mode);
2171 } 2205 }
2172 2206
2229 2263
2230 if (READ_BOOL(*layout, tools_float)) continue; 2264 if (READ_BOOL(*layout, tools_float)) continue;
2231 if (READ_BOOL(*layout, tools_hidden)) continue; 2265 if (READ_BOOL(*layout, tools_hidden)) continue;
2232 if (READ_BOOL(*layout, tools_restore_state)) continue; 2266 if (READ_BOOL(*layout, tools_restore_state)) continue;
2233 if (READ_BOOL(*layout, toolbar_hidden)) continue; 2267 if (READ_BOOL(*layout, toolbar_hidden)) continue;
2268 if (READ_BOOL(*layout, info_pixel_hidden)) continue;
2234 2269
2235 if (READ_UINT(*layout, image_overlay.state)) continue; 2270 if (READ_UINT(*layout, image_overlay.state)) continue;
2236 if (READ_INT(*layout, image_overlay.histogram_channel)) continue; 2271 if (READ_INT(*layout, image_overlay.histogram_channel)) continue;
2237 if (READ_INT(*layout, image_overlay.histogram_mode)) continue; 2272 if (READ_INT(*layout, image_overlay.histogram_mode)) continue;
2238 2273