1#ifndef PHWIDGETS_BASIC_H
2#define PHWIDGETS_BASIC_H
4#include <photon/PtBasic.h>
7#include "./Drawing/Color.h"
45 template<
class T = void,
class Disabled = Widget::ResourceTypeTag<-1>,
bool Dummy =
false>
51 template<
class T,
int TypeID>
63 struct Arguments<
Basic, T, false>
102 BandwidthThreshold = Pt_ARG_BANDWIDTH_THRESHOLD,
133 } type, ColorResource;
151 BevelContrast = Pt_ARG_BEVEL_CONTRAST,
152 Contrast = Pt_ARG_CONTRAST
171 FillPattern = Pt_ARG_FILL_PATTERN,
172 TransPattern = Pt_ARG_TRANS_PATTERN
191 HighlihgtRoundness = Pt_ARG_HIGHLIGHT_ROUNDNESS
215 template<
class T =
void,
class Disabled =
void,
bool Dummy = false>
226 template<
class T,
bool Dummy>
227 struct Callbacks<T, void, Dummy>
228 : Callbacks<T, ResourceTag::Callback, Dummy>
284 TopEtch = Pt_TOP_ETCH,
285 BottomEtch = Pt_BOTTOM_ETCH,
286 LeftEtch = Pt_LEFT_ETCH,
287 RightEtch = Pt_RIGHT_ETCH,
290 TopOutline = Pt_TOP_OUTLINE,
291 BottomOutline = Pt_BOTTOM_OUTLINE,
292 LeftOutline = Pt_LEFT_OUTLINE,
293 RightOutline = Pt_RIGHT_OUTLINE,
294 TopBevel = Pt_TOP_BEVEL,
295 BottomBevel = Pt_BOTTOM_BEVEL,
296 LeftBevel = Pt_LEFT_BEVEL,
297 RightBevel = Pt_RIGHT_BEVEL,
298 FullBevels = Pt_FULL_BEVELS,
299 TopInline = Pt_TOP_INLINE,
300 BottomInline = Pt_BOTTOM_INLINE,
301 LeftInline = Pt_LEFT_INLINE,
302 RightInline = Pt_RIGHT_INLINE,
343 struct Arguments<void,
Widget::ResourceTypeTag<TypeID> >
355 struct Callbacks<void, void, Dummy>
356 : Basic::Callbacks<PtCallback_t, ResourceTag::Callback>
357 , Widget::Callbacks<>
362 typedef ResourceFrom<Widget::WidgetResourcesSingleton>::
363 Define::String<Arguments<char*>::String>::
364 Define::Color<Arguments<PgColor_t>::ColorResource>::
365 Define::Scalar<Arguments<unsigned short>::Scalar,
unsigned short>::
366 Define::Scalar<Arguments<char>::Scalar,
char>::
368 Define::Flag<Arguments<unsigned long>::Scalar,
unsigned long>::
371 Define::Link<Callbacks<PtCallback_t>::type,
PtCallback_t*>::
373 resource_type WidgetResourcesSingleton;
375 virtual void check();
671 phbitmask<unsigned long, Flags::Basic::type>::