summaryrefslogtreecommitdiff
path: root/alf/alf.h
diff options
context:
space:
mode:
authorJonas Kümmerlin <jonas@kuemmerlin.eu>2020-04-29 11:31:02 +0200
committerJonas Kümmerlin <jonas@kuemmerlin.eu>2020-04-29 11:31:02 +0200
commite40fa1cd91cff58be6e7c91273789eb838ebe611 (patch)
tree478e8076407e66b50a4a323afd1cbe7ffd7d5978 /alf/alf.h
parentff2992cd89491957543667e91fa1fd4373c004d9 (diff)
widget factory: move to tabbed interface
Diffstat (limited to 'alf/alf.h')
-rw-r--r--alf/alf.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/alf/alf.h b/alf/alf.h
index 037f478..faeb177 100644
--- a/alf/alf.h
+++ b/alf/alf.h
@@ -21,12 +21,20 @@ typedef struct {
} ALFWindowVTable;
typedef struct {
- void (*create)(void * /*closure*/, HWND /*panel*/);
+ void (*attachvtbl)(void * /*closure*/, HWND /*panel*/);
void (*destroy)(void * /*closure*/, HWND /*panel*/);
LRESULT (*message)(void * /*closure*/, HWND, UINT, WPARAM, LPARAM);
+ LRESULT (*command)(void * /*closure*/, HWND /*window*/, WORD /*notificationcode*/, WORD /*sourceid*/, HWND /*control*/);
+ LRESULT (*notify)(void * /*closure*/, HWND /*window*/, WPARAM /*sourceid*/, NMHDR *);
void (*paint)(void * /*closure*/, HWND, HDC, RECT * /*rcPaint*/);
+ void (*windowposchanged)(void * /*closure*/, HWND, WINDOWPOS *);
} ALFPanelVTable;
+typedef struct {
+ const ALFPanelVTable *vtbl;
+ void *closure;
+} ALFPanelSetVtblParams;
+
// layout flags
#define ALF_LAYOUT_SIZE_FIXED 0x00
#define ALF_LAYOUT_SIZE_QUERY 0x01
@@ -111,6 +119,8 @@ typedef struct {
#define ALF_WM_NTBK_GETFLAGS (ALF_WM__BASE + 201)
#define ALF_WM_NTBK_SETFLAGS (ALF_WM__BASE + 202)
+#define ALF_WM_USER (ALF_WM__BASE + 300)
+
typedef DWORD ALFColor;
#define ALF_COLOR_TRANSPARENT ((ALFColor)-1)
@@ -180,6 +190,12 @@ ALF_DefWindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
HWND
ALF_AddLabel(HWND win, WORD id, int x, int y, const TCHAR *text);
+DWORD
+ALF_LabelStyle(HWND hwndLabel);
+
+void
+ALF_LabelSetStyle(HWND hwndLabel, DWORD style);
+
HWND
ALF_AddEdit(HWND win, WORD id, int x, int y, const TCHAR *text);
@@ -328,6 +344,11 @@ ALF_LayoutColumnExpandNumerator(HWND parent, int colno);
BOOL
ALF_LayoutSetColumnExpandNumerator(HWND parent, int colno, int expand);
+
+void
+ALF_FillRect(HDC dc, const RECT *rc, ALFColor color);
+
+
// combo box
HWND
@@ -370,6 +391,9 @@ ALF_Panel_SetVTable(HWND panel, const ALFPanelVTable *vtbl, void *closure);
LRESULT
ALF_Panel_DefWindowProc(HWND panel, UINT msg, WPARAM wparam, LPARAM lparam);
+void
+ALF_Panel_DefPaint(HWND panel, HDC hDC, RECT *rcPaint);
+
// tab control
HWND
ALF_AddNotebook(HWND parent, WORD id, int x, int y);