Rev 6649 | Rev 6930 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6649 | Rev 6678 | ||
---|---|---|---|
1 | dword col_palette[14] = {0xD2D3D3,0xD4D4D4,0xD6D5D6,0xD8D7D8,0xDAD8D9,0xDCDADB,0xDFDCDD,0xE1DDDE,0xE2DEE0,0xE4DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1}; |
1 | dword col_palette[14] = {0xD2D3D3,0xD4D4D4,0xD6D5D6,0xD8D7D8,0xDAD8D9,0xDCDADB,0xDFDCDD,0xE1DDDE,0xE2DEE0,0xE4DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1,0xE3DFE1}; |
2 | 2 | ||
3 | void Scroll() { |
3 | void Scroll() { |
4 | dword i; |
4 | dword i; |
5 | 5 | ||
6 | word sc_x = files.x + files.w; |
6 | word sc_x = files.x + files.w; |
7 | word sc_y = files.y; |
7 | word sc_y = files.y; |
8 | word sc_h = files.h - 16; |
8 | word sc_h = files.h - 16; |
9 | word sc_slider_y; |
9 | word sc_slider_y; |
10 | 10 | ||
11 | if (files.count<=0) |
11 | if (files.count<=0) |
12 | { |
12 | { |
13 | sc_slider_y = sc_y; |
13 | sc_slider_y = sc_y; |
14 | sc_slider_h = sc_h - 1; |
14 | sc_slider_h = sc_h - 1; |
15 | } |
15 | } |
16 | else |
16 | else |
17 | { |
17 | { |
18 | sc_slider_y = files.first * sc_h / files.count + sc_y; |
18 | sc_slider_y = files.first * sc_h / files.count + sc_y; |
19 | sc_slider_h = sc_h * files.visible - files.visible / files.count; |
19 | sc_slider_h = sc_h * files.visible - files.visible / files.count; |
20 | if (sc_slider_h < 20) sc_slider_h = 20; //minimal scroll width |
20 | if (sc_slider_h < 20) sc_slider_h = 20; //minimal scroll width |
21 | if (sc_slider_h > sc_h-sc_slider_y+56) || (files.first+files.visible>=files.count) sc_slider_y= sc_y + sc_h - sc_slider_h - 1; //äëÿ áîëüøîãî ñïèñêà |
21 | if (sc_slider_h > sc_h-sc_slider_y+56) || (files.first+files.visible>=files.count) sc_slider_y= sc_y + sc_h - sc_slider_h - 1; //äëÿ áîëüøîãî ñïèñêà |
22 | } |
22 | } |
23 | //slider |
23 | //slider |
24 | DrawRectangle(sc_x,sc_slider_y,16,sc_slider_h,col_graph); |
24 | DrawRectangle(sc_x,sc_slider_y,16,sc_slider_h,col_graph); |
25 | DrawRectangle3D(sc_x+1,sc_slider_y+1,14,sc_slider_h-2,0xFEFEFE,col_padding); |
25 | DrawRectangle3D(sc_x+1,sc_slider_y+1,14,sc_slider_h-2,0xFEFEFE,col_padding); |
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,text) |
44 | void DrawFlatButtonSmall(dword x,y,width,height,id,text) |
45 | { |
45 | { |
46 | DrawRectangle(x,y,width,height,col_graph); |
46 | DrawRectangle(x,y,width,height,col_graph); |
47 | DrawRectangle3D(x+1,y+1,width-2,height-2,0xFEFEFE,col_padding); |
47 | DrawRectangle3D(x+1,y+1,width-2,height-2,0xFEFEFE,col_padding); |
48 | PutPixel(x+width-1, y+1, col_padding); |
48 | PutPixel(x+width-1, y+1, col_padding); |
49 | DrawFilledBar(x+2, y+2, width-3, height-3); |
49 | DrawFilledBar(x+2, y+2, width-3, height-3); |
50 | if (id) DefineButton(x+1,y+1,width-2,height-2,id+BT_HIDE,0xEFEBEF); |
50 | if (id) DefineButton(x+1,y+1,width-2,height-2,id+BT_HIDE,0xEFEBEF); |
51 | if (height<18) { |
51 | WriteText(-strlen(text)*6+width/2+x+1,height/2+y-3,0x80,0x333333,text); |
52 | WriteText(-strlen(text)*6+width/2+x+1,height/2+y-3,0x80,0x333333,text); |
- | |
53 | } |
52 | } |
54 | else { |
53 | |
- | 54 | int DrawFlatButton(dword x, y, id, text) |
|
- | 55 | { |
|
- | 56 | int padding_w = 15; |
|
- | 57 | int width = strlen(text) * 8 + padding_w + padding_w; |
|
- | 58 | int height = 25; |
|
55 | DrawRectangle3D(x-1,y-1,width+2,height+2,system.color.work,MixColors(system.color.work,col_graph,200)); |
59 | dword border_3d_light = MixColors(system.color.work_button,0xFFFfff,140); |
- | 60 | dword border_3d_dark = MixColors(system.color.work_button,0x111111,220); |
|
- | 61 | dword border_light = MixColors(system.color.work_button,0x111111,140); |
|
- | 62 | dword border_dark = MixColors(system.color.work_button,0x111111,100); |
|
- | 63 | DrawRectangle3D(x,y,width,height,border_light, border_dark); |
|
- | 64 | DrawRectangle3D(x+1,y+1,width-2,height-2, border_3d_light, border_3d_dark); |
|
56 | WriteText(-strlen(text)*8+width/2+x+1,height/2+y-6,0x90,0x333333,text); |
65 | DrawBar(x+2, y+2, width-3, height-3, system.color.work_button); |
- | 66 | if (id) DefineButton(x+1,y+1,width-2,height-2,id+BT_HIDE,0xEFEBEF); |
|
- | 67 | WriteText(x+padding_w,height/2+y-6,0x90,system.color.work_button_text,text); |
|
57 | } |
68 | return width + padding_w; |
58 | } |
69 | } |
59 | 70 | ||
60 | 71 | ||
61 | void DrawFilledBar(dword x, y, w, h) |
72 | void DrawFilledBar(dword x, y, w, h) |
62 | { |
73 | { |
63 | int i, fill_h; |
74 | int i, fill_h; |
64 | if (h <= 14) fill_h = h; else fill_h = 14; |
75 | if (h <= 14) fill_h = h; else fill_h = 14; |
65 | for (i=0; i |
76 | for (i=0; i |
66 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
77 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
67 | } |
78 | } |
68 | 79 | ||
69 | int popin_w=250; |
80 | int popin_w=260; |
70 | void DrawEolitePopup(dword b1_text, b2_text) |
81 | void DrawEolitePopup(dword b1_text, b2_text) |
71 | { |
82 | { |
72 | int button_padding=30; |
83 | int but_x; |
73 | int b1_len = strlen(b1_text) * 8 + button_padding; |
- | |
74 | int b2_len = strlen(b2_text) * 8 + button_padding; |
- | |
75 | int popin_x = files.w - popin_w / 2 + files.x ; |
84 | int popin_x = files.w - popin_w / 2 + files.x ; |
76 | int button_margin = popin_w - b1_len - b2_len / 3; |
- | |
77 | int b1_x = popin_x + button_margin; |
- | |
78 | int b2_x = popin_x + button_margin + b1_len + button_margin; |
- | |
79 | DrawPopup(popin_x, 160, popin_w, 90, 1, system.color.work, col_graph); |
85 | DrawPopup(popin_x, 160, popin_w, 95, 1, system.color.work, col_graph); |
80 | DrawFlatButton(b1_x, 210, b1_len, 24, POPUP_BTN1, b1_text); |
86 | but_x = DrawFlatButton(popin_x+23, 215, POPUP_BTN1, b1_text); |
81 | DrawFlatButton(b2_x, 210, b2_len, 24, POPUP_BTN2, b2_text); |
87 | DrawFlatButton(popin_x+23 + but_x, 215, POPUP_BTN2, b2_text); |
82 | }=>18)>13;>13;>>=0) |
88 | }=>13;>13;>>=0) |
83 | > |
89 | > |