Пример #1
0
static void
button_toggled (GtkWidget           *widget,
		GtkToggleToolButton *toggle_tool_button)
{
  gboolean toggle_active;

  toggle_active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));

  if (toggle_tool_button->priv->active != toggle_active)
    {
      GtkWidget *menu_item;
      
      toggle_tool_button->priv->active = toggle_active;
       
      if ((menu_item =
	   gtk_tool_item_get_proxy_menu_item (GTK_TOOL_ITEM (toggle_tool_button), MENU_ID)))
	{
	  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menu_item),
					  toggle_tool_button->priv->active);
	}

      g_object_notify (G_OBJECT (toggle_tool_button), "active");
      g_signal_emit (toggle_tool_button, toggle_signals[TOGGLED], 0);
    }
}
Пример #2
0
static void
case_sensitive_toggled_cb (GtkWidget *check,
			   EphyFindToolbar *toolbar)
{
	gboolean case_sensitive;
	GtkWidget *proxy;

	case_sensitive = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (check));

	proxy = gtk_tool_item_get_proxy_menu_item (GTK_TOOL_ITEM (gtk_widget_get_parent (check)),
						   "menu-proxy");

	if (proxy != NULL)
	{
		g_signal_handlers_block_by_func
			(proxy, G_CALLBACK (case_sensitive_menu_toggled_cb), toolbar);

		gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (proxy),
						case_sensitive);
		g_signal_handlers_unblock_by_func
			(proxy, G_CALLBACK (case_sensitive_menu_toggled_cb), toolbar);
	}

#ifdef HAVE_WEBKIT2
        do_search (toolbar);
#else

	ephy_find_toolbar_mark_matches (toolbar);

	/*
	 * If we now use the stricter method (and are case sensitive),
	 * check that the current selection still matches. If not, find the
	 * next one.
	 * This currently requires going back and then forward, because
	 * there's no function in WebKit that would verify the current selection.
	 */
	if (case_sensitive)
	{
		EphyFindResult result;

		result = real_find (toolbar->priv, EPHY_FIND_DIRECTION_PREV);
		if (result != EPHY_FIND_RESULT_NOTFOUND)
			result = real_find (toolbar->priv,
					    EPHY_FIND_DIRECTION_NEXT);

		set_status (toolbar, result);
	}
#endif
}
Пример #3
0
JNIEXPORT jlong JNICALL
Java_org_gnome_gtk_GtkToolItem_gtk_1tool_1item_1get_1proxy_1menu_1item
(
    JNIEnv* env,
    jclass cls,
    jlong _self,
    jstring _menuItemId
)
{
    GtkWidget* result;
    jlong _result;
    GtkToolItem* self;
    const gchar* menuItemId;

    // convert parameter self
    self = (GtkToolItem*) _self;

    // convert parameter menuItemId
    menuItemId = (const gchar*) bindings_java_getString(env, _menuItemId);
    if (menuItemId == NULL) {
        return 0L; // Java Exception already thrown
    }

    // call function
    result = gtk_tool_item_get_proxy_menu_item(self, menuItemId);

    // cleanup parameter self

    // cleanup parameter menuItemId
    bindings_java_releaseString(menuItemId);

    // translate return value to JNI type
    _result = (jlong) result;

    // cleanup return value
    if (result != NULL) {
        bindings_java_memory_cleanup((GObject*)result, FALSE);
    }

    // and finally
    return _result;
}
Пример #4
0
static VALUE
rg_get_proxy_menu_item(VALUE self, VALUE menu_item_id)
{
    return GOBJ2RVAL(gtk_tool_item_get_proxy_menu_item(_SELF(self), RVAL2CSTR(menu_item_id)));
}