ktcc: rollback to r9529

git-svn-id: svn://kolibrios.org@9558 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
turbocat
2022-01-02 12:16:17 +00:00
parent 5c8619e65c
commit e08c6968ef
357 changed files with 17300 additions and 456 deletions

View File

@@ -3,12 +3,10 @@
#ifndef KOLIBRI_BOXLIB_H
#define KOLIBRI_BOXLIB_H
#include "sys/ksys.h"
#include <stdint.h>
#include <stddef.h>
typedef unsigned color_t;
extern int kolibri_boxlib_init(void);
/* flags meaning */
#define ed_figure_only 0b1000000000000000 // одни символы
#define ed_always_focus 0b100000000000000 // всегда с курсором (фокусом)
@@ -68,10 +66,10 @@ typedef struct {
uint32_t ar_offset;
} __attribute__ ((__packed__)) scrollbar;
extern void __stdcall (*scrollbar_h_draw)(scrollbar*);
extern void __stdcall (*scrollbar_h_mouse)(scrollbar*);
extern void __stdcall (*scrollbar_v_draw)(scrollbar*);
extern void __stdcall (*scrollbar_v_mouse)(scrollbar*);
extern void (*scrollbar_h_draw __attribute__((__stdcall__)))(scrollbar*);
extern void (*scrollbar_h_mouse __attribute__((__stdcall__)))(scrollbar*);
extern void (*scrollbar_v_draw __attribute__((__stdcall__)))(scrollbar*);
extern void (*scrollbar_v_mouse __attribute__((__stdcall__)))(scrollbar*);
// CHECKBOX
typedef struct {
@@ -88,9 +86,9 @@ typedef struct {
unsigned int size_of_str;
}check_box;
extern void __stdcall (*check_box_draw2)(check_box *);
extern void __stdcall (*check_box_mouse2)(check_box *);
extern void __stdcall (*init_checkbox2)(check_box *);
extern void (*check_box_draw2 __attribute__((__stdcall__)))(check_box *);
extern void (*check_box_mouse2 __attribute__((__stdcall__)))(check_box *);
extern void (*init_checkbox2 __attribute__((__stdcall__)))(check_box *);
// DBUTTON
typedef struct {
@@ -110,8 +108,8 @@ typedef struct {
uint32_t click; // clicked - 1, zero it after tested
} pict_button;
extern void __stdcall (*dynamic_button_draw)(pict_button *);
extern void __stdcall (*dynamic_button_mouse)(pict_button *);
extern void (*dynamic_button_draw __attribute__((__stdcall__)))(pict_button *);
extern void (*dynamic_button_mouse __attribute__((__stdcall__)))(pict_button *);
// EDITBOX
@@ -143,20 +141,10 @@ typedef struct edit_box_t {
}edit_box;
#pragma pack(pop)
extern void __stdcall (*edit_box_draw)(edit_box *) __asm__("edit_box");
extern void __stdcall (*edit_box_key)(edit_box *, unsigned int key_val);
extern void __stdcall (*edit_box_mouse)(edit_box *);
extern void __stdcall (*edit_box_set_text)(edit_box *, char *);
void edit_box_key_safe(edit_box *e, ksys_oskey_t ch) {
int a=3;
asm_inline (
"pushl %2 \n\t"
"call *%1 \n\t"
::"a"(ch.val), "m"(edit_box_key), "m"(e)
:"memory"
);
}
extern void (*edit_box_draw __attribute__((__stdcall__)))(edit_box *);
extern void edit_box_key (edit_box *, unsigned int key_val)__attribute__((__stdcall__));
extern void (*edit_box_mouse __attribute__((__stdcall__)))(edit_box *);
extern void (*edit_box_set_text __attribute__((__stdcall__)))(edit_box *, char *);
// FRAME
typedef struct {
@@ -174,7 +162,7 @@ typedef struct {
color_t font_bg_color;
}frame;
extern void __stdcall (*frame_draw)(frame *);
extern void (*frame_draw)(frame *);
// MENUBAR
typedef struct
@@ -215,9 +203,9 @@ typedef struct
uint32_t get_mouse_flag;
} menubar;
extern void __stdcall (*menu_bar_draw)(menubar *);
extern void __stdcall (*menu_bar_mouse)(menubar *);
extern void __stdcall (*menu_bar_activate)(menubar *);
extern void (*menu_bar_draw)(menubar *);
extern void (*menu_bar_mouse)(menubar *);
extern void (*menu_bar_activate)(menubar *);
// OPTIONBOX
typedef struct option_box_t {
@@ -234,8 +222,8 @@ typedef struct option_box_t {
uint32_t flags;
} __attribute__ ((__packed__)) option_box;
extern void __stdcall (*option_box_draw)(option_box **);
extern void __stdcall (*option_box_mouse)(option_box **);
extern void (*option_box_draw __attribute__((__stdcall__)))(option_box **);
extern void (*option_box_mouse __attribute__((__stdcall__)))(option_box **);
// PATHSHOW
typedef struct {
@@ -252,8 +240,8 @@ typedef struct {
uint32_t temp_text_length;
} __attribute__ ((__packed__)) pathview;
extern void __stdcall (*path_show_prepare)(pathview *);
extern void __stdcall (*path_show_draw)(pathview *);
extern void (*path_show_prepare __attribute__((__stdcall__)))(pathview *);
extern void (*path_show_draw __attribute__((__stdcall__)))(pathview *);
// PROGRESSBAR
typedef struct {
@@ -270,7 +258,8 @@ typedef struct {
unsigned int frame_color;
} progressbar;
extern void __stdcall (*progressbar_draw)(progressbar *);
extern void __stdcall (*progressbar_progress)(progressbar *);
extern void (*progressbar_draw __attribute__((__stdcall__)))(progressbar *);
extern void (*progressbar_progress __attribute__((__stdcall__)))(progressbar *);
#endif /* KOLIBRI_BOXLIB_H */