SF.net SVN: geany-plugins:[1968] trunk/geany-plugins/devhelp/src
codebrainz at users.sourceforge.net
codebrainz at xxxxx
Wed Mar 9 06:41:00 UTC 2011
Revision: 1968
http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=1968&view=rev
Author: codebrainz
Date: 2011-03-09 06:41:00 +0000 (Wed, 09 Mar 2011)
Log Message:
-----------
Add toolbar separator and cleanup code a bit using cppcheck.
Modified Paths:
--------------
trunk/geany-plugins/devhelp/src/devhelpplugin.c
trunk/geany-plugins/devhelp/src/devhelpplugin.h
Modified: trunk/geany-plugins/devhelp/src/devhelpplugin.c
===================================================================
--- trunk/geany-plugins/devhelp/src/devhelpplugin.c 2011-03-09 06:40:46 UTC (rev 1967)
+++ trunk/geany-plugins/devhelp/src/devhelpplugin.c 2011-03-09 06:41:00 UTC (rev 1968)
@@ -198,7 +198,24 @@
plug->zoom_level = webkit_web_view_get_zoom_level(view);
}
+static void on_document_load_finished(WebKitWebView *view,
+ WebKitWebFrame *frame,
+ gpointer user_data)
+{
+ DevhelpPlugin *plug = user_data;
+
+ if (webkit_web_view_can_go_back(view))
+ gtk_widget_set_sensitive(GTK_WIDGET(plug->btn_back), TRUE);
+ else
+ gtk_widget_set_sensitive(GTK_WIDGET(plug->btn_back), FALSE);
+
+ if (webkit_web_view_can_go_forward(view))
+ gtk_widget_set_sensitive(GTK_WIDGET(plug->btn_forward), TRUE);
+ else
+ gtk_widget_set_sensitive(GTK_WIDGET(plug->btn_forward), FALSE);
+}
+
/**
* devhelp_plugin_new:
*
@@ -211,11 +228,9 @@
DevhelpPlugin*
devhelp_plugin_new(gboolean sb_tabs_bottom, gboolean show_in_msgwin, gchar *last_uri)
{
- gchar *homepage_uri;
GtkWidget *book_tree_sw, *webview_sw, *contents_label;
- GtkWidget *search_label, *dh_sidebar_label, *doc_label;
- GtkWidget *vbox, *toolbar;
- GtkToolItem *btn_back, *btn_forward, *tb_sep, *btn_zoom_in, *btn_zoom_out;
+ GtkWidget *search_label, *dh_sidebar_label, *doc_label, *vbox, *toolbar;
+ GtkToolItem *btn_zoom_in, *btn_zoom_out, *tb_sep;
DevhelpPlugin *dhplug;
@@ -313,14 +328,16 @@
/* put the webview and toolbar stuff into the main notebook */
vbox = gtk_vbox_new(FALSE, 0);
toolbar = gtk_toolbar_new();
- btn_back = gtk_tool_button_new_from_stock(GTK_STOCK_GO_BACK);
- btn_forward = gtk_tool_button_new_from_stock(GTK_STOCK_GO_FORWARD);
+ dhplug->btn_back = gtk_tool_button_new_from_stock(GTK_STOCK_GO_BACK);
+ dhplug->btn_forward = gtk_tool_button_new_from_stock(GTK_STOCK_GO_FORWARD);
btn_zoom_in = gtk_tool_button_new_from_stock(GTK_STOCK_ZOOM_IN);
btn_zoom_out = gtk_tool_button_new_from_stock(GTK_STOCK_ZOOM_OUT);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(btn_back), -1);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(btn_forward), -1);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(btn_zoom_in), -1);
- gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(btn_zoom_out), -1);
+ tb_sep = gtk_separator_tool_item_new();
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), dhplug->btn_back, -1);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), dhplug->btn_forward, -1);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), tb_sep, -1);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), btn_zoom_in, -1);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar), btn_zoom_out, -1);
gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(vbox), webview_sw, TRUE, TRUE, 0);
gtk_notebook_append_page(GTK_NOTEBOOK(dhplug->main_notebook), vbox, doc_label);
@@ -358,12 +375,12 @@
G_CALLBACK(on_link_clicked),
dhplug);
- g_signal_connect(btn_back,
+ g_signal_connect(dhplug->btn_back,
"clicked",
G_CALLBACK(on_back_button_clicked),
dhplug);
- g_signal_connect(btn_forward,
+ g_signal_connect(dhplug->btn_forward,
"clicked",
G_CALLBACK(on_forward_button_clicked),
dhplug);
@@ -377,6 +394,11 @@
"clicked",
G_CALLBACK(on_zoom_out_button_clicked),
dhplug);
+
+ g_signal_connect(WEBKIT_WEB_VIEW(dhplug->webview),
+ "document-load-finished",
+ G_CALLBACK(on_document_load_finished),
+ dhplug);
/* toggle state tracking */
dhplug->last_main_tab_id = gtk_notebook_get_current_page(
Modified: trunk/geany-plugins/devhelp/src/devhelpplugin.h
===================================================================
--- trunk/geany-plugins/devhelp/src/devhelpplugin.h 2011-03-09 06:40:46 UTC (rev 1967)
+++ trunk/geany-plugins/devhelp/src/devhelpplugin.h 2011-03-09 06:41:00 UTC (rev 1968)
@@ -81,6 +81,9 @@
gchar *last_uri;
gfloat zoom_level;
+ GtkToolItem *btn_back;
+ GtkToolItem *btn_forward;
+
DevhelpPluginPrivate *priv;
};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Plugins-Commits
mailing list