📄 system.c
字号:
#include "gmclient.h"#include "stocksql.h"static GtkWidget *tmpwin;static GdkColor fontcolor;static GtkWidget *tmphost;static GtkWidget *tmpuser;static GtkWidget *tmppassword;static GtkWidget *tmpport;static GtkWidget *tmpsocket;static GtkWidget *tmpzt1;static GtkWidget *tmpzt2;static GtkWidget *tmpzt3;static GtkWidget *tmpzt4;static GtkWidget *tmpzt5;static void createColorSetPage(GtkWidget *frame);static void colorButtonClicked(GtkWidget *w,gpointer data);static void colorChangeButtonOK(GtkWidget * widget,gpointer data);static void colorClickOK(GtkWidget *widget,gpointer data);static void createFontSetPage(GtkWidget *frame);static void fontButtonClicked(GtkWidget *widget, gpointer gdata);static void fontChangeButtonOK(GtkWidget * widget,gpointer data);static void fontClickOK(GtkWidget *widget,gpointer data);static void createDatabaseSetPage(GtkWidget *frame);static void connectDatabaseClickOK(GtkWidget * widget,gpointer data);static void saveDatabaseSetClickOK(GtkWidget * widget,gpointer data);static void createDatabaseInstallPage(GtkWidget *frame);static void checkDatabaseStatus(void);static void databaseInstallClickOK(GtkWidget * widget,gpointer data);void setSystem(){ GtkWidget *tmpvbox; GtkWidget *tmpnote; GtkWidget *tmppage1,*tmppage2,*tmppage3,*tmppage4,*tmppage5; // if(!frechtblflag) return; if(readCfg()==FAIL) return; tmpwin = createWindow("系统设置",480,380,0,0,5, GTK_SIGNAL_FUNC(endProgram)); tmpvbox = createBox(tmpwin,VERTICAL,0); tmpnote=createNotebook(tmpvbox,TOP); tmppage4=addNotebookNewPage(tmpnote,"数据库设置",NULL); tmppage5=addNotebookNewPage(tmpnote,"建立数据库",NULL); tmppage1=addNotebookNewPage(tmpnote,"颜色设置",NULL); tmppage2=addNotebookNewPage(tmpnote,"字体设置",NULL); tmppage3=addNotebookNewPage(tmpnote,"参数设置",NULL); createDatabaseSetPage(tmppage4); createDatabaseInstallPage(tmppage5); createColorSetPage(tmppage1); createFontSetPage(tmppage2); gtk_grab_add(tmpwin); return; }void createColorSetPage(GtkWidget *frame){ GtkWidget *button;
GdkColor color; GtkWidget *tmptable; GtkWidget *tframe; GtkWidget *i_box2,*i_but; int mod; tmptable = createTable(frame,12,4,TRUE); for(mod=0;ca[mod].color;mod++){ if(mod<11){ tframe=createFrameFromTable(tmptable,NULL, 0,1,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN); createLabel(tframe,ca[mod].colorlabel); tframe=createFrameFromTable(tmptable,NULL, 1,2,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN); color.red=ca[mod].color->red;
color.blue=ca[mod].color->blue;
color.green=ca[mod].color->green;
button=createStyleButton(tframe,"改变颜色",color,NULL); gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (colorButtonClicked), (gpointer)ca[mod].color);
} else{ tframe=createFrameFromTable(tmptable,NULL, 2,3,mod-11,mod-10,0,0,GTK_SHADOW_ETCHED_IN); createLabel(tframe,ca[mod].colorlabel); tframe=createFrameFromTable(tmptable,NULL, 3,4,mod-11,mod-10,0,0,GTK_SHADOW_ETCHED_IN); color.red=ca[mod].color->red;
color.blue=ca[mod].color->blue;
color.green=ca[mod].color->green;
button=createStyleButton(tframe,"改变颜色",color,NULL); gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC(colorButtonClicked), (gpointer)ca[mod].color);
} } i_box2 = gtk_hbutton_box_new(); gtk_button_box_set_layout(GTK_BUTTON_BOX(i_box2), SPREAD); gtk_button_box_set_spacing(GTK_BUTTON_BOX(i_box2), 10); gtk_table_attach(GTK_TABLE(tmptable),i_box2, 0,4,11,12, GTK_EXPAND |GTK_SHRINK, GTK_EXPAND |GTK_SHRINK, 0,0); gtk_widget_show(i_box2); i_but = gtk_button_new_with_label("确 定"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(colorClickOK),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but); i_but = gtk_button_new_with_label("应 用"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(colorChangeButtonOK),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but); i_but = gtk_button_new_with_label("取 消"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(endProgram),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but);}void colorButtonClicked(GtkWidget *widget,gpointer data){ GtkStyle *style;
GdkColor color;
GdkColor *c; c=(GdkColor *)data; /* --- Call the color dialog to get a color --- */
getDialogColor (&color);
// printf("color: %X %X %X",color.red,color.blue,color.green); /* --- Create a style based on the color --- */
style = newStyle (color,NULL);
/* --- Set the style of the wiget based on that new style */
setStyleRecursively (widget, (gpointer) style);
c->pixel=color.pixel; c->red=color.red; c->green=color.green; c->blue=color.blue; return;}void colorChangeButtonOK(GtkWidget * widget,gpointer data){ changeAllPenColor(); Repaint(); writeCfg(); }void colorClickOK(GtkWidget *widget,gpointer data){ changeAllPenColor(); Repaint(); writeCfg(); gtk_widget_destroy(widget); }void createFontSetPage(GtkWidget *frame){ GtkWidget *button;
GtkWidget *tmptable; GtkWidget *tframe; GtkWidget *i_box2,*i_but; int mod; tmptable = createTable(frame,4,2,TRUE); for(mod=0;fa[mod].font;mod++){ tframe=createFrameFromTable(tmptable,NULL, 0,1,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN); createLabel(tframe,fa[mod].fontlabel); tframe=createFrameFromTable(tmptable,NULL, 1,2,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN); fontcolor.red=0xffff;
fontcolor.blue=0xffff;
fontcolor.green=0xffff;
button=createStyleButton(tframe," 改变字体 ", fontcolor,NULL); gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (fontButtonClicked), (gpointer)fa[mod].font);
} i_box2 = gtk_hbutton_box_new(); gtk_button_box_set_layout(GTK_BUTTON_BOX(i_box2), SPREAD); gtk_button_box_set_spacing(GTK_BUTTON_BOX(i_box2), 10); gtk_table_attach(GTK_TABLE(tmptable),i_box2, 0,2,3,4, GTK_EXPAND |GTK_SHRINK, GTK_EXPAND |GTK_SHRINK, 0,0); gtk_widget_show(i_box2); i_but = gtk_button_new_with_label("确 定"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(fontClickOK),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but); i_but = gtk_button_new_with_label("应 用"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(fontChangeButtonOK),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but); i_but = gtk_button_new_with_label("取 消"); gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked", GTK_SIGNAL_FUNC(endProgram),GTK_OBJECT(tmpwin)); gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0); gtk_widget_show(i_but);}void fontButtonClicked(GtkWidget *widget, gpointer gdata){ GtkStyle *style;
char *f; char *szFont;
GdkFont *font;
/* --- Call the font dialog to get a font --- */
szFont = GetFont ();
// printf ("GetFont=%s\n", szFont);
if(!szFont) return; f=(char *)gdata; font = gdk_font_load (szFont);
strcpy(f,szFont); g_free (szFont);
// printf ("fa font=%s\n", fa[0].font);
/* --- Create a style based on the font --- */
style = newStyle (fontcolor,font);
/* --- Set the style of the wiget based on that new style */
setStyleRecursively (widget, (gpointer) style);
}void fontChangeButtonOK(GtkWidget * widget,gpointer data){ changeAllFont(); Repaint(); writeCfg();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -