Eolite 1.92 russian lang and uncoment "Refresh" in context menu

git-svn-id: svn://kolibrios.org@3848 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Serhii Sakhno 2013-08-03 23:35:59 +00:00
parent c398fbbf20
commit 66a09ea740
6 changed files with 141 additions and 35 deletions

View File

@ -19,11 +19,45 @@
#include "imgs\toolbar.txt"
#include "imgs\left_p.txt"
#ifndef AUTOBUILD
#include "lang.h--"
#endif
#ifdef LANG_RUS
?define T_FILE "” ©«"
?define T_TYPE "’¨¯"
?define T_SIZE "<EFBFBD> §¬¥à"
?define T_NEW_FOLDER "<EFBFBD>®¢ ï ¯ ¯ª "
?define T_NEW_FILE "<EFBFBD>®¢ë© ä ©«"
?define T_DELETE_FILE "‚ë ¤¥©á⢨⥫쭮 å®â¨â¥ 㤠«¨âì"
?define T_YES "„ "
?define T_NO "<EFBFBD>¥â"
?define T_DEL_ERROR_1 "Žè¨¡ª . <20> ¯ª  ­¥ ¯ãáâ ï."
?define T_DEL_ERROR_2 "Žè¨¡ª . ” ©«®¢ ï á¨á⥬  ⮫쪮 ¤«ï ç⥭¨ï."
?define NOT_CREATE_FOLDER "<EFBFBD>¥ 㤠«®áì ᮧ¤ âì ¯ ¯ªã."
?define NOT_CREATE_FILE "<EFBFBD>¥ 㤠«®áì ᮧ¤ âì ä ©«."
?define ERROR_1 "Žè¨¡ª  ¯à¨ § £à㧪¥ ¡¨¡«¨®â¥ª¨ /rd/1/lib/box_lib.obj"
#else
?define T_FILE "File"
?define T_TYPE "Type"
?define T_SIZE "Size"
?define T_NEW_FOLDER "New folder"
?define T_NEW_FILE "New file"
?define T_DELETE_FILE "Do you really want to delete"
?define T_YES "Yes"
?define T_NO "No"
?define T_DEL_ERROR_1 "Error. Folder isn't empty."
?define T_DEL_ERROR_2 "Error. Filesystem read-only."
?define NOT_CREATE_FOLDER "Folder can not be created."
?define NOT_CREATE_FILE "File can not be created."
?define ERROR_1 "Error while loading library /rd/1/lib/box_lib.obj"
#endif
enum {ONLY_SHOW, WITH_REDRAW, ONLY_OPEN}; //OpenDir
#define TITLE "Eolite File Manager v1.91"
#define ABOUT_TITLE "Eolite v1.91"
#define TITLE "Eolite File Manager v1.92"
#define ABOUT_TITLE "Eolite v1.92"
dword col_work = 0xE4DFE1;
dword col_border = 0x9098B0; //A0A0B8; //0x819FC5;
dword col_padding = 0xC8C9C9;
@ -75,7 +109,7 @@ void main()
files.line_h=18;
mem_Init();
if (load_dll2(boxlib, #box_lib_init,0)!=0) notify("Error while loading library /rd/1/lib/box_lib.obj");
if (load_dll2(boxlib, #box_lib_init,0)!=0) notify(ERROR_1);
SystemDiscsGet();
GetIni(1);
if (param)
@ -377,9 +411,9 @@ void draw_window()
for (i=0; i<5; i++) DrawBar(0, 34+i, Form.cwidth, 1, col_palette[8-i]);
DrawLeftPanel();
//ListBox
DrawFlatButton(files.x,40,onLeft(files.x,168),16,31,col_work,"File");
DrawFlatButton(onLeft(168,0),40,73,16,32,col_work,"Type");
DrawFlatButton(onLeft(95,0),40,68,16,33,col_work,"Size");
DrawFlatButton(files.x,40,onLeft(files.x,168),16,31,col_work,T_FILE);
DrawFlatButton(onLeft(168,0),40,73,16,32,col_work,T_TYPE);
DrawFlatButton(onLeft(95,0),40,68,16,33,col_work,T_SIZE);
DrawBar(onLeft(27,0),57,1,onTop(22,57),col_border); //line to the left from the scroll
DrawFlatButton(onLeft(27,0),40,16,16,0,col_work,"\x18");
DrawFlatButton(onLeft(27,0),onTop(22,0),16,16,0,col_work,"\x19");
@ -592,8 +626,12 @@ void Del_Form()
int dform_x = files.w - 200 / 2 + files.x;
//oeia ieii
if (!files.count) return;
#ifdef LANG_RUS
DrawFlatButton(dform_x,160,215,80,0,col_work, ""); //oi?ia
#else
DrawFlatButton(dform_x,160,200,80,0,col_work, ""); //oi?ia
WriteText(dform_x+19,175,0x80,0,"Do you really want to delete");
#endif
WriteText(dform_x+19,175,0x80,0,T_DELETE_FILE);
IF (strlen(#file_name)<28)
{
WriteText(strlen(#file_name)*6+dform_x+20,190,0x80,0,"?");
@ -605,8 +643,8 @@ void Del_Form()
ESI = 24;
WriteText(dform_x+20,190,0,0,#file_name); //ieoai eiy
}
DrawFlatButton(dform_x+20,208,70,20,301,0xFFB6B5,"Yes");
DrawFlatButton(dform_x+111,208,70,20,302,0xC6DFC6,"No");
DrawFlatButton(dform_x+20,208,70,20,301,0xFFB6B5,T_YES);
DrawFlatButton(dform_x+111,208,70,20,302,0xC6DFC6,T_NO);
del_active=1;
}
@ -620,8 +658,8 @@ void Del_File(byte dodel)
IF (del_rezult)
{
Write_Error(del_rezult);
IF ( itdir) ShowMessage("Error. Folder isn't empty.");
IF (!itdir) ShowMessage("Error. Filesystem read-only.");
IF ( itdir) ShowMessage(T_DEL_ERROR_1);
IF (!itdir) ShowMessage(T_DEL_ERROR_2);
}
}
del_active=0;
@ -648,7 +686,7 @@ void ReName(byte rename)
if (del_rezult!=0)
{
Write_Error(del_rezult);
ShowMessage("Error. Folder isn't empty.");
ShowMessage(T_DEL_ERROR_1);
return;
}
ELSE CreateDir(#temp);
@ -750,30 +788,30 @@ void FnProcess(char N)
break;
case 6:
strcpy(#temp, #path);
strcat(#temp, "New folder");
strcat(#temp, T_NEW_FOLDER);
CreateDir(#temp);
if (!EAX){
SelectFile("New folder");
SelectFile(T_NEW_FOLDER);
FnProcess(2);
}
else
{
Write_Error(EAX);
ShowMessage("Folder can not be created.");
ShowMessage(NOT_CREATE_FOLDER);
}
break;
case 7:
strcpy(#temp, #path);
strcat(#temp, "New file");
strcat(#temp, T_NEW_FILE);
WriteFile(0, 0, #temp);
if (!EAX){
SelectFile("New file");
SelectFile(T_NEW_FILE);
FnProcess(2);
}
else
{
Write_Error(EAX);
ShowMessage("File can not be created.");
ShowMessage(NOT_CREATE_FILE);
}
break;
case 10: //F10

View File

@ -4,6 +4,18 @@
#define BROWSER_PATH "/sys/htmlv"
#define BROWSER_LINK "http://kolibri-n.org/index.php"
#ifdef LANG_RUS
?define INTRO_TEXT_1 "Ž Eolite"
?define INTRO_TEXT_2 "<EFBFBD> §à ¡®â稪¨:"
?define INTRO_TEXT_3 "<EFBFBD>®á¥â¨â¥"
?define INTRO_TEXT_4 "‡ ªàëâì"
#else
?define INTRO_TEXT_1 "About Eolite"
?define INTRO_TEXT_2 "Developers:"
?define INTRO_TEXT_3 "Visit"
?define INTRO_TEXT_4 "Close"
#endif
void about_dialog()
{
@ -21,17 +33,25 @@ void about_dialog()
break;
case evReDraw:
DefineAndDrawWindow(600,150,181,232+GetSkinHeight(),0x34,col_work,"About Eolite");
DefineAndDrawWindow(600,150,181,232+GetSkinHeight(),0x34,col_work,INTRO_TEXT_1);
DrawBar(0,0,172,50,0x8494C4);
PutPaletteImage(#logo,85,85,43,7,8,#logo_pal);
WriteTextB(46,100,0x90,0xBF40BF,ABOUT_TITLE);
WriteText(55,120,0x80,0,"Developers:");
#ifdef LANG_RUS
WriteText(50,120,0x80,0,INTRO_TEXT_2);
#else
WriteText(55,120,0x80,0,INTRO_TEXT_2);
#endif
WriteText(39,130,0x80,0,"Leency & Veliant");
WriteText(45,140,0x80,0,"KolibriOS Team");
WriteText(61,150,0x80,0,"2008-2013");
WriteText(29,170,0x80,0,"Visit");
DrawLink(66,170,0x80,23, "kolibri-n.org");
DrawFlatButton(85,190,70,22,10,0xE4DFE1, "Close");
#ifdef LANG_RUS
WriteText(19,170,0x80,0,INTRO_TEXT_3);
#else
WriteText(29,170,0x80,0,INTRO_TEXT_3);
#endif
DrawLink(71,170,0x80,23, "kolibri-n.org");
DrawFlatButton(85,190,70,22,10,0xE4DFE1, INTRO_TEXT_4);
DrawFilledBar(0, 216, 172, 12);
}
}

View File

@ -1,5 +1,21 @@
//Leency 2008-2013
#ifdef LANG_RUS
char *captions[] = {
"Žâªàëâì", "Enter",
"Žâªàëâì á ¯®¬®éìî...", "CrlEnt",
"Žâªàëâì ª ª ⥪áâ", "F3",
"Žâªàëâì ¢ HEX", "F4",
//
"Š®¯¨à®¢ âì", "Crl+C",
"‚ë१ âì", "Crl+X",
"‚áâ ¢¨âì", "Crl+V",
"<EFBFBD>¥à¥¨¬¥­®¢ âì", "F2",
"“¤ «¨âì", "Del",
"Ž¡­®¢¨âì", "F5",
0, 0};
#else
char *captions[] = {
"Open", "Enter",
"Open with...", "CrlEnt",
@ -11,8 +27,9 @@ char *captions[] = {
"Paste", "Crl+V",
"Rename", "F2",
"Delete", "Del",
//"Refresh", "F5",
"Refresh", "F5",
0, 0};
#endif
proc_info MenuForm;

View File

@ -1,5 +1,28 @@
//Leency 2008-2013
#ifdef LANG_RUS
char *actions[] = {
57, "<EFBFBD>®¢ë© ä ©«", "F7",
56, "<EFBFBD>®¢ ï ¯ ¯ª ", "F6",
60, "<EFBFBD> áâனª¨", "F10",
0,0,0
};
?define T_DEVICES "“áâனá⢠"
?define T_ACTIONS "„¥©á⢨ï"
#else
char *actions[] = {
57, "New file", "F7",
56, "New folder", "F6",
60, "Options", "F10",
0,0,0
};
?define T_DEVICES "Devices"
?define T_ACTIONS "Actions"
#endif
void Tip(int y, dword caption, id, arrow)
{
int i;
@ -51,7 +74,7 @@ void SystemDiscsDraw()
char dev_name[10], disc_name[100];
int i, dev_icon;
Tip(56, "Devices", 55, "=");
Tip(56, T_DEVICES, 55, "=");
for (i=0; i<20; i++) DeleteButton(100+i);
for (i=0;i<disc_num;i++)
{
@ -104,17 +127,10 @@ void SystemDiscsDraw()
}
}
char *actions[] = {
57, "New file", "F7",
56, "New folder", "F6",
60, "Options", "F10",
0,0,0
};
void ActionsDraw()
{
int actions_y=disc_num*16+108, lineh=16;
Tip(actions_y-18, "Actions", 77, ""); //çàãîëîâîê
Tip(actions_y-18, T_ACTIONS, 77, ""); //çàãîëîâîê
for (i=0; actions[i*3]!=0; i++, actions_y+=lineh)
{
DrawBar(17,actions_y,160,lineh,0xFFFFFF); //áåëîå

View File

@ -7,7 +7,7 @@ dword onTop(dword down,up) {EAX=Form.height-GetSkinHeight()-down-up;}
void ShowMessage(dword message)
{
DrawFlatButton(Form.width/2-13,160,200,80,0,0xFFB6B5, message);
DrawFlatButton(Form.width/2-13,160,220,80,0,0xFFB6B5, message);
pause(150);
List_ReDraw();
}

View File

@ -1,4 +1,19 @@
04.05.13 -- v1.88
04.08.13 -- 1.92
- появилась руссифицированнв=ая версия
- раскоментирован пункт "Обновить" в контекстном меню
02.08.13 -- 1.91
- исправлен баг с кнопками копировать и вырезать
22.06.16 -- v1.90
- исправлен баг с падением Эолайта после открытия меню (спасибо dunkaist за то, что нашёл проблемное место в коде)
- теперь список файлов снова нормально обновляется после вставки одного файла
- мы уже так привыкли к Колибри, что некоторые очевидные для нас вещи не очевидны для людей,
которые видят Колибри впервые, потому в меню добавлены пункты copy, cut, paste
- добавлена тень к надписям в меню - идею позаимствовал у Akylist'a, так куда красивее)
05.04.13 -- v1.89
04.04.13 -- v1.88
- копирование через поток;
- копирование папок;
- небольшие изменения в GUI.