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

📄 prefs.cc

📁 一个功能比较强的下载软件
💻 CC
📖 第 1 页 / 共 5 页
字号:
	g_signal_connect(G_OBJECT(D4XPWS.clipboard_monitor),			   "clicked",			   G_CALLBACK(d4x_prefs_toggle_clipboard_monitor),NULL);		GtkWidget *prefs_other_scbox=gtk_vbox_new(FALSE,0);	D4XPWS.clipboard_skip=my_gtk_combo_new(ALL_HISTORIES[SKIP_HISTORY]);	text_to_combo(D4XPWS.clipboard_skip,TMPCFG.SKIP_IN_CLIPBOARD);	D4XPWS.clipboard_skip_button=gtk_radio_button_new_with_label((GSList *)NULL,								     _("Skip these extensions in clipboard"));	gtk_box_pack_start(GTK_BOX(prefs_other_scbox),D4XPWS.clipboard_skip_button,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_other_scbox),D4XPWS.clipboard_skip,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_other_scbox,FALSE,FALSE,0);	D4XPWS.clipboard_catch=my_gtk_combo_new(ALL_HISTORIES[SKIP_HISTORY]);	text_to_combo(D4XPWS.clipboard_catch,TMPCFG.CATCH_IN_CLIPBOARD);	D4XPWS.clipboard_catch_button=gtk_radio_button_new_with_label(gtk_radio_button_get_group(GTK_RADIO_BUTTON(D4XPWS.clipboard_skip_button)),							  _("Catch these extensions in clipboard"));	prefs_other_scbox=gtk_vbox_new(FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_other_scbox),D4XPWS.clipboard_catch_button,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_other_scbox),D4XPWS.clipboard_catch,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_other_scbox,FALSE,FALSE,0);	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(D4XPWS.clipboard_monitor),TMPCFG.CLIPBOARD_MONITOR);	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(D4XPWS.clipboard_skip_button),!TMPCFG.CLIPBOARD_SKIP_OR_CATCH);	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(D4XPWS.clipboard_catch_button),TMPCFG.CLIPBOARD_SKIP_OR_CATCH);	d4x_prefs_toggle_clipboard_monitor(D4XPWS.clipboard_monitor);		gtk_widget_show_all(vbox);};static void d4x_prefs_toggle_save_log(GtkWidget *parent) {	gtk_widget_set_sensitive(D4XPWS.log_append,GTK_TOGGLE_BUTTON(parent)->active);	gtk_widget_set_sensitive(D4XPWS.log_fsize,GTK_TOGGLE_BUTTON(parent)->active);	gtk_widget_set_sensitive(D4XPWS.log_fslabel,GTK_TOGGLE_BUTTON(parent)->active);	gtk_widget_set_sensitive(D4XPWS.log_rewrite,GTK_TOGGLE_BUTTON(parent)->active);	gtk_widget_set_sensitive(D4XPWS.log_save_path,GTK_TOGGLE_BUTTON(parent)->active);};void d4x_prefs_main_log(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("Main log"));	GtkWidget *prefs_limits_mlbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(prefs_limits_mlbox),5);	D4XPWS.log_length=my_gtk_entry_new_with_max_length(4,TMPCFG.MAX_MAIN_LOG_LENGTH);	gtk_box_pack_start(GTK_BOX(prefs_limits_mlbox),D4XPWS.log_length,FALSE,FALSE,0);	GtkWidget *prefs_limits_mllabel=gtk_label_new(_("Maximum lines in MAIN log"));	gtk_box_pack_start(GTK_BOX(prefs_limits_mlbox),prefs_limits_mllabel,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_limits_mlbox,FALSE,FALSE,0);		D4XPWS.log_detailed=gtk_check_button_new_with_label(_("Output detailed information"));	GTK_TOGGLE_BUTTON(D4XPWS.log_detailed)->active=TMPCFG.MAIN_LOG_DETAILED;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.log_detailed,FALSE,FALSE,0);	D4XPWS.log_save=gtk_check_button_new_with_label(_("Save main log into file"));	GTK_TOGGLE_BUTTON(D4XPWS.log_save)->active=TMPCFG.SAVE_MAIN_LOG;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.log_save,FALSE,FALSE,0);	g_signal_connect(G_OBJECT(D4XPWS.log_save),"clicked",G_CALLBACK(d4x_prefs_toggle_save_log),NULL);	D4XPWS.log_save_path=my_gtk_filesel_new(ALL_HISTORIES[LOG_HISTORY]);	MY_GTK_FILESEL(D4XPWS.log_save_path)->modal=GTK_WINDOW(d4x_prefs_window);	if (TMPCFG.SAVE_LOG_PATH)		text_to_combo(MY_GTK_FILESEL(D4XPWS.log_save_path)->combo,TMPCFG.SAVE_LOG_PATH);	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.log_save_path,FALSE,FALSE,0);	char temp[MAX_LEN];	GtkWidget *prefs_log_mlfbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(prefs_log_mlfbox),5);	D4XPWS.log_fsize=gtk_entry_new();	gtk_entry_set_max_length(GTK_ENTRY(D4XPWS.log_fsize),9);	gtk_widget_set_size_request(D4XPWS.log_fsize,80,-1);	sprintf(temp,"%li",TMPCFG.MAIN_LOG_FILE_LIMIT);	gtk_entry_set_text(GTK_ENTRY(D4XPWS.log_fsize),temp);	gtk_box_pack_start(GTK_BOX(prefs_log_mlfbox),D4XPWS.log_fsize,FALSE,FALSE,0);	D4XPWS.log_fslabel=gtk_label_new(_("Maximum size for file of main log (in KBytes)"));	gtk_box_pack_start(GTK_BOX(prefs_log_mlfbox),D4XPWS.log_fslabel,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_log_mlfbox,FALSE,FALSE,0);	GtkWidget *hboxtemp=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(hboxtemp),5);	D4XPWS.log_append=gtk_radio_button_new_with_label((GSList *)NULL,_("Append to file"));	gtk_box_pack_start(GTK_BOX(hboxtemp),D4XPWS.log_append,FALSE,FALSE,0);	GSList *other_group=gtk_radio_button_get_group(GTK_RADIO_BUTTON(D4XPWS.log_append));	D4XPWS.log_rewrite=gtk_radio_button_new_with_label(other_group,_("Overwrite file"));	gtk_box_pack_start(GTK_BOX(hboxtemp),D4XPWS.log_rewrite,FALSE,FALSE,0);	GTK_TOGGLE_BUTTON(D4XPWS.log_append)->active=TMPCFG.APPEND_REWRITE_LOG;	GTK_TOGGLE_BUTTON(D4XPWS.log_rewrite)->active=!TMPCFG.APPEND_REWRITE_LOG;	gtk_box_pack_start(GTK_BOX(vbox),hboxtemp,FALSE,FALSE,0);	d4x_prefs_toggle_save_log(D4XPWS.log_save);	gtk_widget_show_all(vbox);};static void d4x_prefs_toggle_exit_complete(GtkWidget *parent) {	gtk_widget_set_sensitive(D4XPWS.exit_complete_time,GTK_TOGGLE_BUTTON(parent)->active);};void d4x_prefs_integration(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("Integration"));		D4XPWS.exit_complete=gtk_check_button_new_with_label(_("Exit if nothing to do after"));	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(D4XPWS.exit_complete),TMPCFG.EXIT_COMPLETE);	g_signal_connect(G_OBJECT(D4XPWS.exit_complete),"clicked",G_CALLBACK(d4x_prefs_toggle_exit_complete),NULL);	D4XPWS.exit_complete_time=my_gtk_entry_new_with_max_length(3,TMPCFG.EXIT_COMPLETE_TIME);	GtkWidget *prefs_common_hbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(prefs_common_hbox),5);	GtkWidget *prefs_common_label=gtk_label_new(_("minutes"));	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),D4XPWS.exit_complete,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),D4XPWS.exit_complete_time,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),prefs_common_label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_common_hbox,FALSE,FALSE,0);	d4x_prefs_toggle_exit_complete(D4XPWS.exit_complete);	GtkWidget *prefs_other_ebox=gtk_vbox_new(FALSE,0);	D4XPWS.exec_on_exit=my_gtk_filesel_new(ALL_HISTORIES[EXEC_HISTORY]);	MY_GTK_FILESEL(D4XPWS.exec_on_exit)->modal=GTK_WINDOW(d4x_prefs_window);	text_to_combo(MY_GTK_FILESEL(D4XPWS.exec_on_exit)->combo,TMPCFG.EXEC_WHEN_QUIT);	GtkWidget *prefs_other_elabel=gtk_label_new(_("Run this on exit"));	gtk_box_pack_start(GTK_BOX(prefs_other_ebox),prefs_other_elabel,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_other_ebox),D4XPWS.exec_on_exit,TRUE,TRUE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_other_ebox,FALSE,FALSE,0);	D4XPWS.dnd_dialog=gtk_check_button_new_with_label(_("Open dialog for Drag-n-Drop"));	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.dnd_dialog,FALSE,FALSE,0);	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(D4XPWS.dnd_dialog),TMPCFG.NEED_DIALOG_FOR_DND);	gtk_widget_show_all(vbox);};static void d4x_prefs_toggle_save_list(GtkWidget *parent) {	gtk_widget_set_sensitive(D4XPWS.save_list_entry,GTK_TOGGLE_BUTTON(parent)->active);};void d4x_prefs_main(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("Main"));	GtkWidget *prefs_limits_tbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(prefs_limits_tbox),5);	D4XPWS.save_list_check=gtk_check_button_new_with_label(_("Save list of downloads every"));	g_signal_connect(G_OBJECT(D4XPWS.save_list_check),"clicked",G_CALLBACK(d4x_prefs_toggle_save_list),NULL);	GTK_TOGGLE_BUTTON(D4XPWS.save_list_check)->active=TMPCFG.SAVE_LIST;	D4XPWS.save_list_entry=my_gtk_entry_new_with_max_length(3,TMPCFG.SAVE_LIST_INTERVAL);	GtkWidget *prefs_common_hbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(prefs_common_hbox),5);	GtkWidget *prefs_common_label=gtk_label_new(_("minutes"));	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),D4XPWS.save_list_check,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),D4XPWS.save_list_entry,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(prefs_common_hbox),prefs_common_label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),prefs_common_hbox,FALSE,FALSE,0);	d4x_prefs_toggle_save_list(D4XPWS.save_list_check);		D4XPWS.allow_force_run=gtk_check_button_new_with_label(_("Allow to user force run downloads"));	D4XPWS.remember_pass=gtk_check_button_new_with_label(_("Remember passwords"));	D4XPWS.description=gtk_check_button_new_with_label(_("Write Descript.ion file"));	GTK_TOGGLE_BUTTON(D4XPWS.allow_force_run)->active=TMPCFG.ALLOW_FORCE_RUN;	GTK_TOGGLE_BUTTON(D4XPWS.remember_pass)->active=TMPCFG.REMEMBER_PASS;	GTK_TOGGLE_BUTTON(D4XPWS.description)->active=TMPCFG.WRITE_DESCRIPTION;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.allow_force_run,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.remember_pass,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.description,FALSE,FALSE,0);#include "pixmaps/speed1.xpm"#include "pixmaps/speed2.xpm"	GtkWidget *label=gtk_label_new(_("bytes/sec speed level one (red button)"));	GtkWidget *hbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(hbox),5);	D4XPWS.speed_limit_1=my_gtk_entry_new_with_max_length(6,TMPCFG.SPEED_LIMIT_1);	gtk_box_pack_start(GTK_BOX(hbox),new_pixmap(speed1_xpm,NULL),FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(hbox),D4XPWS.speed_limit_1,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);	label=gtk_label_new(_("bytes/sec speed level two (yellow button)"));	hbox=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(hbox),5);	D4XPWS.speed_limit_2=my_gtk_entry_new_with_max_length(6,TMPCFG.SPEED_LIMIT_2);	gtk_box_pack_start(GTK_BOX(hbox),new_pixmap(speed2_xpm,NULL),FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(hbox),D4XPWS.speed_limit_2,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);	//	GTK_TOGGLE_BUTTON(D4XPWS.)->active=TMPCFG.;	gtk_widget_show_all(vbox);};void d4x_prefs_search(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("FTP search"));	GtkWidget *box=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(box),5);	D4XPWS.search_ping_times=my_gtk_entry_new_with_max_length(3,TMPCFG.SEARCH_PING_TIMES);	gtk_box_pack_start(GTK_BOX(box),D4XPWS.search_ping_times,FALSE,FALSE,0);	GtkWidget *label=gtk_label_new(_("Number of attempts to ping hosts"));	gtk_box_pack_start(GTK_BOX(box),label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),box,FALSE,FALSE,0);	box=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(box),5);	D4XPWS.search_entries=my_gtk_entry_new_with_max_length(3,TMPCFG.SEARCH_ENTRIES);	gtk_box_pack_start(GTK_BOX(box),D4XPWS.search_entries,FALSE,FALSE,0);	label=gtk_label_new(_("Number of hosts in list"));	gtk_box_pack_start(GTK_BOX(box),label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),box,FALSE,FALSE,0);	int count=D4X_SEARCH_ENGINES.count();	if (count==0) count++;	char **labels=new char*[count];	D4X_SEARCH_ENGINES.names2array(labels);	D4XPWS.search_host=gtk_option_menu_new();	GtkWidget *menu=gtk_menu_new ();	GtkWidget *menu_item;	GSList *group=(GSList *)NULL;	gint i;	for (i = 0; (unsigned int)i <count; i++){		menu_item = gtk_radio_menu_item_new_with_label (group, labels[i]);		group = gtk_radio_menu_item_group (GTK_RADIO_MENU_ITEM (menu_item));		gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);		if (i==TMPCFG.SEARCH_HOST)			gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM (menu_item), TRUE);		gtk_widget_show(menu_item);	};	delete[] labels;	gtk_option_menu_set_menu (GTK_OPTION_MENU (D4XPWS.search_host), menu);	gtk_option_menu_set_history (GTK_OPTION_MENU (D4XPWS.search_host),TMPCFG.SEARCH_HOST);	box=gtk_hbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(box),5);	label=gtk_label_new(_("search engine to use"));	gtk_box_pack_start(GTK_BOX(box),D4XPWS.search_host,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(box),label,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),box,FALSE,FALSE,0);	gtk_widget_show_all(vbox);};void d4x_prefs_interface(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("Interface"));	D4XPWS.dnd_trash=gtk_check_button_new_with_label(_("Show DnD basket"));	D4XPWS.fixed_font_log=gtk_check_button_new_with_label(_("Use fixed font in logs"));	GTK_TOGGLE_BUTTON(D4XPWS.dnd_trash)->active=TMPCFG.DND_TRASH;	GTK_TOGGLE_BUTTON(D4XPWS.fixed_font_log)->active=TMPCFG.FIXED_LOG_FONT;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.dnd_trash,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.fixed_font_log,FALSE,FALSE,0);	gtk_widget_show_all(vbox);};static gint d4x_prefs_reset_colors(){	my_gtk_colorsel_set_color(MY_GTK_COLORSEL(D4XPWS.speed_color_back),0xFFFFFF);	my_gtk_colorsel_set_color(MY_GTK_COLORSEL(D4XPWS.speed_color_fore1),0x555555);	my_gtk_colorsel_set_color(MY_GTK_COLORSEL(D4XPWS.speed_color_fore2),0xAAAAAA);	my_gtk_colorsel_set_color(MY_GTK_COLORSEL(D4XPWS.speed_color_pick),0);	return TRUE;};void d4x_prefs_graph(){	GtkWidget *vbox=d4x_prefs_child_destroy(_("Graph"));	D4XPWS.graph_order=gtk_check_button_new_with_label(_("Revert drawing graph of speeds"));	GTK_TOGGLE_BUTTON(D4XPWS.graph_order)->active=TMPCFG.GRAPH_ORDER;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.graph_order,FALSE,FALSE,0);	D4XPWS.graph_mode=gtk_check_button_new_with_label(_("Compressed mode"));	GTK_TOGGLE_BUTTON(D4XPWS.graph_mode)->active=TMPCFG.GRAPH_MODE;	gtk_box_pack_start(GTK_BOX(vbox),D4XPWS.graph_mode,FALSE,FALSE,0);	GtkWidget *vbox_colors=gtk_vbox_new(FALSE,0);	gtk_box_set_spacing(GTK_BOX(vbox_colors),5);	D4XPWS.speed_color_pick=my_gtk_colorsel_new(TMPCFG.GRAPH_PICK,_("Color for picks"));	D4XPWS.speed_color_fore1=my_gtk_colorsel_new(TMPCFG.GRAPH_FORE1,_("Color for total speed"));	D4XPWS.speed_color_fore2=my_gtk_colorsel_new(TMPCFG.GRAPH_FORE2,_("Color for speed of selected"));	D4XPWS.speed_color_back=my_gtk_colorsel_new(TMPCFG.GRAPH_BACK,_("Background color"));	MY_GTK_COLORSEL(D4XPWS.speed_color_pick)->modal=GTK_WINDOW(d4x_prefs_window);	MY_GTK_COLORSEL(D4XPWS.speed_color_fore1)->modal=GTK_WINDOW(d4x_prefs_window);	MY_GTK_COLORSEL(D4XPWS.speed_color_fore2)->modal=GTK_WINDOW(d4x_prefs_window);	MY_GTK_COLORSEL(D4XPWS.speed_color_back)->modal=GTK_WINDOW(d4x_prefs_window);	gtk_box_pack_start(GTK_BOX(vbox_colors),D4XPWS.speed_color_back,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox_colors),D4XPWS.speed_color_fore1,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox_colors),D4XPWS.speed_color_fore2,FALSE,FALSE,0);	gtk_box_pack_start(GTK_BOX(vbox_colors),D4XPWS.speed_color_pick,FALSE,FALSE,0);	GtkWidget *button_reset=gtk_button_new_with_label(_("Reset to default"));	g_signal_connect(G_OBJECT(button_reset),"clicked",G_CALLBACK(d4x_prefs_reset_colors),NULL);	gtk_box_pack_start(GTK_BOX(vbox_colors),button_reset,FALSE,FALSE,0);	GtkWidget *frame_colors=gtk_frame_new(_("Colors for graph"));	gtk_container_set_border_width(GTK_CONTAINER(frame_colors),5);	gtk_container_add(GTK_CONTAINER(frame_colors),vbox_colors);	gtk_container_set_border_width(GTK_CONTAINER(vbox_colors),5);	gtk_box_pack_start(GTK_BOX(vbox),frame_colors,FALSE,FALSE,0);		gtk_widget_show_all(vbox);};#define SND_ENTRY_INIT(a,b) { 					\	a=my_gtk_filesel_new(ALL_HISTORIES[SOUNDS_HISTORY]);	\	gtk_widget_set_size_request(a,320,-1);				\	MY_GTK_FILESEL(a)->modal=GTK_WINDOW(d4x_prefs_window);	\	if (b)							\		text_to_combo(MY_GTK_FILESEL(a)->combo,b);	\	else							\		text_to_combo(MY_GTK_FILESEL(a)->combo,"");	\	gtk_box_pack_start(GTK_BOX(vbox),a,TRUE,FALSE,0);	\

⌨️ 快捷键说明

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