Rev 5743 | Rev 6039 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5743 | Rev 6008 | ||
---|---|---|---|
1 | dword col_palette[14] = {0xD2D3D3,0xD4D4D4,0xD6D5D6,0xD8D7D8,0xDAD8D9,0xDCDADB, |
1 | dword col_palette[14] = {0xD2D3D3,0xD4D4D4,0xD6D5D6,0xD8D7D8,0xDAD8D9,0xDCDADB, |
2 | 0xDFDCDD,0xE1DDDE,0xE2DEE0,0xE4DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1}; |
2 | 0xDFDCDD,0xE1DDDE,0xE2DEE0,0xE4DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1}; |
3 | 3 | ||
4 | void Scroll() { |
4 | void Scroll() { |
5 | dword i; |
5 | dword i; |
6 | 6 | ||
7 | word sc_x = files.x + files.w; |
7 | word sc_x = files.x + files.w; |
8 | word sc_y = files.y; |
8 | word sc_y = files.y; |
9 | word sc_h = files.h - 16; |
9 | word sc_h = files.h - 16; |
10 | word sc_slider_y; |
10 | word sc_slider_y; |
11 | 11 | ||
12 | if (files.count<=0) |
12 | if (files.count<=0) |
13 | { |
13 | { |
14 | sc_slider_y = sc_y; |
14 | sc_slider_y = sc_y; |
15 | sc_slider_h = sc_h - 1; |
15 | sc_slider_h = sc_h - 1; |
16 | } |
16 | } |
17 | else |
17 | else |
18 | { |
18 | { |
19 | sc_slider_y = files.first * sc_h / files.count + sc_y; |
19 | sc_slider_y = files.first * sc_h / files.count + sc_y; |
20 | sc_slider_h = sc_h * files.visible - files.visible / files.count; |
20 | sc_slider_h = sc_h * files.visible - files.visible / files.count; |
21 | if (sc_slider_h < 20) sc_slider_h = 20; //minimal scroll width |
21 | if (sc_slider_h < 20) sc_slider_h = 20; //minimal scroll width |
22 | if (sc_slider_h > sc_h-sc_slider_y+56) || (files.first+files.visible>=files.count) sc_slider_y= Form.cheight - 19 - sc_slider_h; //äëÿ áîëüøîãî ñïèñêà |
22 | if (sc_slider_h > sc_h-sc_slider_y+56) || (files.first+files.visible>=files.count) sc_slider_y= Form.cheight - 19 - sc_slider_h; //äëÿ áîëüøîãî ñïèñêà |
23 | } |
23 | } |
24 | //slider |
24 | //slider |
25 | DrawFlatButton(sc_x,sc_slider_y,16,sc_slider_h,0,-1,""); |
25 | DrawFlatButton(sc_x,sc_slider_y,16,sc_slider_h,0,-1,""); |
26 | if (!scroll_used) for (i=0; i<13; i++) DrawBar(sc_x + 2 + i, sc_slider_y+2, 1, sc_slider_h-3, col_palette[13-i]); |
26 | if (!scroll_used) for (i=0; i<13; i++) DrawBar(sc_x + 2 + i, sc_slider_y+2, 1, sc_slider_h-3, col_palette[13-i]); |
27 | if (scroll_used) for (i=0; i<13; i++) DrawBar(sc_x + 2 + i, sc_slider_y+2, 1, sc_slider_h-3, col_palette[i]); |
27 | if (scroll_used) for (i=0; i<13; i++) DrawBar(sc_x + 2 + i, sc_slider_y+2, 1, sc_slider_h-3, col_palette[i]); |
28 | //area before slider |
28 | //area before slider |
29 | if (sc_slider_y > sc_y + 1) |
29 | if (sc_slider_y > sc_y + 1) |
30 | { |
30 | { |
31 | DrawBar(sc_x+1, sc_y, 15, 1, 0xC7C9C9); |
31 | DrawBar(sc_x+1, sc_y, 15, 1, 0xC7C9C9); |
32 | DrawBar(sc_x+1, sc_y+1, 1, sc_slider_y-sc_y-1, 0xC7C9C9); |
32 | DrawBar(sc_x+1, sc_y+1, 1, sc_slider_y-sc_y-1, 0xC7C9C9); |
33 | DrawBar(sc_x+2, sc_y+1, 14, sc_slider_y-sc_y-1, 0xCED0D0); |
33 | DrawBar(sc_x+2, sc_y+1, 14, sc_slider_y-sc_y-1, 0xCED0D0); |
34 | } |
34 | } |
35 | //area after slider |
35 | //area after slider |
36 | if (sc_h-sc_slider_h+sc_y-2>sc_slider_y) |
36 | if (sc_h-sc_slider_h+sc_y-2>sc_slider_y) |
37 | { |
37 | { |
38 | DrawBar(sc_x+1, sc_slider_y + sc_slider_h+1, 15, 1, 0xC7C9C9); |
38 | DrawBar(sc_x+1, sc_slider_y + sc_slider_h+1, 15, 1, 0xC7C9C9); |
39 | DrawBar(sc_x+1, sc_slider_y + sc_slider_h+2, 1, sc_h-sc_slider_h-sc_slider_y+sc_y-2, 0xC7C9C9); |
39 | DrawBar(sc_x+1, sc_slider_y + sc_slider_h+2, 1, sc_h-sc_slider_h-sc_slider_y+sc_y-2, 0xC7C9C9); |
40 | DrawBar(sc_x+2, sc_slider_y + sc_slider_h+2, 14, sc_h-sc_slider_h-sc_slider_y+sc_y-2, 0xCED0D0); |
40 | DrawBar(sc_x+2, sc_slider_y + sc_slider_h+2, 14, sc_h-sc_slider_h-sc_slider_y+sc_y-2, 0xCED0D0); |
41 | } |
41 | } |
42 | } |
42 | } |
43 | 43 | ||
44 | void DrawFlatButton(dword x,y,width,height,id,color,text) |
44 | void DrawFlatButton(dword x,y,width,height,id,color,text) |
45 | { |
45 | { |
46 | int fill_h; |
46 | int fill_h; |
47 | DrawRectangle(x,y,width,height,system.color.work_graph); |
47 | DrawRectangle(x,y,width,height,system.color.work_graph); |
48 | DrawRectangle3D(x+1,y+1,width-2,height-2,0xFEFEFE,col_padding); |
48 | DrawRectangle3D(x+1,y+1,width-2,height-2,0xFEFEFE,col_padding); |
49 | PutPixel(x+width-1, y+1, col_padding); |
49 | PutPixel(x+width-1, y+1, col_padding); |
50 | if (color!=-1) DrawFilledBar(x+2, y+2, width-3, height-3); |
50 | if (color!=-1) DrawFilledBar(x+2, y+2, width-3, height-3); |
51 | IF (id<>0) DefineButton(x+1,y+1,width-2,height-2,id+BT_HIDE,0xEFEBEF); |
51 | IF (id<>0) DefineButton(x+1,y+1,width-2,height-2,id+BT_HIDE,0xEFEBEF); |
52 | WriteText(-strlen(text)*6+width/2+x+1,height/2-3+y,0x80,system.color.work_text,text); |
52 | if (height<18) |
- | 53 | WriteText(-strlen(text)*6+width/2+x+1,height/2+y-3,0x80 ,system.color.work_text,text); |
|
53 | } |
54 | else |
- | 55 | WriteText(-strlen(text)*8+width/2+x+1,height/2+y-6,10010000b,system.color.work_text,text); |
|
- | 56 | ||
- | 57 | } |
|
54 | 58 | ||
55 | void DrawFilledBar(dword x, y, w, h) |
59 | void DrawFilledBar(dword x, y, w, h) |
56 | { |
60 | { |
57 | int i, fill_h; |
61 | int i, fill_h; |
58 | if (h <= 14) fill_h = h; else fill_h = 14; |
62 | if (h <= 14) fill_h = h; else fill_h = 14; |
59 | for (i=0; i |
63 | for (i=0; i |
60 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
64 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
61 | } |
65 | } |
62 | 66 | ||
63 | void ShowMessage(dword message, pause_duration) |
67 | void DrawEolitePopup(dword b1_text, b2_text) |
64 | { |
68 | { |
- | 69 | int form_w=250, button_padding=30; |
|
- | 70 | int b1_len = strlen(b1_text) * 8 + button_padding; |
|
- | 71 | int b2_len = strlen(b2_text) * 8 + button_padding; |
|
65 | int form_x=files.w-220/2+files.x; |
72 | int dform_x = files.w - form_w / 2 + files.x ; |
- | 73 | int button_margin = form_w - b1_len - b2_len / 3; |
|
66 | int form_y=160; |
74 | int b1_x = dform_x + button_margin; |
- | 75 | int b2_x = dform_x + button_margin + b1_len + button_margin; |
|
67 | DrawPopup(form_x,form_y,220,80,1,system.color.work,system.color.work_graph); |
76 | DrawPopup(dform_x, 160, form_w, 90, 1, system.color.work, system.color.work_graph); |
68 | WriteText(-strlen(message)*3+110+form_x,80/2-4+form_y,0x80,system.color.work_text,message); |
77 | DrawFlatButton(b1_x, 210, b1_len, 24, 301, 0xFFB6B5, b1_text); |
69 | pause(pause_duration); |
- | |
70 | if (pause_duration) List_ReDraw(); |
78 | DrawFlatButton(b2_x, 210, b2_len, 24, 302, 0xC6DFC6, b2_text); |
71 | }=>>13;>13;>>=0) |
79 | }=>18)>>13;>13;>>=0) |
72 | > |
80 | > |