Rev 5532 | Rev 5694 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5532 | Rev 5674 | ||
---|---|---|---|
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 = Form.cwidth - 18; |
7 | word sc_x = Form.cwidth - 18; |
8 | word sc_y = 57; |
8 | word sc_y = 57; |
9 | word sc_h = Form.cheight - 18 - sc_y; |
9 | word sc_h = Form.cheight - 18 - sc_y; |
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=onTop(23+sc_slider_h,0); //äëÿ áîëüøîãî ñïèñêà |
22 | if (sc_slider_h > sc_h-sc_slider_y+56) || (files.first+files.visible>=files.count) sc_slider_y=onTop(23+sc_slider_h,0); //äëÿ áîëüøîãî ñïèñêà |
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+55>sc_slider_y) |
36 | if (sc_h-sc_slider_h+55>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+55, 0xC7C9C9); |
39 | DrawBar(sc_x+1, sc_slider_y + sc_slider_h+2, 1, sc_h-sc_slider_h-sc_slider_y+55, 0xC7C9C9); |
40 | DrawBar(sc_x+2, sc_slider_y + sc_slider_h+2, 14, sc_h-sc_slider_h-sc_slider_y+55, 0xCED0D0); |
40 | DrawBar(sc_x+2, sc_slider_y + sc_slider_h+2, 14, sc_h-sc_slider_h-sc_slider_y+55, 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,sc.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,sc.work_text,text); |
52 | WriteText(-strlen(text)*6+width/2+x+1,height/2-3+y,0x80,system.color.work_text,text); |
53 | } |
53 | } |
54 | 54 | ||
55 | void DrawFilledBar(dword x, y, w, h) |
55 | void DrawFilledBar(dword x, y, w, h) |
56 | { |
56 | { |
57 | int i, fill_h; |
57 | int i, fill_h; |
58 | if (h <= 14) fill_h = h; else fill_h = 14; |
58 | if (h <= 14) fill_h = h; else fill_h = 14; |
59 | for (i=0; i |
59 | for (i=0; i |
60 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
60 | DrawBar(x, y+i, w, h-fill_h, col_palette[14-i]); |
61 | } |
61 | } |
62 | 62 | ||
63 | void ShowMessage(dword message, pause_duration) |
63 | void ShowMessage(dword message, pause_duration) |
64 | { |
64 | { |
65 | int form_x=files.w-220/2+files.x; |
65 | int form_x=files.w-220/2+files.x; |
66 | int form_y=160; |
66 | int form_y=160; |
67 | DrawPopup(form_x,form_y,220,80,1,sc.work,sc.work_graph); |
67 | DrawPopup(form_x,form_y,220,80,1,system.color.work,system.color.work_graph); |
68 | WriteText(-strlen(message)*3+110+form_x,80/2-4+form_y,0x80,sc.work_text,message); |
68 | WriteText(-strlen(message)*3+110+form_x,80/2-4+form_y,0x80,system.color.work_text,message); |
69 | pause(pause_duration); |
69 | pause(pause_duration); |
70 | if (pause_duration) List_ReDraw(); |
70 | if (pause_duration) List_ReDraw(); |
71 | }=>>13;>13;>>=0) |
71 | }=>>13;>13;>>=0) |
72 | > |
72 | > |