ttkThemeInt.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*
  2. * Theme engine: private definitions.
  3. *
  4. * Copyright (c) 2004 Joe English. Freely redistributable.
  5. */
  6. #ifndef _TTKTHEMEINT
  7. #define _TTKTHEMEINT
  8. #include "ttkTheme.h"
  9. typedef struct Ttk_TemplateNode_ Ttk_TemplateNode, *Ttk_LayoutTemplate;
  10. MODULE_SCOPE Ttk_ElementClass *Ttk_GetElement(Ttk_Theme, const char *name);
  11. MODULE_SCOPE const char *Ttk_ElementClassName(Ttk_ElementClass *);
  12. MODULE_SCOPE void Ttk_ElementSize(
  13. Ttk_ElementClass *, Ttk_Style, char *recordPtr, Tk_OptionTable,
  14. Tk_Window tkwin, Ttk_State state,
  15. int *widthPtr, int *heightPtr, Ttk_Padding*);
  16. MODULE_SCOPE void Ttk_DrawElement(
  17. Ttk_ElementClass *, Ttk_Style, char *recordPtr, Tk_OptionTable,
  18. Tk_Window tkwin, Drawable d, Ttk_Box b, Ttk_State state);
  19. MODULE_SCOPE Tcl_Obj *Ttk_QueryStyle(
  20. Ttk_Style, void *, Tk_OptionTable, const char *, Ttk_State state);
  21. MODULE_SCOPE Ttk_LayoutTemplate Ttk_ParseLayoutTemplate(
  22. Tcl_Interp *, Tcl_Obj *);
  23. MODULE_SCOPE Tcl_Obj *Ttk_UnparseLayoutTemplate(Ttk_LayoutTemplate);
  24. MODULE_SCOPE Ttk_LayoutTemplate Ttk_BuildLayoutTemplate(Ttk_LayoutSpec);
  25. MODULE_SCOPE void Ttk_FreeLayoutTemplate(Ttk_LayoutTemplate);
  26. MODULE_SCOPE void Ttk_RegisterLayoutTemplate(
  27. Ttk_Theme theme, const char *layoutName, Ttk_LayoutTemplate);
  28. MODULE_SCOPE Ttk_Style Ttk_GetStyle(Ttk_Theme themePtr, const char *styleName);
  29. MODULE_SCOPE Ttk_LayoutTemplate Ttk_FindLayoutTemplate(
  30. Ttk_Theme themePtr, const char *layoutName);
  31. MODULE_SCOPE const char *Ttk_StyleName(Ttk_Style);
  32. #endif /* _TTKTHEMEINT */