0,0 → 1,61 |
|
// simple sample by Ghost |
|
#include <stdio.h> |
#include <string.h> |
#include <kolibrisys.h> |
|
#define FONT0 0 |
#define FONT1 0x10000000 |
|
#define BT_NORMAL 0 |
#define BT_DEL 0x80000000 |
#define BT_HIDE 0x40000000 |
#define BT_NOFRAME 0x20000000 |
|
char header[]={" -= C demo programm. Compiled whith KTCC halyavin and andrew_programmer port =- "}; |
|
void rotate_str(char *str){ |
char tmp; |
int i; |
tmp = str[0]; |
for(i = 1; str[i]; i++)str[i - 1] = str[i]; |
str[i - 1] = tmp; |
} |
|
void draw_window(){ |
static int offs = 0; |
static int fcolor = 0; |
static int col = 0; |
|
_ksys_window_redraw(1); |
_ksys_draw_window(100, 100, 300, 120, 0xaabbcc, 2, 0x5080d0, 0, 0x5080d0); |
_ksys_write_text(6 - offs, 8, fcolor | FONT0, header, strlen(header)); |
_ksys_draw_bar(1, 6, 5, 13, 0x05080d0); |
_ksys_draw_bar(274, 6, 26, 13, 0x05080d0); |
_ksys_make_button(300 - 19, 5, 12, 12, 1 | BT_NORMAL, 0x6688dd); |
_ksys_window_redraw(2); |
|
offs = (offs + 1) % 6; |
if(!offs)rotate_str(header); |
|
fcolor += (col)?-0x80808:0x80808; |
if(fcolor > 0xf80000 || fcolor == 0)col = !col; |
} |
|
int main(int argc, char **argv){ |
|
while(!0){ |
switch(_ksys_wait_for_event(10)){ |
case 2:return 0; |
|
case 3: |
if(_ksys_get_button_id() == 1)return 0; |
break; |
|
default: |
draw_window(); |
break; |
} |
} |
} |