Beispiel #1
0
static GtkWidget * create_credits_notebook (const char * const * credits,
 const char * const * translators)
{
    const char * titles[2] = {_("Credits"), _("Translators")};
    const char * const * lists[2] = {credits, translators};

    GtkWidget * notebook = gtk_notebook_new ();

    for (int i = 0; i < 2; i ++)
    {
        GtkWidget * label = gtk_label_new (titles[i]);

        GtkWidget * scrolled = gtk_scrolled_window_new (NULL, NULL);
        gtk_scrolled_window_set_shadow_type ((GtkScrolledWindow *) scrolled,
         GTK_SHADOW_IN);
        gtk_widget_set_size_request (scrolled, -1, 200);

        GtkWidget * text = gtk_text_view_new_with_buffer (create_text_buffer (lists[i]));
        gtk_text_view_set_editable ((GtkTextView *) text, FALSE);
        gtk_text_view_set_cursor_visible ((GtkTextView *) text, FALSE);
        gtk_text_view_set_left_margin ((GtkTextView *) text, 6);
        gtk_text_view_set_right_margin ((GtkTextView *) text, 6);
        gtk_container_add ((GtkContainer *) scrolled, text);

        gtk_notebook_append_page ((GtkNotebook *) notebook, scrolled, label);
    }

    return notebook;
}
Beispiel #2
0
GtkWidget *create_main_view()
{
	gint nmenu_items;	
	gint i;

	LOG(LOG_DEBUG, "IN : create_main_view()");

	dict_scroll = gtk_scrolled_window_new (NULL, NULL);
	gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (dict_scroll),
					GTK_POLICY_AUTOMATIC,
					GTK_POLICY_AUTOMATIC);


	create_text_buffer();

	main_view = gtk_text_view_new_with_buffer(text_buffer);

	// You must continue to grab event.
	// Otherwise, event stops when the cursor is at the area with no character.
	g_signal_connect(G_OBJECT(main_view),"motion_notify_event",
			 G_CALLBACK(motion_notify_event), (gpointer)NULL);
	
	g_signal_connect(G_OBJECT(main_view),"button_press_event",
			 G_CALLBACK(button_press_event), (gpointer)NULL);

	g_signal_connect(G_OBJECT(main_view),"leave_notify_event",
			 G_CALLBACK(leave_notify_event), (gpointer)NULL);

	
	gtk_text_view_set_editable(GTK_TEXT_VIEW(main_view), FALSE);
	gtk_text_view_set_left_margin(GTK_TEXT_VIEW(main_view), 10);
	gtk_text_view_set_right_margin(GTK_TEXT_VIEW(main_view), 10);
	gtk_text_view_set_pixels_inside_wrap(GTK_TEXT_VIEW(main_view), line_space);
	gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(main_view), FALSE);
	gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(main_view), GTK_WRAP_WORD);
	gtk_text_view_set_border_window_size(GTK_TEXT_VIEW(main_view), GTK_TEXT_WINDOW_LEFT, 1);
	gtk_text_view_set_border_window_size(GTK_TEXT_VIEW(main_view), GTK_TEXT_WINDOW_RIGHT, 1);
	gtk_text_view_set_border_window_size(GTK_TEXT_VIEW(main_view), GTK_TEXT_WINDOW_TOP, 1);
	gtk_text_view_set_border_window_size(GTK_TEXT_VIEW(main_view), GTK_TEXT_WINDOW_BOTTOM, 1);

	if(line_space < 1)
		line_space = 3;

	gtk_text_view_set_pixels_above_lines(GTK_TEXT_VIEW(main_view), line_space);


	gtk_container_add (GTK_CONTAINER (dict_scroll), main_view);

	nmenu_items = sizeof (text_menu_items) / sizeof (text_menu_items[0]);
	for(i=0 ; i<nmenu_items ; i++){
		text_menu_items[i].path = _(text_menu_items[i].path);
	}
	text_item_factory = gtk_item_factory_new (GTK_TYPE_MENU, "<text>", 
						  NULL);
	gtk_item_factory_create_items (text_item_factory, nmenu_items, 
				       text_menu_items, NULL);


	LOG(LOG_DEBUG, "OUT : create_main_view()");
	return(dict_scroll);
}