Subversion Repositories Kolibri OS

Rev

Rev 5024 | Rev 6865 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5024 Rev 5025
Line 38... Line 38...
38
    int      w;
38
    int      w;
39
    int      h;
39
    int      h;
40
}tview_t;
40
}tview_t;
Line 41... Line 41...
41
 
41
 
-
 
42
int init_tview(tview_t *txv, int width, int height, char *text, int size);
-
 
43
void txv_set_size(tview_t *txv, int txw, int txh);
-
 
44
void txv_set_font_size(tview_t *txv, int size);
42
int init_tview(tview_t *txv, int width, int height, char *text, int size);
45
 
43
int txv_scroll_up(tview_t *txv);
46
int txv_scroll_up(tview_t *txv);
Line 44... Line 47...
44
int txv_scroll_down(tview_t *txv);
47
int txv_scroll_down(tview_t *txv);
45
 
48
 
Line 46... Line 49...
46
void* init_fontlib();
49
void* init_fontlib();
47
int draw_text_ext(bitmap_t *winbitmap, FT_Face face, char *text, int len, rect_t *rc, int color);
50
int draw_text_ext(bitmap_t *winbitmap, FT_Face face, char *text, int len, rect_t *rc, int color);
48
 
51
 
49
void draw_window(void)
52
void draw_window(void)
50
{
53
{
51
    BeginDraw();
54
    BeginDraw();
Line 52... Line 55...
52
    DrawWindow(0,0,0,0,NULL,0,0x74);
55
    DrawWindow(0,0,0,0,NULL,0,0x73);
Line 53... Line 56...
53
    EndDraw();
56
    EndDraw();
54
}
57
}
55
 
58
 
56
tview_t txv;
59
tview_t txv;
-
 
60
 
-
 
61
int main(int argc, char *argv[])
Line 57... Line 62...
57
 
62
{
58
int main(int argc, char *argv[])
63
    ufile_t uf;
59
{
64
    oskey_t   key;
Line 73... Line 78...
73
       return 0;
78
       return 0;
Line 74... Line 79...
74
 
79
 
75
    init_pixlib(0);
80
    init_pixlib(0);
Line 76... Line 81...
76
    init_fontlib();
81
    init_fontlib();
Line 77... Line 82...
77
 
82
 
78
    init_tview(&txv, 480, 600, uf.data, uf.size);
83
    init_tview(&txv, clw, clh, uf.data, uf.size);
79
 
84
 
80
    BeginDraw();
85
    BeginDraw();
Line 81... Line 86...
81
    DrawWindow(10, 40, txv.w+TYPE_3_BORDER_WIDTH*2,
86
    DrawWindow(10, 40, clw+TYPE_3_BORDER_WIDTH*2,
Line 82... Line 87...
82
               txv.h+TYPE_3_BORDER_WIDTH+get_skin_height(), "Text example", 0x000000, 0x74);
87
               clh+TYPE_3_BORDER_WIDTH+get_skin_height(), "Text example", 0x000000, 0x73);
Line 91... Line 96...
91
        pos_t    pos;
96
        pos_t    pos;
Line 92... Line 97...
92
 
97
 
93
        switch (get_os_event())
98
        switch (get_os_event())
94
		{
99
		{
-
 
100
            case 1:
-
 
101
            {
-
 
102
                char proc_info[1024];
-
 
103
                int winx, winy, winw, winh;
-
 
104
                int txw, txh;
-
 
105
 
-
 
106
                get_proc_info(proc_info);
-
 
107
 
-
 
108
                winx = *(uint32_t*)(proc_info+34);
-
 
109
                winy = *(uint32_t*)(proc_info+38);
-
 
110
                winw = *(uint32_t*)(proc_info+42)+1;
-
 
111
                winh = *(uint32_t*)(proc_info+46)+1;
-
 
112
 
-
 
113
                txw = winw - TYPE_3_BORDER_WIDTH*2;
-
 
114
                txh = winh - TYPE_3_BORDER_WIDTH - get_skin_height();
-
 
115
 
-
 
116
                if( (txw != clw) ||
-
 
117
                    (txh != clh) )
-
 
118
                {
-
 
119
                    txv_set_size(&txv, txw, txh);
-
 
120
                    clw = txw;
-
 
121
                    clh = txh;
-
 
122
                };
95
		case 1:
123
 
96
			draw_window();
124
                draw_window();
97
            blit_bitmap(&txv.bitmap, TYPE_3_BORDER_WIDTH, get_skin_height(), txv.w, txv.h, 0, 0);
125
                blit_bitmap(&txv.bitmap, TYPE_3_BORDER_WIDTH, get_skin_height(), txv.w, txv.h, 0, 0);
-
 
126
                break;
98
			break;
127
            }
99
		case 2:
128
		case 2:
-
 
129
            key = get_key();
100
            key = get_key();
130
            printf("key %d\n", key.code);
101
            switch(key.code)
131
            switch(key.code)
102
            {
132
            {
103
                case 27:
133
                case 27:
Line -... Line 134...
-
 
134
                    return;
-
 
135
 
-
 
136
                case 45:
-
 
137
                    txv_set_font_size(&txv, txv.font->height-3);
-
 
138
                    blit_bitmap(&txv.bitmap, TYPE_3_BORDER_WIDTH, get_skin_height(), txv.w, txv.h, 0, 0);
-
 
139
                    break;
-
 
140
 
-
 
141
                case 61:
-
 
142
                    txv_set_font_size(&txv, txv.font->height+1);
104
                    return;
143
                    blit_bitmap(&txv.bitmap, TYPE_3_BORDER_WIDTH, get_skin_height(), txv.w, txv.h, 0, 0);
105
 
144
                    break;
106
                case 177:
145
                case 177:
107
                    if( txv_scroll_up(&txv) )
146
                    if( txv_scroll_up(&txv) )