kolibrios/programs/cmm/eolite/include/settings.h

93 lines
2.9 KiB
C
Raw Normal View History

//Leency 2008-2013
#define EDITOR_PATH "/sys/tinypad"
#define BROWSER_PATH "/sys/htmlv"
#define BROWSER_LINK "http://kolibri-n.org/index.php"
#ifdef LANG_RUS
?define TITLE_SETT "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
?define SET_1 "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><E0AEA9><EFBFBD>"
?define SET_2 "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
?define SET_3 "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD>"
?define CANCEL_T "<EFBFBD><EFBFBD><EFBFBD>"
?define APPLY_T "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#elif LANG_EST
?define TITLE_SETT "Programmis Eolite"
#else
?define TITLE_SETT "About Eolite"
#endif
int mouse_ddd;
char lineh_s[30]="18\0";
edit_box LineHeight_ed = {50,10,70,0xffffff,0x94AECE,0x000000,0x000000,2,4,#lineh_s,#mouse_ddd, 1000000000000010b,2,2};
checkbox2 ShowDeviceName_chb = {10*65536+15, 10*65536+15, 5, 0xffffff, 0x000000, 0x80000000, SET_1, 110b};
checkbox2 RealFileNamesCase_chb = {10*65536+15, 30*65536+15, 5, 0xffffff, 0x000000, 0x80000000, SET_2, 100b};
void settings_dialog()
{
byte id;
unsigned int key;
dword eolite_ini_path = abspath("Eolite.ini");
IF (active_about) ExitProcess();
active_about=1;
SetEventMask(0x27);
loop() switch(WaitEvent())
{
case evButton:
id=GetButtonID();
if (id==10)
{
IF ( asm test ShowDeviceName_chb.flags, 2) ini_set_int stdcall (eolite_ini_path, "Config", "ShowDeviceName", 1);
ELSE ini_set_int stdcall (eolite_ini_path, "Config", "ShowDeviceName", 0);
IF ( asm test RealFileNamesCase_chb.flags, 2) ini_set_int stdcall (eolite_ini_path, "Config", "RealFileNamesCase", 1);
ELSE ini_set_int stdcall (eolite_ini_path, "Config", "RealFileNamesCase", 0);
IF (LineHeight_ed.size) ini_set_int stdcall (eolite_ini_path, "Config", "LineHeight", atoi(#lineh_s));
active_about=0;
ExitProcess();
}
IF (id==1) || (id==11)
{
active_about=0;
ExitProcess();
}
IF (id==23) RunProgram(BROWSER_PATH, BROWSER_LINK);
break;
case evKey:
key = GetKey();
IF (key==27)
{
active_about=0;
ExitProcess();
}
EAX=key<<8;
edit_box_key stdcall(#LineHeight_ed);
break;
case evMouse:
check_box_mouse stdcall (#ShowDeviceName_chb);
check_box_mouse stdcall (#RealFileNamesCase_chb);
edit_box_mouse stdcall (#LineHeight_ed);
break;
case evReDraw:
DefineAndDrawWindow(600,150,281,228+GetSkinHeight(),0x34,sc.work,TITLE_SETT);
IF (show_dev_name) ShowDeviceName_chb.flags = 110b;
ELSE ShowDeviceName_chb.flags = 100b;
IF (real_files_names_case) RealFileNamesCase_chb.flags = 110b;
ELSE RealFileNamesCase_chb.flags = 100b;
key = itoa(files.line_h);
strcpy(#lineh_s, key);
check_box_draw stdcall (#ShowDeviceName_chb);
check_box_draw stdcall (#RealFileNamesCase_chb);
edit_box_draw stdcall (#LineHeight_ed);
WriteText(10, 55, 0x80, 0x000000, SET_3);
DrawFlatButton(115,190,70,22,10,0xE4DFE1, APPLY_T);
DrawFlatButton(195,190,70,22,11,0xE4DFE1, CANCEL_T);
}
}