Esempio n. 1
0
static void
gtk_search_entry_init (GtkSearchEntry *entry)
{
  g_signal_connect (entry, "changed",
                    G_CALLBACK (search_entry_changed_cb), NULL);
  g_signal_connect (entry, "icon-release",
                    G_CALLBACK (search_entry_clear_cb), NULL);

  search_entry_changed_cb (GTK_ENTRY (entry), NULL);
}
Esempio n. 2
0
static void
ephy_find_toolbar_init (EphyFindToolbar *toolbar)
{
	GtkWidget *box;
	GtkSizeGroup *size_group;

	size_group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);

	box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
	gtk_style_context_add_class (gtk_widget_get_style_context (box),
				     GTK_STYLE_CLASS_RAISED);
	gtk_style_context_add_class (gtk_widget_get_style_context (box),
				     GTK_STYLE_CLASS_LINKED);
	gtk_container_add (GTK_CONTAINER (toolbar), box);

	toolbar->entry = gtk_entry_new ();
	gtk_entry_set_width_chars (GTK_ENTRY (toolbar->entry), 32);
	gtk_entry_set_max_length (GTK_ENTRY (toolbar->entry), 512);
	gtk_entry_set_placeholder_text (GTK_ENTRY (toolbar->entry), _("Type to search…"));
	gtk_container_add (GTK_CONTAINER (box), toolbar->entry);

	/* Prev */
	toolbar->prev = gtk_button_new_from_icon_name ("go-up-symbolic", GTK_ICON_SIZE_MENU);
	gtk_widget_set_tooltip_text (toolbar->prev,
				     _("Find previous occurrence of the search string"));
	gtk_container_add (GTK_CONTAINER (box), toolbar->prev);
	gtk_widget_show_all (toolbar->prev);
	gtk_widget_set_sensitive (toolbar->prev, FALSE);

	/* Next */
	toolbar->next = gtk_button_new_from_icon_name ("go-down-symbolic", GTK_ICON_SIZE_MENU);
	gtk_widget_set_tooltip_text (toolbar->next,
				     _("Find next occurrence of the search string"));
	gtk_container_add (GTK_CONTAINER (box), toolbar->next);
	gtk_widget_set_sensitive (toolbar->next, FALSE);

	gtk_size_group_add_widget (size_group, toolbar->entry);
	gtk_size_group_add_widget (size_group, toolbar->next);
	gtk_size_group_add_widget (size_group, toolbar->prev);
	g_object_unref (size_group);

	/* connect signals */
	g_signal_connect (toolbar->entry, "icon-release",
			  G_CALLBACK (search_entry_clear_cb), toolbar);
	g_signal_connect (toolbar->entry, "key-press-event",
			  G_CALLBACK (entry_key_press_event_cb), toolbar);
	g_signal_connect_after (toolbar->entry, "changed",
				G_CALLBACK (search_entry_changed_cb), toolbar);
	g_signal_connect (toolbar->entry, "activate",
			  G_CALLBACK (entry_activate_cb), toolbar);
	g_signal_connect_swapped (toolbar->next, "clicked",
				  G_CALLBACK (ephy_find_toolbar_find_next), toolbar);
	g_signal_connect_swapped (toolbar->prev, "clicked",
				  G_CALLBACK (ephy_find_toolbar_find_previous), toolbar);
	gtk_search_bar_connect_entry (GTK_SEARCH_BAR (toolbar),
				      GTK_ENTRY (toolbar->entry));

	search_entry_changed_cb (GTK_ENTRY (toolbar->entry), toolbar);

	gtk_widget_show_all (GTK_WIDGET (toolbar));
}