summaryrefslogtreecommitdiff
path: root/alf/alfpriv.h
diff options
context:
space:
mode:
authorJonas Kümmerlin <jonas@kuemmerlin.eu>2018-12-27 20:50:39 +0100
committerJonas Kümmerlin <jonas@kuemmerlin.eu>2018-12-27 20:50:39 +0100
commitb0b0e97aa5a06b22768bb9c9ea5e8caf383d78a4 (patch)
tree8432ca1d8bf811bc7de6240e5988fb84e35b1f40 /alf/alfpriv.h
parent64b6b40ace30693f0e12d56799abc40c997df07c (diff)
split into multiple files
Diffstat (limited to 'alf/alfpriv.h')
-rw-r--r--alf/alfpriv.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/alf/alfpriv.h b/alf/alfpriv.h
new file mode 100644
index 0000000..08f3832
--- /dev/null
+++ b/alf/alfpriv.h
@@ -0,0 +1,67 @@
+#include "alf.h"
+
+#include <windows.h>
+#include <commctrl.h>
+#include <windowsx.h>
+#include <stdio.h>
+#include <stddef.h>
+
+#ifdef _MSC_VER
+// MSVC6 for scoping hack
+# define for if(0){}else for
+#endif
+
+#include "alflist.h"
+
+typedef struct {
+ ALFListHeader list;
+ HWND hwnd;
+ UINT x;
+ UINT y;
+ UINT cptWidth;
+ UINT cptHeight;
+ UINT cptMarginTop;
+ UINT cptMarginRight;
+ UINT cptMarginBottom;
+ UINT cptMarginLeft;
+ DWORD flags;
+} ALFWidgetPriv;
+
+typedef struct {
+ int minWidth;
+ int allocatedWidth;
+ int allocatedPosition;
+ int expand : 1;
+} ALFRowOrColumn;
+
+typedef struct {
+ ALFRowOrColumn *columns;
+ ALFRowOrColumn *rows;
+ int nColumns;
+ int nRows;
+ int totalMinWidth;
+ int totalMinHeight;
+ int occupiedColumnCount;
+ int occupiedRowCount;
+} ALFLayout;
+
+typedef struct {
+ ALFAPP app;
+ ALFWindowVTable *vtbl;
+ void *closure;
+ ALFWindowFonts fonts;
+ ALFListHeader widgets;
+ int modalResult;
+ ALFLayout layout;
+ WORD defid;
+ HWND hwndFocus;
+} ALFWindowPriv;
+
+struct ALFAppPriv {
+ HINSTANCE hInstance;
+ ALFCompatFunctions *compatFn;
+};
+
+ALFCompatFunctions *
+ALF_CreateCompatFuncTable(void);
+