Rev 5992 | Rev 6197 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5784 | leency | 1 | #define MEMSIZE 0x2EE80 |
5730 | pavelyakov | 2 | |
3 | #include "../lib/font.h" |
||
5776 | leency | 4 | #include "../lib/gui.h" |
5730 | pavelyakov | 5 | |
5784 | leency | 6 | #define PANELH 30 |
7 | |||
5730 | pavelyakov | 8 | void main() |
9 | { |
||
5784 | leency | 10 | proc_info Form; |
5987 | leency | 11 | int i, y, btn; |
5776 | leency | 12 | char line[256], title[4196]; |
5981 | leency | 13 | if (!param) strcpy(#param, DEFAULT_FONT); |
5987 | leency | 14 | label.init(#param); |
5885 | pavelyakov | 15 | strcpy(#title, "Font preview: "); |
5776 | leency | 16 | strcat(#title, #param); |
5730 | pavelyakov | 17 | loop() |
5776 | leency | 18 | { |
19 | switch(WaitEvent()) |
||
5730 | pavelyakov | 20 | { |
5776 | leency | 21 | case evButton: |
22 | btn = GetButtonID(); |
||
23 | if (btn==1) ExitProcess(); |
||
5987 | leency | 24 | if (btn==2) label.bold ^=1; |
25 | if (btn==3) label.italic ^=1; |
||
26 | if (btn==4) label.smooth ^=1; |
||
5784 | leency | 27 | goto _DRAW_WINDOW_CONTENT; |
5776 | leency | 28 | case evReDraw: |
5981 | leency | 29 | DefineAndDrawWindow(215,100,500,320,0x74,0xFFFFFF,#title); |
5784 | leency | 30 | GetProcessInfo(#Form, SelfInfo); |
5987 | leency | 31 | if (Form.status_window>2) break; |
5784 | leency | 32 | _DRAW_WINDOW_CONTENT: |
5981 | leency | 33 | DrawBar(0, 0, Form.cwidth, PANELH, 0xCCCccc); |
6176 | leency | 34 | CheckBox(10, 8, 2, "Bold", label.bold); |
35 | CheckBox(70, 8, 3, "Italic", label.italic); |
||
36 | CheckBox(140, 8, 4, "Smooth", label.smooth); |
||
5987 | leency | 37 | label.raw_size = free(label.raw); |
38 | if (!label.font) |
||
5776 | leency | 39 | { |
5981 | leency | 40 | DrawBar(0, PANELH, Form.cwidth, Form.cheight - PANELH, 0xFFFfff); |
41 | WriteText(10, 50, 0x82, 0xFF00FF, "Font is not loaded."); |
||
5784 | leency | 42 | } |
5987 | leency | 43 | else for (i=10, y=5; i<22; i++, y+=label.height;) //not flexible, need to calculate font count and max line length |
5776 | leency | 44 | { |
45 | sprintf(#line,"Размер шрифта/size font %d пикселей.",i); |
||
5987 | leency | 46 | label.write_buf(10,y,Form.cwidth,Form.cheight-PANELH, 0xFFFFFF, 0, i, #line); |
5730 | pavelyakov | 47 | } |
5987 | leency | 48 | if (label.smooth) label.apply_smooth(); |
49 | label.show_buf(0, PANELH); |
||
5776 | leency | 50 | } |
51 | } |
||
52 | }22;> |