Rev 5709 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4412 | leency | 1 | //Leency - 2012-2013 |
2 | |||
3 | char *ITEMS_LIST[]={ |
||
4 | #ifdef LANG_RUS |
||
5718 | leency | 5 | "Zoom 2x", |
6 | "Посмотреть исходник", |
||
7 | "Редактировать исходник", |
||
8 | "История", |
||
9 | "Очистить кэш картинок", |
||
10 | "Менеджер загрузок", |
||
4412 | leency | 11 | #else |
5718 | leency | 12 | "Zoom 2x", |
13 | "View source", |
||
14 | "Edit source", |
||
15 | "History", |
||
16 | "Free image cache", |
||
17 | "Download Manager", |
||
4412 | leency | 18 | #endif |
5718 | leency | 19 | 0}; |
4412 | leency | 20 | |
21 | llist menu; |
||
22 | |||
23 | void menu_rmb() |
||
24 | { |
||
25 | proc_info MenuForm; |
||
26 | int key; |
||
27 | |||
5718 | leency | 28 | menu.ClearList(); |
29 | while (ITEMS_LIST[menu.count]) menu.count++; |
||
5709 | leency | 30 | menu.SetSizes(2,2,177,menu.count*19,19); |
4412 | leency | 31 | SetEventMask(100111b); |
32 | |||
5631 | pavelyakov | 33 | _BEGIN_APPLICATION_MENU: |
34 | switch(WaitEvent()) |
||
4412 | leency | 35 | { |
36 | case evMouse: |
||
37 | GetProcessInfo(#MenuForm, SelfInfo); |
||
38 | if (!CheckActiveProcess(MenuForm.ID)) ExitProcess(); |
||
39 | |||
5640 | pavelyakov | 40 | mouse.get(); |
41 | if (menu.ProcessMouse(mouse.x, mouse.y)) DrawMenuList(); |
||
5718 | leency | 42 | if (mouse.lkm)&&(mouse.up) ItemClick(); |
4412 | leency | 43 | break; |
44 | |||
45 | case evKey: |
||
46 | key = GetKey(); |
||
47 | if (key==27) ExitProcess(); |
||
5718 | leency | 48 | if (key==13) ItemClick(); |
4412 | leency | 49 | if (menu.ProcessKey(key)) DrawMenuList(); |
50 | break; |
||
51 | |||
52 | case evReDraw: |
||
5640 | pavelyakov | 53 | DefineAndDrawWindow(Form.left+mouse.x-6,Form.top+mouse.y+GetSkinHeight()+3,menu.w+2,menu.h+4,0x01, 0, 0, 0x01fffFFF); |
4677 | leency | 54 | DrawPopup(0,0,menu.w,menu.h+3,0, col_bg,border_color); |
4412 | leency | 55 | DrawMenuList(); |
56 | } |
||
5631 | pavelyakov | 57 | goto _BEGIN_APPLICATION_MENU; |
4412 | leency | 58 | } |
59 | |||
60 | void DrawMenuList() |
||
61 | { |
||
62 | int N; |
||
63 | |||
64 | for (N=0; N |
||
65 | { |
||
66 | if (N==menu.current) |
||
67 | DrawBar(menu.x, N*menu.line_h+menu.y, menu.w-3, menu.line_h, 0x94AECE); |
||
68 | else |
||
69 | { |
||
4677 | leency | 70 | DrawBar(menu.x, N*menu.line_h+menu.y, menu.w-3, menu.line_h, col_bg); |
5718 | leency | 71 | WriteText(19,N*menu.line_h+9,0x80,0xf2f2f2,ITEMS_LIST[N]); |
4412 | leency | 72 | } |
5718 | leency | 73 | WriteText(18,N*menu.line_h+8,0x80,0x000000,ITEMS_LIST[N]); |
4412 | leency | 74 | } |
5718 | leency | 75 | if (WB1.DrawBuf.zoom == 2) DrawBar(6, 8, 6, 6, 0x777777); |
76 | } |
||
5519 | leency | 77 | |
5718 | leency | 78 | void ItemClick() |
79 | { |
||
80 | action_buf = ZOOM2x + menu.current; |
||
81 | ExitProcess(); |
||
82 | } |