Eolite: fix dialog popins when two panels view is on

Appearance: fix redraw, thanks themirageonly for bug found

git-svn-id: svn://kolibrios.org@7551 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Kirill Lipatov (Leency) 2018-11-12 16:27:48 +00:00
parent a4e5737506
commit 17b840cb9c
3 changed files with 19 additions and 10 deletions

View File

@ -1,5 +1,5 @@
//11.03.12 - start! //11.03.12 - start!
//ver 2.2 //ver 2.21
#ifndef AUTOBUILD #ifndef AUTOBUILD
?include "lang.h--" ?include "lang.h--"
@ -53,6 +53,7 @@ enum {
char folder_path[4096]; char folder_path[4096];
char cur_file_path[4096]; char cur_file_path[4096];
char cur_skin_path[4096];
char temp_filename[4096]; char temp_filename[4096];
int files_mas[400]; int files_mas[400];
@ -93,7 +94,7 @@ void main()
EventTabClick(SKINS); EventTabClick(SKINS);
SetEventMask(0x27); SetEventMask(EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE + EVM_MOUSE_FILTER);
loop() switch(WaitEvent()) loop() switch(WaitEvent())
{ {
case evMouse: case evMouse:
@ -115,7 +116,7 @@ void main()
case evButton: case evButton:
id=GetButtonID(); id=GetButtonID();
if (id==1) ExitProcess(); if (id==1) EventExit();
if (id==SKINS) EventTabClick(SKINS); if (id==SKINS) EventTabClick(SKINS);
if (id==WALLPAPERS) EventTabClick(WALLPAPERS); if (id==WALLPAPERS) EventTabClick(WALLPAPERS);
if (id==BTN_SELECT_WALLP_FOLDER) EventSelectWallpFolder(); if (id==BTN_SELECT_WALLP_FOLDER) EventSelectWallpFolder();
@ -356,16 +357,17 @@ void EventApply()
EventSetNewCurrent(); EventSetNewCurrent();
if (tabs.active_tab==SKINS) if (tabs.active_tab==SKINS)
{ {
draw_window();
cur = select_list.cur_y; cur = select_list.cur_y;
SetSystemSkin(#cur_file_path); SetSystemSkin(#cur_file_path);
SaveSkinSettings(#cur_file_path); strcpy(#cur_skin_path, #cur_file_path);
} }
if (tabs.active_tab==WALLPAPERS) if (tabs.active_tab==WALLPAPERS)
{ {
SelectList_Draw();
strcpy(#kivpath, "\\S__"); strcpy(#kivpath, "\\S__");
strcat(#kivpath, #cur_file_path); strcat(#kivpath, #cur_file_path);
RunProgram("/sys/media/kiv", #kivpath); RunProgram("/sys/media/kiv", #kivpath);
SelectList_Draw();
} }
} }
@ -375,4 +377,10 @@ void EventOpenFile()
if (tabs.active_tab==WALLPAPERS) RunProgram("/sys/media/kiv", #cur_file_path); if (tabs.active_tab==WALLPAPERS) RunProgram("/sys/media/kiv", #cur_file_path);
} }
void EventExit()
{
ExitProcess();
SaveSkinSettings(#cur_skin_path);
}
stop: stop:

View File

@ -563,7 +563,8 @@ void draw_window()
GetProcessInfo(#Form, SelfInfo); GetProcessInfo(#Form, SelfInfo);
if (Form.status_window>2) return; if (Form.status_window>2) return;
if (Form.height < 350) { MoveSize(OLD,OLD,OLD,350); return; } if (Form.height < 350) { MoveSize(OLD,OLD,OLD,350); return; }
if (Form.width < 480) { MoveSize(OLD,OLD,480,OLD); return; } if (!two_panels.checked) && (Form.width < 480) { MoveSize(OLD,OLD,480,OLD); return; }
if ( two_panels.checked) && (Form.width < 573) { MoveSize(OLD,OLD,573,OLD); return; }
GetProcessInfo(#Form, SelfInfo); GetProcessInfo(#Form, SelfInfo);
ESDWORD[#toolbar_pal] = col_work; ESDWORD[#toolbar_pal] = col_work;
ESDWORD[#toolbar_pal+4] = MixColors(0, col_work, 35); ESDWORD[#toolbar_pal+4] = MixColors(0, col_work, 35);
@ -639,7 +640,7 @@ void DrawFilePanels()
{ {
llist_copy(#files, #files_inactive); llist_copy(#files, #files_inactive);
strcpy(#path, #inactive_path); strcpy(#path, #inactive_path);
col_selec = 0xCCCccc; col_selec = 0xCCCccc; //this is a bad code: need to use some var to set inactive panel for DrawList();
files.SetSizes(Form.cwidth/2, files_y, Form.cwidth/2 -17, Form.cheight-files_y-2 - status_bar_h, files.item_h); files.SetSizes(Form.cwidth/2, files_y, Form.cwidth/2 -17, Form.cheight-files_y-2 - status_bar_h, files.item_h);
DrawList(); DrawList();
Open_Dir(#path,WITH_REDRAW); Open_Dir(#path,WITH_REDRAW);
@ -700,7 +701,7 @@ void List_ReDraw()
Scroll(); Scroll();
if (del_active) Del_Form(); if (del_active) Del_Form();
if (new_element_active) NewElement_Form(new_element_active, #new_element_name); if (new_element_active) && (col_selec != 0xCCCccc) NewElement_Form(new_element_active, #new_element_name);
} }

View File

@ -1,5 +1,5 @@
#define TITLE "Eolite File Manager 4.04a" #define TITLE "Eolite File Manager 4.05"
#define ABOUT_TITLE "EOLITE 4.04a" #define ABOUT_TITLE "EOLITE 4.05"
#ifdef LANG_RUS #ifdef LANG_RUS
?define T_FILE "” ©«" ?define T_FILE "” ©«"