ekg2
|
00001 #include <gtk/gtkwidget.h> 00002 #include <gtk/gtkcontainer.h> 00003 #include <gtk/gtksignal.h> 00004 00005 #include <ekg/plugins.h> 00006 00007 extern int ui_quit; 00008 00009 extern plugin_t gtk_plugin; 00010 00011 typedef struct { 00012 GtkWidget 00013 *xtext, *vscrollbar, *window, /* toplevel */ 00014 *topic_entry, *note_book, *main_table, *user_tree, /* GtkTreeView */ 00015 *user_box, /* userlist box */ 00016 *dialogbutton_box, *topicbutton_box, 00017 *topic_bar, *hpane_left, *hpane_right, *vpane_left, *vpane_right, *menu, *bar, /* connecting progress bar */ 00018 *nick_box, /* contains label to the left of input_box */ 00019 *nick_label, *op_xpm, /* icon to the left of nickname */ 00020 *namelistinfo, /* label above userlist */ 00021 *input_box; 00022 00023 #define MENU_ID_NUM 12 00024 GtkWidget *menu_item[MENU_ID_NUM + 1]; /* some items we may change state of */ 00025 00026 void *chanview; /* chanview.h */ 00027 00028 int pane_left_size; /*last position of the pane */ 00029 int pane_right_size; 00030 00031 guint16 is_tab; /* is tab or toplevel? */ 00032 guint16 ul_hidden; /* userlist hidden? */ 00033 } gtk_window_ui_t; 00034 00035 typedef struct { 00036 gtk_window_ui_t *gui; 00037 00038 void *tab; /* (chan *) */ 00039 00040 /* information stored when this tab isn't front-most */ 00041 void *user_model; /* for filling the GtkTreeView */ 00042 void *buffer; /* xtext_Buffer */ 00043 gfloat old_ul_value; /* old userlist value (for adj) */ 00044 } gtk_window_t; 00045 00046 00047 /* config */ 00048 extern int mainwindow_width_config; 00049 extern int mainwindow_height_config; 00050 extern int gui_pane_left_size_config; 00051 extern int gui_tweaks_config; 00052 extern int tab_small_config; 00053 extern int tab_pos_config; 00054 extern int max_auto_indent_config; 00055 extern int thin_separator_config; 00056 00057 extern int show_marker_config; 00058 extern int tint_red_config; 00059 extern int tint_green_config; 00060 extern int tint_blue_config; 00061 extern int transparent_config; 00062 extern int wordwrap_config; 00063 extern int indent_nicks_config; 00064 extern int show_separator_config; 00065 extern char *font_normal_config; 00066 extern int transparent_config; 00067 00068 extern int gui_ulist_pos_config; 00069 extern int tab_pos_config; 00070 00071 extern int tab_layout_config; 00072 extern int contacts_config; 00073 extern int backlog_size_config; 00074 00075 extern int gui_pane_left_size_config; 00076 extern int gui_pane_right_size_config; 00077 00078 extern int new_window_in_tab_config; 00079 00080 #define hidemenu_config 0 00081 #define topicbar_config 1 00082 00083 #define mainwindow_left_config 0 00084 #define mainwindow_top_config 0 00085 #define newtabstofront_config 2 00086 00087 #define gtk_private_ui(w) (((gtk_window_t*) w->priv_data)->gui) 00088 #define gtk_private(w) ((gtk_window_t*) w->priv_data) 00089 00090 #define gui_win_state_config 0 00091 00092 #define truncchans_config 20 00093 #define tab_sort_config 1 00094 #define style_namelistgad_config 0 00095 00096 #define chanmodebuttons_config -1 00097 #define gui_quit_dialog_config -1 00098 00099 #define FOCUS_NEW_ALL 1 00100 #define FOCUS_NEW_ONLY_ASKED 2 00101 00102 #define paned_userlist_config 0 /* XXX xchat def: 1 */ 00103 #define style_inputbox_config 0 /* XXX xchat commented def: 1 */ 00104 00105 extern int gtk_ui_window_switch_lock;