⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 callbacks.c

📁 khtml在gtk上的移植版本
💻 C
📖 第 1 页 / 共 2 页
字号:
{  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML *engine = osb_browser_get_active_engine (self);    gtk_khtml_go_forward (engine);  osb_browser_update_ui(self, engine);}voidon_stop_clicked                        (GtkButton       *button,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  gtk_khtml_stop_load (engine);  osb_browser_update_ui(self, engine);}voidon_refresh_clicked                     (GtkButton       *button,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  const gchar * cur_url;    gtk_khtml_stop_load (engine);  cur_url = normalize_filename(gtk_khtml_get_location (engine));  if (cur_url) {      gtk_khtml_refresh (engine);  }  osb_browser_update_ui (self, engine);}voidon_home_clicked                        (GtkButton       *button,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  gtk_khtml_load_url (engine, osb_browser_config_get_string (self, URL_HOME));  osb_browser_update_ui(self, engine);}voidon_exec_clicked                        (GtkButton       *button,                                        gpointer         user_data){ OSBBrowser* self = OSB_BROWSER (user_data); GtkEntry *entry = GTK_ENTRY (glade_xml_get_widget (self->_priv->xml, "location")); g_signal_emit_by_name (entry, "activate", user_data);}voidon_location_activate           (GtkEntry        *entry,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML *engine = osb_browser_get_active_engine (self);    gchar* loc = normalize_filename(gtk_entry_get_text (entry));  if (loc) {    gtk_khtml_load_url (engine, loc);   }  g_free(loc);}gbooleanon_location_key_release_event   (GtkWidget *widget,				 GdkEventKey *event,				 gpointer user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML *engine = osb_browser_get_active_engine (self);  if (event->keyval == GDK_Escape)    osb_browser_set_location (self, gtk_khtml_get_location (engine));  return FALSE;  }voidon_go_back_activate                    (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML *engine = osb_browser_get_active_engine (self);  gtk_khtml_go_back (engine);  osb_browser_update_ui(self, engine);}voidon_go_forward_activate                 (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML *engine = osb_browser_get_active_engine (self);  gtk_khtml_go_forward (engine);  osb_browser_update_ui(self, engine);}voidon_go_home_activate                    (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  gtk_khtml_load_url (engine, osb_browser_config_get_string (self, URL_HOME));  osb_browser_update_ui(self, engine);}gbooleanon_browser_delete_event                (GtkWidget       *widget,                                        GdkEvent        *event,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  self = self;  return FALSE;}voidon_browser_destroy                     (GtkObject       *object,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (object);  g_object_unref (self->_priv->xml);  self->_priv->xml = 0;    osb_browserglobal_browser_destroyed (self->_priv->global, self);}voidon_engine_container_switch_page        (GtkNotebook     *notebook,                                        GtkNotebookPage *page,                                        guint            page_num,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);    GtkKHTML* engine = GTK_KHTML (gtk_notebook_get_nth_page(self->_priv->tab, page_num));  osb_browser_update_ui(self, engine);  osb_browser_update_ui_local(self, engine);  }voidon_rendering_tree_activate             (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  osb_browser_print_render_tree(self);}gbooleanon_location_location_key_release_event (GtkWidget       *widget,                                        GdkEventKey     *event,                                        gpointer         user_data){  return FALSE;}#define TEXT_MULTIPLIER_DEF 1.0f#define TEXT_MULTIPLIER_MIN 0.3f#define TEXT_MULTIPLIER_MAX 3.0f#define TEXT_MULTIPLIER_STEP 0.2fvoidon_view_zoom_in_activate               (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  gfloat mult =    gtk_khtml_get_text_multiplier(engine);    if (mult < TEXT_MULTIPLIER_MAX)        gtk_khtml_set_text_multiplier(engine, mult + TEXT_MULTIPLIER_STEP);  }voidon_view_zoom_out_activate              (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);    gfloat mult =    gtk_khtml_get_text_multiplier(engine);    if (mult > TEXT_MULTIPLIER_MIN)        gtk_khtml_set_text_multiplier(engine, mult - TEXT_MULTIPLIER_STEP);}voidon_view_zoom_default_activate          (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);      gtk_khtml_set_text_multiplier(engine, TEXT_MULTIPLIER_DEF);}voidon_find_close_clicked                  (GtkButton       *button,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);    GtkDialog *find = GTK_DIALOG (glade_xml_get_widget (self->_priv->xml, "find"));  gtk_widget_hide (GTK_WIDGET (find));  g_warning("close");}voidon_find_find_clicked                   (GtkButton       *button,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  GtkKHTML* engine = osb_browser_get_active_engine(self);  gboolean found = FALSE;  GtkEntry *find_entry = GTK_ENTRY (glade_xml_get_widget (self->_priv->xml, "find_entry"));  GtkToggleButton *find_dir_down = GTK_TOGGLE_BUTTON (glade_xml_get_widget (self->_priv->xml, "find_dir_down"));  GtkToggleButton *find_wrap = GTK_TOGGLE_BUTTON (glade_xml_get_widget (self->_priv->xml, "find_wrap"));  GtkToggleButton *find_case = GTK_TOGGLE_BUTTON (glade_xml_get_widget (self->_priv->xml, "find_case"));  g_warning("find");  found = gtk_khtml_find (engine,			  gtk_entry_get_text (find_entry),			  gtk_toggle_button_get_active(find_case),			  gtk_toggle_button_get_active(find_dir_down));  /* if wrap specified, try to find again */  if (!found && gtk_toggle_button_get_active(find_wrap)) {      found = gtk_khtml_find (engine,			      gtk_entry_get_text (find_entry),			      gtk_toggle_button_get_active(find_case),			      gtk_toggle_button_get_active(find_dir_down));  }  if (!found) {    GtkDialog *msg = GTK_DIALOG (gtk_message_dialog_new (GTK_WINDOW (self),							 GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,								 GTK_MESSAGE_INFO,							 GTK_BUTTONS_CLOSE,							 _("Searched text not found")));    gtk_dialog_set_default_response (msg, GTK_RESPONSE_CLOSE);    gtk_dialog_run (msg);    gtk_widget_destroy (GTK_WIDGET (msg));  }}voidon_edit_find_activate                  (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);    GtkDialog *find = GTK_DIALOG (glade_xml_get_widget (self->_priv->xml, "find"));  gtk_widget_show (GTK_WIDGET (find));}voidon_edit_find_again_activate            (GtkMenuItem     *menuitem,                                        gpointer         user_data){  OSBBrowser* self = OSB_BROWSER (user_data);  self = self;}gbooleanon_find_delete_event                   (GtkWidget       *widget,                                        GdkEvent        *event,                                        gpointer         user_data){  gtk_widget_hide (widget);  /* stop propagating*/  return TRUE;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -