summaryrefslogtreecommitdiff
path: root/alf/alf.h
diff options
context:
space:
mode:
Diffstat (limited to 'alf/alf.h')
-rw-r--r--alf/alf.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/alf/alf.h b/alf/alf.h
index cc3fc6f..a23eb8c 100644
--- a/alf/alf.h
+++ b/alf/alf.h
@@ -24,6 +24,13 @@ typedef struct {
BOOL (*pretranslatemessage)(void * /*closure*/, HWND /*window*/, MSG * /*message*/);
} ALFWindowVTable;
+typedef struct {
+ void (*create)(void * /*closure*/, HWND /*panel*/);
+ void (*destroy)(void * /*closure*/, HWND /*panel*/);
+ LRESULT (*message)(void * /*closure*/, HWND, UINT, WPARAM, LPARAM);
+ void (*paint)(void * /*closure*/, HWND, HDC, RECT * /*rcPaint*/);
+} ALFPanelVTable;
+
// layout flags
#define ALF_LAYOUT_SIZE_FIXED 0x00
#define ALF_LAYOUT_SIZE_QUERY 0x01
@@ -93,6 +100,8 @@ typedef struct {
#define ALF_WM_LBL_GETSTYLE (ALF_WM__BASE + 201)
#define ALF_WM_LBL_SETSTYLE (ALF_WM__BASE + 202)
+#define ALF_WM_PANEL_SETVTABLE (ALF_WM__BASE + 201)
+
typedef DWORD ALFColor;
#define ALF_COLOR_TRANSPARENT ((ALFColor)-1)
@@ -318,6 +327,12 @@ ALF_ComboBoxSetText(HWND combo, const TCHAR *text);
HWND
ALF_AddPanel(HWND parent, WORD id, int x, int y);
+void
+ALF_Panel_SetVTable(HWND panel, const ALFPanelVTable *vtbl, void *closure);
+
+LRESULT
+ALF_Panel_DefWindowProc(HWND panel, UINT msg, WPARAM wparam, LPARAM lparam);
+
// tab control
HWND
ALF_AddNotebook(HWND parent, WORD id, int x, int y);