00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __SKIN_H
00025 #define __SKIN_H
00026
00027 #include "Bases.h"
00028 #include "Gui.h"
00029 #include "Tag.h"
00030
00031
00032
00033 #define TAG_SKIN_NAME ((TAG_USER+101)|TAGT_STRING)
00034 #define TAG_SKIN_MODULE (TAG_USER+102)
00035 #define TAG_SKIN_RECOGNIZE (TAG_USER+103)
00036 #define TAG_SKIN_CREATESKIN (TAG_USER+104)
00037 #define TAG_SKIN_DELETESKIN (TAG_USER+105)
00038 #define TAG_SKIN_RENDERBEHIND (TAG_USER+106)
00039 #define TAG_SKIN_RENDEROVER (TAG_USER+107)
00040 #define TAG_SKIN_RENDERBACKGROUND (TAG_USER+108)
00041 #define TAG_SKIN_RENDERCUSTOM (TAG_USER+109)
00042 #define TAG_SKIN_GETEXTENT (TAG_USER+110)
00043 #define TAG_SKIN_GETINNERRECT (TAG_USER+111)
00044 #define TAG_SKIN_FILLCOLORTABLE (TAG_USER+112)
00045 #define TAG_SKIN_FILLGADGETINFO (TAG_USER+113)
00046 #define TAG_SKIN_GETFONT (TAG_USER+114)
00047 #define TAG_SKIN_LOADSKIN (TAG_USER+115)
00048 #define TAG_SKIN_UNLOADSKIN (TAG_USER+116)
00049 #define TAG_SKIN_GETCUSTOMTAGLIST (TAG_USER+117)
00050
00051
00052
00053 enum skin_functions
00054 {
00055 SKIN_REGISTERSKIN=SKIN_FUNCBASE,
00056 SKIN_FUNC_DONE
00057 };
00058
00059
00060
00061 u32 skin_CallTL(int function, tag *taglist);
00062 u32 skin_Call(int function, u32 firsttag, ...);
00063
00064 #ifdef __SKIN_MODULE
00065 typedef struct
00066 {
00067 skin_Class_t *skinclass;
00068 char *path;
00069 } skin_Common_t;
00070 #endif
00071
00072
00073 u32 skin_RegisterSkin(u32 firsttag, ...);
00074 u32 skin_RegisterSkinTL(tag *taglist);
00075
00076 int skin_Init(void);
00077 void skin_CleanUp(void);
00078
00079 Skin_t *skin_CreateSkin(gui_App_t *app, char *skinname);
00080 void skin_DeleteSkin(Skin_t *skin);
00081
00082 int skin_LoadSkin(Skin_t *skin, char *class);
00083 int skin_UnloadSkin(Skin_t *skin, u32 class_id);
00084
00085 int skin_RenderBehind(Skin_t *skin, Gadget_t *gad, Rect_t *rect, u32 state);
00086 int skin_RenderOver(Skin_t *skin, Gadget_t *gad, Rect_t *rect, u32 state);
00087 int skin_RenderBackground(Skin_t *skin, Gadget_t *gad, Rect_t *rect, u32 state);
00088 int skin_RenderCustom(Skin_t *skin, Gadget_t *gad, Rect_t *rect, int custom);
00089 int skin_GetExtent(Skin_t *skin, Gadget_t *gad, Extent_t *ext, Extent_t *outer);
00090 int skin_GetInnerRect(Skin_t *skin, Gadget_t *gad, Rect_t *rect, Rect_t *inner);
00091 int skin_FillColorTable(Skin_t *skin, Gadget_t *gad, int state);
00092 int skin_FillGadgetInfo(Skin_t *skin, Gadget_t *gad);
00093 int skin_GetFont(Skin_t *skin, Gadget_t *gad);
00094 tag *skin_GetCustomTaglist(Skin_t *skin, Gadget_t *gad);
00095 char *skin_GetWindowDecorationName(Skin_t *skin);
00096
00097 #endif