📄 toggle.h
字号:
/*#include<gnome.h>#include<gtk/gtk.h>#include"toggle.h"#include"main.h"#include"popmenu.h"*/int convert;int count=29;int Decrease_Time;GnomeCanvasItem*dtime;GnomeCanvasItem *text;GtkButton *button,*buttonXDYA,*buttonXYZSA,*buttonJGJA,*buttonFUA,*buttonZDA,*buttonZFA, *buttonSYA,*buttonQGJA,*buttonDDS,*buttonDDJ,*buttonGXA,*buttonDFA, *buttonSYZSA,*buttonZQA,*buttonXYA,*buttonZFK,*buttonDJA,*button13,*button14, *button15,*button16,*button17,*button18,*button19,*button20,*button21,*button22, *button23;/*功能按扭控制量*/gboolean SXZRA=FALSE;gboolean Co_XYZSA=FALSE, Co_XDYA=FALSE, Co_JGJA=FALSE, Co_FUA=FALSE, Co_ZDA=FALSE, Co_ZFA=FALSE, Co_SYA=FALSE, Co_SYZSA=FALSE, Co_QGJA=FALSE, Co_DDS=FALSE, Co_DDJ=FALSE, Co_GXA=FALSE, Co_DFA=FALSE, Co_ZQA=FALSE, Co_XYA=FALSE, Co_DJA=FALSE, Co_ZFK=FALSE;/*功能按钮返回值*/int XYZSA_COR, XDYA_COR, JGJA_COR, FUA_COR, ZDA_COR, ZFA_COR, SYA_COR, SYZSA_COR, QGJA_COR, DDS_COR, DDJ_COR, GXA_COR, DFA_COR, ZQA_COR, XYA_COR, DJA_COR, ZFK_COR;/*道岔按扭控制量*/gboolean Co_13=FALSE, Co_14=FALSE, Co_15=FALSE, Co_16=FALSE, Co_17=FALSE, Co_18=FALSE, Co_19=FALSE, Co_20=FALSE, Co_21=FALSE, Co_22=FALSE, Co_23=FALSE;/*道岔按钮返回值*/int COR_13, COR_14, COR_15, COR_16, COR_17, COR_18, COR_19, COR_20, COR_21, COR_22, COR_23;gboolean init_cor(GtkButton*button){ GdkColor dfcolor; GtkStyle *dfstyle; /* PangoFontDescription*desc;*/ /* GdkFont*desc;*/ /* GdkFont*font;*/ gint k; /* desc=pango_font_description_from_string("Simsun 10");*/ dfcolor.red=0x8E8E; dfcolor.green=0x8E8E; dfcolor.blue=0x8E8E; dfstyle=gtk_style_copy(gtk_widget_get_style(button)); /* if(dfstyle->font!=NULL) { gdk_font_unref(dfstyle->font); g_print("释放成功!\n"); }*/ for(k=0;k<5;k++) { dfstyle->bg[k]=dfcolor; } /* dfstyle->font=gdk_font_load("6*12"); g_print("设置成功!\n");*/ /* gtk_widget_modify_font( button,desc);*/ /*gdk_window_clear_area_e(GTK_BIN(button)->child,0,0,10,20);*/ g_print("color!"); gtk_widget_set_style(button,dfstyle); gtk_widget_show(button); return TRUE;}void button_color(GtkButton*button){ GdkColor dfcolor; GtkStyle *dfstyle; gint k; dfcolor.red=0x0000; dfcolor.green=0x8b00; dfcolor.blue=0x0000; dfstyle=gtk_style_copy(gtk_widget_get_style(button)); for(k=0;k<5;k++) dfstyle->bg[k]=dfcolor; gtk_widget_set_style(button,dfstyle);}gboolean Re_Cor_ZQA(GtkButton*button){init_cor(buttonZQA); gtk_timeout_remove(ZQA_COR); Co_ZQA=FALSE; return TRUE;} gboolean Re_Cor_XYZSA(GtkButton*button){init_cor(buttonXYZSA); gtk_timeout_remove(XYZSA_COR); Co_XYZSA=FALSE; return TRUE;} gboolean Re_Cor_ZDA(GtkButton*button){init_cor(buttonZDA); gtk_timeout_remove(ZDA_COR); Co_ZDA=FALSE; return TRUE;} gboolean Re_Cor_ZFA(GtkButton*button){init_cor(buttonZFA); gtk_timeout_remove(ZFA_COR); Co_ZFA=FALSE; return TRUE;} gboolean Re_Cor_DDS(GtkButton*button){init_cor(buttonDDS); gtk_timeout_remove(DDS_COR); Co_DDS=FALSE; return TRUE;} gboolean Re_Cor_DDJ(GtkButton*button){init_cor(buttonDDJ); gtk_timeout_remove(DDJ_COR); Co_DDJ=FALSE; return TRUE;} gboolean Re_Cor_DFA(GtkButton*button){init_cor(button); gtk_timeout_remove(DFA_COR); Co_DFA=FALSE; return TRUE;} gboolean Re_Cor_DJA(GtkButton*button){init_cor(buttonDJA); gtk_timeout_remove(DJA_COR); Co_DJA=FALSE; return TRUE;} gboolean Re_Cor_ZFK(GtkButton*button){init_cor(buttonZFK); gtk_timeout_remove(ZFK_COR); Co_ZFK=FALSE; return TRUE;} gboolean Re_Cor_JGJA(GtkButton*button){init_cor(buttonJGJA); gtk_timeout_remove(JGJA_COR); Co_JGJA=FALSE; return TRUE;} gboolean Re_Cor_QGJA(GtkButton*button){init_cor(buttonQGJA); gtk_timeout_remove(QGJA_COR); Co_QGJA=FALSE; return TRUE;} gboolean Re_Cor_FUA(GtkButton*button){init_cor(buttonFUA); gtk_timeout_remove(FUA_COR); Co_FUA=FALSE; return TRUE;} gboolean Re_Cor_GXA(GtkButton*button){init_cor(buttonGXA); gtk_timeout_remove(GXA_COR); Co_GXA=FALSE; return TRUE;} gboolean Re_Cor_SYZSA(GtkButton*button){init_cor(buttonSYZSA); gtk_timeout_remove(SYZSA_COR); Co_SYZSA=FALSE; return TRUE;} gboolean Re_Cor_SYA(GtkButton*button){init_cor(buttonSYA); gtk_timeout_remove(SYA_COR); Co_SYA=FALSE; return TRUE;} gboolean Re_Cor_XYA(GtkButton*button){init_cor(buttonXYA); gtk_timeout_remove(XYA_COR); Co_XYA=FALSE; return TRUE;} gboolean Re_Cor_XDYA(GtkButton*button){init_cor(buttonXDYA); gtk_timeout_remove(XDYA_COR); Co_XDYA=FALSE; return TRUE;} int Fun_Button(GtkButton*button,gpointer data){/*此函数用于变回原色但没有倒计时的功能按钮*/ gint id=GPOINTER_TO_INT(data); button_color(button); switch(id) {case 0x3002: {if(Co_ZQA==FALSE) { Oprate_Data(); Co_ZQA=TRUE; ZQA_COR=gtk_timeout_add(1000,Re_Cor_ZQA,buttonZQA); break; } else break; } case 0x300f: {if(Co_XYZSA==FALSE) { Oprate_Data(); Co_XYZSA=TRUE; XYZSA_COR=gtk_timeout_add(1000,Re_Cor_XYZSA,buttonXYZSA); break; } else break; } case 0x3004: {if(Co_ZDA==FALSE) { Oprate_Data(); Co_ZDA=TRUE; ZDA_COR=gtk_timeout_add(1000,Re_Cor_ZDA,buttonZDA); break; } else break; } case 0x3005: {if(Co_ZFA==FALSE) { Oprate_Data(); Co_ZFA=TRUE; ZFA_COR=gtk_timeout_add(1000,Re_Cor_ZFA,buttonZFA); break; } else break; } case 0x3006: {if(Co_DDS==FALSE) { Oprate_Data(); Co_DDS=TRUE; DDS_COR=gtk_timeout_add(1000,Re_Cor_DDS,buttonDDS); break; } else break; } case 0x3007: {if(Co_DDJ==FALSE) { Oprate_Data(); Co_DDJ=TRUE; DDJ_COR=gtk_timeout_add(1000,Re_Cor_DDJ,buttonDDJ); break; } else break; } case 0x3008: {if(Co_DFA==FALSE) { Oprate_Data(); Co_DFA=TRUE; DFA_COR=gtk_timeout_add(1000,Re_Cor_DFA,buttonDFA); break; } else break; } case 0x3009: {if(Co_DJA==FALSE) { Oprate_Data(); Co_DJA=TRUE; DJA_COR=gtk_timeout_add(1000,Re_Cor_DJA,buttonDJA); break; } else break; } case 0x3012: {if(Co_ZFK==FALSE) { Oprate_Data(); Co_ZFK=TRUE; ZFK_COR=gtk_timeout_add(1000,Re_Cor_ZFK,buttonZFK); break; } else break; } case 0x300a: {if(Co_JGJA==FALSE) { Oprate_Data(); Co_JGJA=TRUE; JGJA_COR=gtk_timeout_add(1000,Re_Cor_JGJA,buttonJGJA); break; } else break; } case 0x300b: {if(Co_QGJA==FALSE) { Oprate_Data(); Co_QGJA=TRUE; QGJA_COR=gtk_timeout_add(1000,Re_Cor_QGJA,buttonQGJA); break; } else break; } case 0x300c: {if(Co_FUA==FALSE) { Oprate_Data(); Co_FUA=TRUE; FUA_COR=gtk_timeout_add(1000,Re_Cor_FUA,buttonFUA); break; } else break; } case 0x3011: {if(Co_GXA==FALSE) { Oprate_Data(); Co_GXA=TRUE; GXA_COR=gtk_timeout_add(1000,Re_Cor_GXA,buttonGXA); break; } else break; } case 0x300d: {if(Co_SYZSA==FALSE) { Oprate_Data(); Co_SYZSA=TRUE; SYZSA_COR=gtk_timeout_add(1000,Re_Cor_SYZSA,buttonSYZSA); break; } else break; } case 0x300e: {if(Co_SYA==FALSE) { Oprate_Data(); Co_SYA=TRUE; SYA_COR=gtk_timeout_add(1000,Re_Cor_SYA,buttonSYA); break; } else break; } case 0x3010: {if(Co_XYA==FALSE) { Oprate_Data(); Co_XYA=TRUE; XYA_COR=gtk_timeout_add(1000,Re_Cor_XYA,buttonXYA); break; } else break; } case 0x3013: {if(Co_XDYA==FALSE) { Oprate_Data(); Co_XDYA=TRUE; XDYA_COR=gtk_timeout_add(1000,Re_Cor_XDYA,buttonXDYA); break; } else break; } default: break; }}void De_Time(){ GnomeCanvasGroup *group; group=gnome_canvas_root(GNOME_CANVAS(canvas)); gchar buf[50]; gtk_object_destroy(GTK_OBJECT(dtime)); sprintf(buf,"%d",count); dtime= gnome_canvas_item_new(group,gnome_canvas_text_get_type(), "text",buf, "x",140.0,"y",120.0,"anchor",GTK_ANCHOR_WEST,"font", "10*20","fill_color","green",NULL);count--; if(count<-1){ gtk_timeout_remove(Decrease_Time); gtk_object_destroy(GTK_OBJECT(dtime)); gtk_object_destroy(GTK_OBJECT(text)); count=29; SXZRA=FALSE; init_cor(button);}}int Fun_Button_time(GtkButton*button,gpointer data){/*倒计时功能按钮响应函数*/ if(SXZRA==FALSE){ GnomeCanvasGroup *group; group=gnome_canvas_root(GNOME_CANVAS(canvas)); gint id=GPOINTER_TO_INT(data); button_color(button); Oprate_Data(); show_text_time(); dtime= gnome_canvas_item_new(group,gnome_canvas_text_get_type(), "text","30", "x",140.0,"y",120.0,"anchor",GTK_ANCHOR_WEST,"font", "10*20","fill_color","green",NULL);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -