gui.h

来自「网络爬虫程序」· C头文件 代码 · 共 450 行

H
450
字号
/***************************************************************************//*    This code is part of WWW grabber called pavuk                        *//*    Copyright (c) 1997 - 2001 Stefan Ondrejicka                          *//*    Distributed under GPL 2 or later                                     *//***************************************************************************/#ifndef _gui_h_#define _gui_h_#ifdef GTK_FACE#include <gtk/gtk.h>#if !defined(HAVE_MT)#undef GDK_THREADS_ENTER#define GDK_THREADS_ENTER()#undef GDK_THREADS_LEAVE#define GDK_THREADS_LEAVE()#endiftypedef struct{  GdkPixmap *pixmap;  GdkBitmap *shape;} Icon;typedef struct{  GtkWidget *list;  GtkWidget *entry;} listanfo;#include "icons.h"#include "mode.h"#define GUI_TREE_RTYPE GtkCTreeNode*#define PAVUK_ABOUT     0#define PAVUK_CFGCOMM   1#define PAVUK_CFGSCH    2#define PAVUK_CFGLIM    3#define PAVUK_TREE      4#define PAVUK_SCNLD     5#define PAVUK_SCNSV     6#define PAVUK_SCNADD    7#define PAVUK_JSCONS    8#define GUI_SET_TOOLTIP(w,t) \        gtk_tooltips_set_tip(gui_cfg.help_tooltips, w, t, NULL);typedef struct{  GtkWidget *tag_patterns;  GtkWidget *rsleep;  GtkWidget *ftp_login_hs;  GtkWidget *ftp_login_hs_host;  GtkWidget *ftp_login_hs_handshake;  GtkWidget *default_prefix;  GtkWidget *ports;  GtkWidget *allow_ports;  GtkTooltips *help_tooltips;  GtkWidget *info_dir;  GtkWidget *post_update;  GtkWidget *fix_wuftpd;  GtkWidget *ftp_list_options;  GtkWidget *limit_inlines;  GtkWidget *js_transform;  GtkWidget *jst_rewrite;  GtkWidget *jst_pattern;  GtkWidget *jst_rule;  GtkWidget *jst_tag;  GtkWidget *jst_attrib;  GtkWidget *ftp_proxy_user;  GtkWidget *ftp_proxy_pass;  GtkWidget *follow_cmd;  GtkWidget *retrieve_slink;  GtkWidget *js_patterns;  GtkWidget *auth_ntlm_domain;  GtkWidget *auth_proxy_ntlm_domain;  GtkWidget *http_auth_scheme;  GtkWidget *http_proxy_auth_scheme;  GtkWidget *singlepage;  GtkWidget *dont_leave_site_dir;  GtkWidget *unique_doc;  GtkWidget *del_after;  GtkWidget *mini_toolbar;  GtkWidget *main_window_hide;  GtkWidget *watch_download;  GtkWidget *hash_size;  GtkWidget *local_ip;  GtkWidget *max_time;  GtkWidget *use_http11;  GtkWidget *site_level;  GtkWidget *debug_level_mi;  GtkWidget *debug_level_m;  GtkWidget *http_headers;/* for fnrules */  GtkWidget *rules_list;  GtkWidget *mpt_entry;  GtkWidget *rule_entry;  GtkWidget *ptrn_fnmatch;  GtkWidget *ptrn_regex;  GtkWidget *dont_touch_url_pattern;/* end for fnrules */#ifdef HAVE_REGEX  GtkWidget *aip;  GtkWidget *skipip;  GtkWidget *rpattern;  GtkWidget *skip_rpattern;  GtkWidget *url_rpattern;  GtkWidget *url_skip_rpattern;  GtkWidget *dont_touch_url_rpattern;  GtkWidget *dont_touch_tag_rpattern;#endif#ifdef HAVE_BDB_18x  GtkWidget *ns_cache_dir;  GtkWidget *moz_cache_dir;#endif#ifdef HAVE_MOZJS  GtkWidget *pjs_console_shell;#endif  GtkWidget *show_time;  GtkWidget *post_cmd;  GtkWidget *gen_logname;  GtkWidget *sched_cmd;  GtkWidget *send_if_range;  GtkWidget *remove_adv;  GtkWidget *advert_res;  GtkWidget *scheduling_strategie;  GtkWidget *auto_referer;  GtkWidget *referer;  GtkWidget *cookie_check_domain;  GtkWidget *remind_cmd;  GtkWidget *sel_to_local;  GtkWidget *all_to_local;  GtkWidget *url_to_local;  GtkWidget *all_to_remote;  GtkWidget *enable_info;  GtkWidget *enable_js;  GtkWidget *read_css;  GtkWidget *fs_quota;  GtkWidget *file_quota;  GtkWidget *trans_quota;  GtkWidget *minrate;  GtkWidget *maxrate;  GtkWidget *bufsize;  GtkWidget *use_prefs;  GtkWidget *acharset_list;  GtkWidget *identity;  GtkWidget *store_index;  GtkWidget *send_from;  GtkWidget *check_size;  GtkWidget *min_size;  GtkWidget *skip_pattern;  GtkWidget *skip_url_pattern;  GtkWidget *ftp_html;  GtkWidget *preserve_links;  GtkWidget *preserve_perm;  GtkWidget *ftp_list;  GtkWidget *index_name;  GtkWidget *store_name;  GtkAccelGroup *accel_group;  GSList *menu_gaccels;  GtkWidget *tr_del_chr;  GtkWidget *tr_str_s1;  GtkWidget *tr_str_s2;  GtkWidget *tr_chr_s1;  GtkWidget *tr_chr_s2;  GtkWidget *en_uexit;  GtkWidget *html_tags;  GtkWidget *cookie_domain_list;  GtkWidget *cookie_domain_entry;  GtkWidget *en_cookie_max;  GtkWidget *sw_cookie_update;  GtkWidget *sw_cookie_recv;  GtkWidget *sw_cookie_send;  GtkWidget *en_cookie_file;  GtkWidget *cb_comcfg;  GtkWidget *leave_level;  GtkWidget *cfg_menu;  GtkWidget *ptime;  GtkWidget *leaves_sw;  GtkWidget *leaved_sw;  GtkWidget *resched;  GtkWidget *btime_h_entry;  GtkWidget *etime_h_entry;  GtkWidget *btime_min_entry;  GtkWidget *etime_min_entry;  GtkWidget *btime_yentry;  GtkWidget *etime_yentry;  GtkWidget *btime_mon;  GtkWidget *etime_mon;  GtkWidget *btime_cal;  GtkWidget *etime_cal;  GtkWidget *btime_sw;  GtkWidget *etime_sw;  GtkWidget *selected_node;                      /*** selected tree node ***/  GUI_TREE_RTYPE root;                          /*** tree root item ***/  int endloop;                                  /*** end procesing _Xt_Serve ***/  GtkWidget *modegr[NUM_MODES];                         /*** radio group for mode selection ***/  GtkWidget *ftpmodegr[2];  GtkWidget *toplevel;                          /*** jednotlive widgety ktore potrebujeme adresovat ***/  GtkWidget *logw;  GtkWidget *logw_menu;  GtkWidget *logw_copy_me;  GtkWidget *logw_swin;  GtkAdjustment *logvadj;  GtkWidget *scn_load_shell;  GtkWidget *scn_add_shell;  GtkWidget *scn_save_shell;  GtkWidget *log_label;  GtkWidget *slog_label;  GtkWidget *base_level_label;  GtkWidget *xloglen_label;  GtkWidget *maxdoc_label;  GtkWidget *maxlev_label;  GtkWidget *maxsize_label;  GtkWidget *browser_label;  GtkWidget *ddays_label;  GtkWidget *rollback_label;  GtkWidget *oldrm_sw;  GtkWidget *mime_sw;  GtkWidget *freget_sw;  GtkWidget *noreloc_sw;  GtkWidget *gopher_sw;  GtkWidget *ftp_sw;  GtkWidget *ftpd_sw;  GtkWidget *ftp_data_sw;  GtkWidget *http_sw;  GtkWidget *cache_sw;  GtkWidget *cgi_sw;  GtkWidget *robots_sw;  GtkWidget *enc_sw;  GtkWidget *auth_sw;  GtkWidget *url_entry;  GtkWidget *url_list;  GtkWidget *formdata_entry;  GtkWidget *formdata_list;  GtkWidget *cdir_label;  GtkWidget *http_proxyh_label;  GtkWidget *http_proxyp_label;  GtkWidget *http_proxy_list;#ifdef USE_SSL  GtkWidget *ftps_sw;  GtkWidget *https_sw;  GtkWidget *ssl_proxyh_label;  GtkWidget *ssl_proxyp_label;  GtkWidget *ssl_cipher_list;  GtkWidget *ssl_version[4];  GtkWidget *ssl_cert_passwd_en;  GtkWidget *unique_sslid;#ifdef USE_SSL_IMPL_OPENSSL  GtkWidget *ssl_key_file_en;  GtkWidget *ssl_cert_file_en;#ifdef HAVE_RAND_EGD  GtkWidget *egd_socket;#endif#endif#ifdef USE_SSL_IMPL_NSS  GtkWidget *nss_cert_dir;  GtkWidget *nss_accept_unknown_cert;  GtkWidget *nss_domestic_policy;#endif#endif  GtkWidget *ftp_proxyh_label;  GtkWidget *ftp_proxyp_label;  GtkWidget *ftp_httpgw;  GtkWidget *ftp_dirtyp;  GtkWidget *gopher_proxyh_label;  GtkWidget *gopher_proxyp_label;  GtkWidget *gopher_httpgw;  GtkWidget *retry_label;  GtkWidget *redir_label;  GtkWidget *reget_label;  GtkWidget *hour_label;  GtkWidget *min_label;  GtkWidget *year_label;  GtkWidget *month_combo;  GtkWidget *auth_label;  GtkWidget *pass_label;  GtkWidget *auth_reuse_nonce;  GtkWidget *proxy_auth_label;  GtkWidget *proxy_pass_label;  GtkWidget *auth_reuse_proxy_nonce;  GtkWidget *proxy_auth_sw;  GtkWidget *from_label;  GtkWidget *subdir_label;  GtkWidget *timeout_label;  GtkWidget *config_shell;  GtkWidget *about_shell;  GtkWidget *calendar;  GtkWidget *alanglist;  GtkWidget *mimelist;  GtkWidget *amimelist;  GtkWidget *mimet_entry;  GtkWidget *prefixlist;  GtkWidget *prefix_label;  GtkWidget *prefix_sw;  GtkWidget *sufixlist;  GtkWidget *sufix_label;  GtkWidget *sufix_sw;  GtkWidget *domain_sw;  GtkWidget *domain_list;  GtkWidget *domain_entry;  GtkWidget *hosts_sw;  GtkWidget *hosts_list;  GtkWidget *hosts_entry;  GtkWidget *pattern_label;  GtkWidget *url_pattern_label;  GtkWidget *sleep_label;  GtkWidget *cfg_sch;  GtkWidget *cfg_limits;  GtkWidget *mbb_cfg;  GtkWidget *mbb_mode;  GtkWidget *bt_cfg;  GtkWidget *bt_lim;  GtkWidget *bt_bg;  GtkWidget *bt_rest;  GtkWidget *bt_start;  GtkWidget *bt_stop;  GtkWidget *bt_break;  GtkWidget *bt_exit;  GtkWidget *mea_rest;  GtkWidget *mea_start;  GtkWidget *mea_stop;  GtkWidget *mea_break;  GtkWidget *mtb_rest;  GtkWidget *mtb_start;  GtkWidget *mtb_stop;  GtkWidget *mtb_break;  GtkWidget *toolbar;  GtkWidget *minitb_label;  GtkWidget *me_debug;  GtkWidget *me_quiet;#ifdef WITH_TREE  GtkWidget *tree_widget;  GtkWidget *tree_shell;  GtkWidget *tree_help;  GtkWidget *tmenu;  GtkWidget *me_disable_url;  GtkWidget *me_enable_url;  GtkWidget *me_download_url;  GtkWidget *me_browse_url;  GtkWidget *me_prop_url;#endif#ifdef WITH_TREE  urltype_icon icon;                            /*** icons in URL tree preview ***/#endif#ifdef HAVE_MT  GtkWidget *immessages;  GtkWidget *nthr;  GtkWidget *status_list;#else  GtkWidget *status_size;  GtkWidget *status_rate;  GtkWidget *status_et;  GtkWidget *status_rt;#endif  GtkWidget *status_done;  GtkWidget *status_queue;  GtkWidget *status_fail;  GtkWidget *status_rej;  GtkWidget *status_msg;  bool_t _go_bg;} Gtk_nfo;/*** gui_tools.c ***/extern GtkWidget *guitl_timesel_new(GtkWidget **, GtkWidget **, GtkWidget **,  GtkWidget **, GtkWidget **);extern GtkWidget *guitl_tab_add_entry(GtkWidget *, char *, guint, guint,  guint);extern GtkWidget *guitl_tab_add_numentry(GtkWidget *, char *, guint, guint,  guint);extern GtkWidget *guitl_tab_add_doubleentry(GtkWidget *, char *, guint, guint,  guint, guint);extern GtkWidget *guitl_tab_add_enum(GtkWidget *, char *, guint, guint,  const char **, guint);extern GtkWidget *guitl_tab_add_path_entry_full(GtkWidget *, char *, guint,  guint, int, char *);extern GtkWidget *guitl_tab_add_path_entry(GtkWidget *, char *, guint, guint,  int);extern GtkWidget *guitl_new_edit_list(GtkWidget **, GtkWidget **, char *,  GtkWidget **, GtkWidget **, GtkWidget **, GtkWidget **, gboolean,  const char **);extern GtkWidget *guitl_pixmap_button(char **, char *, char *);extern Icon *guitl_load_pixmap(char **);extern void guitl_ListDeleteSelected(GtkObject *, gpointer);extern void guitl_ListInsertEntry(GtkObject *, gpointer);extern void guitl_ListModifyEntry(GtkObject *, gpointer);extern void guitl_ListClear(GtkObject *, gpointer);extern void guitl_ListCopyToEntry(GtkObject *, int, int, GdkEvent *,  gpointer);extern void guitl_ListInsertList(GtkObject *, gpointer);extern void guitl_PopdownW(GtkObject *, gpointer func_data);extern void guitl_menu_attach(GtkWidget *, GtkWidget *);extern GtkWidget *guitl_menu_parent(GtkWidget *);extern void guitl_set_clipboard_content(char *);extern void guitl_clist_selection_to_clipboard(GtkWidget *, GtkWidget *);extern GtkWidget *guitl_toolbar_button(GtkWidget *, char *, char *, char **,  GtkSignalFunc, gpointer, char *);extern GtkWidget *guitl_tab_add_edit_entry(GtkWidget *, char *, char *, guint,  guint, guint);/*** gui_tree.c ***/extern void gui_build_tree_preview(int);extern gint gui_tree_list_events(GtkWidget *, GdkEvent *);extern void gui_SelectTreeNode(GtkObject *, gpointer);/*** gui_sched.c ***/extern void gui_build_scheduler(int);/*** gui_scenario.c ***/extern void gui_build_scenario_loader(int);extern void gui_build_scenario_adder(int);extern void gui_build_scenario_saver(int);/*** gui_main.c ***/extern void gui_set_debug_level_mi(void);extern const GtkTargetEntry dragtypes[3];extern void gui_window_drop_url(GtkWidget *, GdkDragContext *, gint, gint,  GtkSelectionData *, guint, guint, gpointer);extern void gui_PopdownWC(GtkObject *, gpointer);extern void gui_PopupW(GtkObject *, gpointer);/*** gui_addurl.c ***/extern void gui_build_addurl(int);/*** gui_common.c ***/extern void gui_build_config_common(int);/*** gui_limits.c ***/extern void gui_build_config_limits(int);/*** gui_about.c ***/extern void gui_build_about(int);/*** gui_jscons.c ***/extern void gui_pjs_console(int);/******************************************//* global GUI configuration structructure *//******************************************/extern Gtk_nfo gui_cfg;#endif#endif

⌨️ 快捷键说明

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