📄 editmonitoroption.c
字号:
#include "editMonitorOption.h"GtkWidget *dialog;struct checkButton{ GtkWidget *checkHTTP; GtkWidget *checkDNS; GtkWidget *checkPOP3; GtkWidget *checkSMTP; GtkWidget *checkDHCP;};void okCallOpt(GtkWidget *button,gpointer data){ struct checkButton *tmp = (struct checkButton*)data; HTTPrun = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(tmp->checkHTTP)); DNSrun = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(tmp->checkDNS)); POP3run = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(tmp->checkPOP3)); SMTPrun = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(tmp->checkSMTP)); gtk_widget_destroy(dialog);}void cancelCallOpt(GtkWidget *button,gpointer data){ gtk_widget_destroy(dialog);}GtkWidget* subFun(GtkWidget *vbox,GtkWidget *hbox,GtkWidget *checkpro,char *s,int run){ hbox = gtk_hbox_new(FALSE,10); gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,10); checkpro = gtk_check_button_new_with_label(s); if (run) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkpro),TRUE); gtk_box_pack_start(GTK_BOX(hbox),checkpro,FALSE,FALSE,10); return checkpro;}void editMonitorOption(GtkObject *window,gpointer data){ GtkWidget *vbox; GtkWidget *hbox; GtkWidget *label; GtkWidget *ok; GtkWidget *cancel; struct checkButton *pcheck = (struct checkButton*)malloc(sizeof(struct checkButton)); dialog = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_default_size(GTK_WINDOW(dialog),200,200); gtk_window_set_position(GTK_WINDOW(dialog),GTK_WIN_POS_CENTER); gtk_window_set_title(GTK_WINDOW(dialog),"Monitor Option"); vbox = gtk_vbox_new(FALSE,10); gtk_container_add(GTK_CONTAINER(dialog),vbox); /*label*/ hbox = gtk_hbox_new(FALSE,10); gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,10); label = gtk_label_new("Monitor Option"); gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,10); /*TODO*/ /*HTTP*/ pcheck->checkHTTP = subFun(vbox,hbox,pcheck->checkHTTP,"HTTP",HTTPrun); /*DNS*/ pcheck->checkDNS = subFun(vbox,hbox,pcheck->checkDNS,"DNS ",DNSrun); /*POP3*/ pcheck->checkPOP3 = subFun(vbox,hbox,pcheck->checkPOP3,"POP3",POP3run); /*SMTP*/ pcheck->checkSMTP = subFun(vbox,hbox,pcheck->checkSMTP,"SMTP",SMTPrun); /*BUTTON*/ hbox =gtk_hbox_new(FALSE,10); gtk_box_pack_start(GTK_BOX(vbox),hbox,TRUE,TRUE,10); ok = gtk_button_new_with_label("OK"); g_signal_connect(GTK_OBJECT(ok),"clicked",G_CALLBACK(okCallOpt),pcheck); gtk_box_pack_start(GTK_BOX(hbox),ok,FALSE,FALSE,10); cancel = gtk_button_new_with_label("Cancel"); g_signal_connect(GTK_OBJECT(cancel),"clicked",G_CALLBACK(cancelCallOpt),pcheck); gtk_box_pack_start(GTK_BOX(hbox),cancel,FALSE,FALSE,10); gtk_widget_show_all(dialog);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -