00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __SDEFAULT_H__
00021 #define __SDEFAULT_H__
00022
00023 #include "csskin.h"
00024 #include "csbackgr.h"
00025
00026 #define CSWS_SKIN_DECLARE_DEFAULT(var) \
00027 CSWS_SKIN_DECLARE (my##var##Type, csSkin); \
00028 CSWS_SKIN_SLICE (DefaultScrollBar); \
00029 CSWS_SKIN_SLICE (DefaultButton); \
00030 CSWS_SKIN_SLICE (DefaultWindow); \
00031 CSWS_SKIN_SLICE (DefaultDialog); \
00032 CSWS_SKIN_SLICE (DefaultTitlebar); \
00033 CSWS_SKIN_SLICE (DefaultListBox); \
00034 CSWS_SKIN_SLICE (DefaultListBoxItem); \
00035 CSWS_SKIN_DECLARE_END var
00036
00037 class csButton;
00038 class csListBox;
00039 struct iTextureHandle;
00040
00044 class csDefaultButtonSkin : public csButtonSkin
00045 {
00046 public:
00048 virtual void Draw (csComponent &iComp);
00049
00051 virtual void SuggestSize (csButton &This, int &w, int &h);
00052 };
00053
00057 class csDefaultWindowSkin : public csWindowSkin
00058 {
00059
00060 iTextureHandle *ButtonTex;
00061
00062 csBackground Back;
00063
00064 csSkin *Skin;
00065
00066 public:
00068 csDefaultWindowSkin () : ButtonTex (NULL), Skin (NULL) {}
00069
00071 virtual void Initialize (csApp *iApp, csSkin *Parent);
00072
00074 virtual void Deinitialize ();
00075
00077 virtual void Draw (csComponent &iComp);
00078
00080 virtual void PlaceGadgets (csWindow &This);
00081
00083 virtual csButton *CreateButton (csWindow &This, int ButtonID);
00084
00086 virtual void SetState (csWindow &This, int Which, bool State);
00087
00089 virtual void SetBorderSize (csWindow &This);
00090
00091 protected:
00092 void SetButtBitmap (csButton *button, const char *id);
00093 };
00094
00098 class csDefaultDialogSkin : public csDialogSkin
00099 {
00100
00101 csBackground Back;
00102
00103 public:
00105 virtual void Initialize (csApp *iApp, csSkin *Parent);
00106
00108 virtual void Deinitialize ();
00109
00111 virtual void Draw (csComponent &iComp);
00112
00114 virtual void SetBorderSize (csDialog &This);
00115 };
00116
00120 class csDefaultTitlebarSkin : public csTitlebarSkin
00121 {
00122
00123 csBackground ABack;
00124
00125 csBackground IBack;
00127 bool Hash;
00128
00129 public:
00131 void Initialize (csApp *iApp, csSkin *Parent);
00132
00134 virtual void Deinitialize ();
00135
00137 virtual void Draw (csComponent &iComp);
00138 };
00139
00143 class csDefaultListBoxSkin : public csListBoxSkin
00144 {
00145 public:
00147 virtual void Draw (csComponent &iComp);
00148
00150 virtual void SuggestSize (csListBox &This, int &w, int &h);
00151 };
00152
00156 class csDefaultListBoxItemSkin : public csListBoxItemSkin
00157 {
00158 public:
00160 virtual void Draw (csComponent &iComp);
00161 };
00162
00163
00167 class csDefaultScrollBarSkin : public csScrollBarSkin
00168 {
00169 public:
00171 virtual void Draw(csComponent &iComp);
00172 };
00173
00174
00175 #endif // __SDEFAULT_H__