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

📄 widgets.c

📁 linux下电话本所依赖的一些图形库
💻 C
📖 第 1 页 / 共 2 页
字号:
  GtkWidget *align;  vbox = gtk_vbox_new (FALSE, 12);  vbox2 = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  picker = gtk_file_chooser_button_new ("File Chooser Button",		  			GTK_FILE_CHOOSER_ACTION_OPEN);  gtk_widget_set_size_request (picker, 150, -1);  gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (picker), "/etc/yum.conf");  gtk_container_add (GTK_CONTAINER (align), picker);  gtk_box_pack_start (GTK_BOX (vbox2), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox2),		      gtk_label_new ("File Button (Files)"),		      FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      vbox2, TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      gtk_hseparator_new (),		      FALSE, FALSE, 0);  vbox2 = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  picker = gtk_file_chooser_button_new ("File Chooser Button",		  			GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);  gtk_widget_set_size_request (picker, 150, -1);  gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (picker), "/");  gtk_container_add (GTK_CONTAINER (align), picker);  gtk_box_pack_start (GTK_BOX (vbox2), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox2),		      gtk_label_new ("File Button (Select Folder)"),		      FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      vbox2, TRUE, TRUE, 0);  return new_widget_info ("file-button", vbox, MEDIUM);}static WidgetInfo *create_separator (void){  GtkWidget *hbox;  GtkWidget *vbox;  vbox = gtk_vbox_new (FALSE, 3);  hbox = gtk_hbox_new (TRUE, 0);  gtk_box_pack_start (GTK_BOX (hbox),		      gtk_hseparator_new (),		      TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (hbox),		      gtk_vseparator_new (),		      TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      g_object_new (GTK_TYPE_LABEL,				    "label", "Horizontal and Vertical\nSeparators",				    "justify", GTK_JUSTIFY_CENTER,				    NULL),		      FALSE, FALSE, 0);  return new_widget_info ("separator", vbox, MEDIUM);}static WidgetInfo *create_panes (void){  GtkWidget *hbox;  GtkWidget *vbox;  GtkWidget *pane;  vbox = gtk_vbox_new (FALSE, 3);  hbox = gtk_hbox_new (TRUE, 12);  pane = gtk_hpaned_new ();  gtk_paned_pack1 (GTK_PANED (pane),		   g_object_new (GTK_TYPE_FRAME,				 "shadow", GTK_SHADOW_IN,				 NULL),		   FALSE, FALSE);  gtk_paned_pack2 (GTK_PANED (pane),		   g_object_new (GTK_TYPE_FRAME,				 "shadow", GTK_SHADOW_IN,				 NULL),		   FALSE, FALSE);  gtk_box_pack_start (GTK_BOX (hbox),		      pane,		      TRUE, TRUE, 0);  pane = gtk_vpaned_new ();  gtk_paned_pack1 (GTK_PANED (pane),		   g_object_new (GTK_TYPE_FRAME,				 "shadow", GTK_SHADOW_IN,				 NULL),		   FALSE, FALSE);  gtk_paned_pack2 (GTK_PANED (pane),		   g_object_new (GTK_TYPE_FRAME,				 "shadow", GTK_SHADOW_IN,				 NULL),		   FALSE, FALSE);  gtk_box_pack_start (GTK_BOX (hbox),		      pane,		      TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      g_object_new (GTK_TYPE_LABEL,				    "label", "Horizontal and Vertical\nPanes",				    "justify", GTK_JUSTIFY_CENTER,				    NULL),		      FALSE, FALSE, 0);  return new_widget_info ("panes", vbox, MEDIUM);}static WidgetInfo *create_frame (void){  GtkWidget *widget;  widget = gtk_frame_new ("Frame");  return new_widget_info ("frame", widget, MEDIUM);}static WidgetInfo *create_window (void){  WidgetInfo *info;  GtkWidget *widget;  widget = gtk_window_new (GTK_WINDOW_TOPLEVEL);  info = new_widget_info ("window", widget, MEDIUM);  info->include_decorations = TRUE;  gtk_window_set_title (GTK_WINDOW (info->window), "Window");  return info;}static WidgetInfo *create_colorsel (void){  WidgetInfo *info;  GtkWidget *widget;  GtkColorSelection *colorsel;  GdkColor color;  widget = gtk_color_selection_dialog_new ("Color Selection Dialog");  colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (widget)->colorsel);  color.red   = 0x7979;  color.green = 0xdbdb;  color.blue  = 0x9595;  gtk_color_selection_set_previous_color (colorsel, &color);    color.red   = 0x7d7d;  color.green = 0x9393;  color.blue  = 0xc3c3;    gtk_color_selection_set_current_color (colorsel, &color);  info = new_widget_info ("colorsel", widget, ASIS);  info->include_decorations = TRUE;  return info;}static WidgetInfo *create_fontsel (void){  WidgetInfo *info;  GtkWidget *widget;  widget = gtk_font_selection_dialog_new ("Font Selection Dialog");  info = new_widget_info ("fontsel", widget, ASIS);  info->include_decorations = TRUE;  return info;}static WidgetInfo *create_filesel (void){  WidgetInfo *info;  GtkWidget *widget;  widget = gtk_file_chooser_dialog_new ("File Chooser Dialog",					NULL,					GTK_FILE_CHOOSER_ACTION_OPEN,					GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,					GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,					NULL);   gtk_window_set_default_size (GTK_WINDOW (widget), 505, 305);    info = new_widget_info ("filechooser", widget, ASIS);  info->include_decorations = TRUE;  return info;}static WidgetInfo *create_toolbar (void){  GtkWidget *widget, *menu;  GtkToolItem *item;  widget = gtk_toolbar_new ();  item = gtk_tool_button_new_from_stock (GTK_STOCK_NEW);  gtk_toolbar_insert (GTK_TOOLBAR (widget), item, -1);  item = gtk_menu_tool_button_new_from_stock (GTK_STOCK_OPEN);  menu = gtk_menu_new ();  gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (item), menu);  gtk_toolbar_insert (GTK_TOOLBAR (widget), item, -1);  item = gtk_tool_button_new_from_stock (GTK_STOCK_REFRESH);  gtk_toolbar_insert (GTK_TOOLBAR (widget), item, -1);  gtk_toolbar_set_show_arrow (GTK_TOOLBAR (widget), FALSE);  return new_widget_info ("toolbar", widget, SMALL);}static WidgetInfo *create_menubar (void){  GtkWidget *widget, *vbox, *align, *item;  widget = gtk_menu_bar_new ();  item = gtk_menu_item_new_with_mnemonic ("_File");  gtk_menu_shell_append (GTK_MENU_SHELL (widget), item);  item = gtk_menu_item_new_with_mnemonic ("_Edit");  gtk_menu_shell_append (GTK_MENU_SHELL (widget), item);  item = gtk_menu_item_new_with_mnemonic ("_Help");  gtk_menu_shell_append (GTK_MENU_SHELL (widget), item);  vbox = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), widget);  gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      gtk_label_new ("Menu Bar"),		      FALSE, FALSE, 0);  return new_widget_info ("menubar", vbox, SMALL);}static WidgetInfo *create_message_dialog (void){  GtkWidget *widget;  widget = gtk_message_dialog_new (NULL,				   0,				   GTK_MESSAGE_INFO,				   GTK_BUTTONS_OK,				   NULL);  gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (widget),				 "<b>Message Dialog</b>\n\nWith secondary text");  return new_widget_info ("messagedialog", widget, MEDIUM);}static WidgetInfo *create_notebook (void){  GtkWidget *widget;  widget = gtk_notebook_new ();  gtk_notebook_append_page (GTK_NOTEBOOK (widget), 			    gtk_label_new ("Notebook"),			    NULL);  gtk_notebook_append_page (GTK_NOTEBOOK (widget), gtk_event_box_new (), NULL);  gtk_notebook_append_page (GTK_NOTEBOOK (widget), gtk_event_box_new (), NULL);  return new_widget_info ("notebook", widget, MEDIUM);}static WidgetInfo *create_progressbar (void){  GtkWidget *vbox;  GtkWidget *widget;  GtkWidget *align;  widget = gtk_progress_bar_new ();  gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (widget), 0.5);  vbox = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), widget);  gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      gtk_label_new ("Progress Bar"),		      FALSE, FALSE, 0);  return new_widget_info ("progressbar", vbox, SMALL);}static WidgetInfo *create_scrolledwindow (void){  GtkWidget *scrolledwin, *label;  scrolledwin = gtk_scrolled_window_new (NULL, NULL);  label = gtk_label_new ("Scrolled Window");  gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolledwin), 					 label);  return new_widget_info ("scrolledwindow", scrolledwin, MEDIUM);}static WidgetInfo *create_spinbutton (void){  GtkWidget *widget;  GtkWidget *vbox, *align;  widget = gtk_spin_button_new_with_range (0.0, 100.0, 1.0);  vbox = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), widget);  gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      gtk_label_new ("Spin Button"),		      FALSE, FALSE, 0);  return new_widget_info ("spinbutton", vbox, SMALL);}static WidgetInfo *create_statusbar (void){  WidgetInfo *info;  GtkWidget *widget;  GtkWidget *vbox, *align;  vbox = gtk_vbox_new (FALSE, 0);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), gtk_label_new ("Status Bar"));  gtk_box_pack_start (GTK_BOX (vbox),		      align,		      TRUE, TRUE, 0);  widget = gtk_statusbar_new ();  align = gtk_alignment_new (0.5, 1.0, 1.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), widget);  gtk_statusbar_set_has_resize_grip (GTK_STATUSBAR (widget), TRUE);  gtk_statusbar_push (GTK_STATUSBAR (widget), 0, "Hold on...");  gtk_box_pack_end (GTK_BOX (vbox), align, FALSE, FALSE, 0);  info = new_widget_info ("statusbar", vbox, SMALL);  gtk_container_set_border_width (GTK_CONTAINER (info->window), 0);  return info;}static WidgetInfo *create_scales (void){  GtkWidget *hbox;  GtkWidget *vbox;  vbox = gtk_vbox_new (FALSE, 3);  hbox = gtk_hbox_new (TRUE, 0);  gtk_box_pack_start (GTK_BOX (hbox),		      gtk_hscale_new_with_range (0.0, 100.0, 1.0),		      TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (hbox),		      gtk_vscale_new_with_range (0.0, 100.0, 1.0),		      TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      g_object_new (GTK_TYPE_LABEL,				    "label", "Horizontal and Vertical\nScales",				    "justify", GTK_JUSTIFY_CENTER,				    NULL),		      FALSE, FALSE, 0);  return new_widget_info ("scales", vbox, MEDIUM);}static WidgetInfo *create_image (void){  GtkWidget *widget;  GtkWidget *align, *vbox;  widget = gtk_image_new_from_stock (GTK_STOCK_DIALOG_WARNING, 				     GTK_ICON_SIZE_DND);  vbox = gtk_vbox_new (FALSE, 3);  align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);  gtk_container_add (GTK_CONTAINER (align), widget);  gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);  gtk_box_pack_start (GTK_BOX (vbox),		      gtk_label_new ("Image"),		      FALSE, FALSE, 0);  return new_widget_info ("image", vbox, SMALL);}GList *get_all_widgets (void){  GList *retval = NULL;  retval = g_list_prepend (retval, create_accel_label ());  retval = g_list_prepend (retval, create_button ());  retval = g_list_prepend (retval, create_check_button ());  retval = g_list_prepend (retval, create_color_button ());  retval = g_list_prepend (retval, create_combo_box ());  retval = g_list_prepend (retval, create_combo_box_entry ());  retval = g_list_prepend (retval, create_entry ());  retval = g_list_prepend (retval, create_font_button ());  retval = g_list_prepend (retval, create_frame ());  retval = g_list_prepend (retval, create_icon_view ());  retval = g_list_prepend (retval, create_image ());  retval = g_list_prepend (retval, create_label ());  retval = g_list_prepend (retval, create_menubar ());  retval = g_list_prepend (retval, create_message_dialog ());  retval = g_list_prepend (retval, create_notebook ());  retval = g_list_prepend (retval, create_panes ());  retval = g_list_prepend (retval, create_progressbar ());  retval = g_list_prepend (retval, create_radio ());  retval = g_list_prepend (retval, create_scales ());  retval = g_list_prepend (retval, create_scrolledwindow ());  retval = g_list_prepend (retval, create_separator ());  retval = g_list_prepend (retval, create_spinbutton ());  retval = g_list_prepend (retval, create_statusbar ());  retval = g_list_prepend (retval, create_text_view ());  retval = g_list_prepend (retval, create_toggle_button ());  retval = g_list_prepend (retval, create_toolbar ());  retval = g_list_prepend (retval, create_tree_view ());  retval = g_list_prepend (retval, create_window ());  retval = g_list_prepend (retval, create_colorsel ());  retval = g_list_prepend (retval, create_filesel ());  retval = g_list_prepend (retval, create_fontsel ());  return retval;}

⌨️ 快捷键说明

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