Since it is possible to change the zoom level from the status bar, there is no more need for an other zoom level selector. Furthermore, it is always better to have a GUI as clean as possible.
This patch remove the combo box allowing to select the zoom level from the tool bar. Signed-off-by: Guilhem Bonnefille <guilhem.bonnefi...@gmail.com> --- src/vikwindow.c | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/src/vikwindow.c b/src/vikwindow.c index 3a0c6ff..8973ce9 100644 --- a/src/vikwindow.c +++ b/src/vikwindow.c @@ -154,7 +154,6 @@ struct _VikWindow { VikStatusbar *viking_vs; GtkToolbar *toolbar; - GtkComboBox *tb_zoom_combo; GtkItemFactory *item_factory; @@ -380,15 +379,6 @@ static void vik_window_class_init ( VikWindowClass *klass ) } -static void set_toolbar_zoom ( VikWindow *vw, gdouble mpp ) -{ - gint active = 2 + ( log (mpp) / log (2) ); - // Can we not hard code size here? - if ( active > 17 ) - active = 17; - gtk_combo_box_set_active ( vw->tb_zoom_combo, active ); -} - static void zoom_changed_cb ( VikStatusbar *vs, gdouble zoom_request, VikWindow *vw ) { // But has it really changed? @@ -398,22 +388,6 @@ static void zoom_changed_cb ( VikStatusbar *vs, gdouble zoom_request, VikWindow // Force drawing update draw_update ( vw ); } - -} - -static void zoom_changed ( GtkComboBox *combo, VikWindow *vw ) -{ - gint active = gtk_combo_box_get_active ( combo ); - - // But has it really changed? - // Unfortunately this function gets invoked even on manual setting of the combo value - gdouble zoom_request = pow (2, active-2 ); - gdouble current_zoom = vik_viewport_get_zoom ( vw->viking_vvp ); - if ( current_zoom != 0.0 && zoom_request != current_zoom ) { - vik_viewport_set_zoom ( vw->viking_vvp, zoom_request ); - // Force drawing update - draw_update ( vw ); - } } static GtkWidget *create_zoom_combo_all_levels () @@ -485,16 +459,8 @@ static void vik_window_init ( VikWindow *vw ) vik_ext_tools_add_menu_items ( vw, vw->uim ); - vw->tb_zoom_combo = GTK_COMBO_BOX(create_zoom_combo_all_levels()); - - g_signal_connect ( G_OBJECT(vw->tb_zoom_combo), "changed", G_CALLBACK(zoom_changed), vw ); g_signal_connect ( G_OBJECT(vw->viking_vs), "zoom-changed", G_CALLBACK(zoom_changed_cb), vw ); - // Add the zoom combo to the toolbar at the end - GtkToolItem *tooli = gtk_tool_item_new (); - gtk_container_add ( GTK_CONTAINER(tooli), GTK_WIDGET (vw->tb_zoom_combo) ); - gtk_toolbar_insert ( vw->toolbar, tooli, gtk_toolbar_get_n_items (vw->toolbar) ); - g_signal_connect (G_OBJECT (vw), "delete_event", G_CALLBACK (delete_event), NULL); g_signal_connect_swapped (G_OBJECT(vw->viking_vvp), "expose_event", G_CALLBACK(draw_sync), vw); @@ -688,8 +654,6 @@ static void draw_status ( VikWindow *vw ) g_snprintf ( zoom_level, 22, "%d %s", (int)xmpp, unit ); vik_statusbar_set_message ( vw->viking_vs, VIK_STATUSBAR_ZOOM, zoom_level ); - // OK maybe not quite in the statusbar - but we have the zoom level so use it - set_toolbar_zoom ( vw, xmpp ); // But it's a status of some kind! draw_status_tool ( vw ); } -- tg: (48caad2..) t/gui/remove-zoom-combo (depends on: t/gui/rework-zoom-combo) ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Viking-devel mailing list Viking-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/viking-devel Viking home page: http://viking.sf.net/