Subversion Repositories Kolibri OS

Rev

Rev 8818 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
9766 turbocat 1
#include 
8818 turbocat 2
#include 
3
#include 
4
#include 
5
 
6
// Sizes
7
int x_size = 768, y_size = 256;
8
 
9
// Out example string
10
char* string = "Пример/Example";
11
 
12
int main()
13
{
14
    // Count length
15
    int ln_str = countUTF8Z(string, -1);
9766 turbocat 16
 
8818 turbocat 17
    // Create image buffer
9766 turbocat 18
    void* buffi = malloc(x_size * y_size * 3 * sizeof(char) + 8);
19
 
8818 turbocat 20
    // Set sizes
21
    *((int*)buffi) = x_size;
9766 turbocat 22
    *((int*)buffi + 1) = y_size;
23
 
8818 turbocat 24
    // Fill color
25
    memset((char*)buffi + 8, 0xFF, x_size * y_size * 3);
9766 turbocat 26
 
8818 turbocat 27
    // Draw text on buffer
9766 turbocat 28
    drawText(buffi, 5, 0, string, ln_str, 0xFF000000, 0x30C18);
29
    drawText(buffi, 5, 32, string, ln_str, 0xFF000000, 0x1030C18);
30
    drawText(buffi, 5, 64, string, ln_str, 0xFF000000, 0x2030C18);
31
    drawText(buffi, 5, 96, string, ln_str, 0xFF000000, 0x4030C18);
8818 turbocat 32
    drawText(buffi, 5, 128, string, ln_str, 0xFF000000, 0x8030C18);
33
    drawText(buffi, 5, 160, string, ln_str, 0xFF000000, 0x0F031428);
9766 turbocat 34
 
8818 turbocat 35
    while (1) {
9766 turbocat 36
        switch (_ksys_get_event()) {
37
        case KSYS_EVENT_REDRAW:
38
            _ksys_start_draw();
39
            _ksys_create_window(50, 50, 800, 300, "Rasterworks Example", 0x999999, 0x34);
40
            _ksys_draw_bitmap(buffi + 8, 10, 10, 768, 256);
41
            _ksys_end_draw();
42
            break;
8818 turbocat 43
 
9766 turbocat 44
        case KSYS_EVENT_BUTTON:
45
            if (_ksys_get_button() == 1)
46
                exit(0);
47
            break;
48
        };
8818 turbocat 49
    }
50
    return 0;
51
}