aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/bfc/wasabi_std_wnd.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Wasabi/bfc/wasabi_std_wnd.h')
-rw-r--r--Src/Wasabi/bfc/wasabi_std_wnd.h86
1 files changed, 86 insertions, 0 deletions
diff --git a/Src/Wasabi/bfc/wasabi_std_wnd.h b/Src/Wasabi/bfc/wasabi_std_wnd.h
new file mode 100644
index 00000000..b4a45274
--- /dev/null
+++ b/Src/Wasabi/bfc/wasabi_std_wnd.h
@@ -0,0 +1,86 @@
+#ifndef _STD_WIN_H
+#define _STD_WIN_H
+
+#include <bfc/platform/platform.h>
+#include <bfc/wasabi_std.h>
+
+#define ROOTSTRING L"RootWnd"
+#define BASEWNDCLASSNAME L"BaseWindow_" ROOTSTRING
+
+#ifdef __cplusplus
+
+class ifc_window;
+namespace Wasabi
+{
+ namespace Std
+ {
+ namespace Wnd {
+ OSWINDOWHANDLE createWnd(RECT* r, int nochild, int acceptdrops, OSWINDOWHANDLE parent, OSMODULEHANDLE module, ifc_window* rw);
+ void destroyWnd(OSWINDOWHANDLE wnd);
+
+ int isValidWnd(OSWINDOWHANDLE wnd);
+
+ void setWndPos(OSWINDOWHANDLE wnd, OSWINDOWHANDLE zorder, int x, int y, int w, int h,
+ int nozorder, int noactive, int nocopybits, int nomove, int noresize);
+ void bringToFront(OSWINDOWHANDLE wnd);
+ void sendToBack(OSWINDOWHANDLE wnd);
+ int isWndVisible(OSWINDOWHANDLE wnd);
+ void showWnd(OSWINDOWHANDLE wnd, int noactivate = FALSE);
+ void hideWnd(OSWINDOWHANDLE wnd);
+ int isPopup(OSWINDOWHANDLE wnd);
+ void setEnabled(OSWINDOWHANDLE wnd, int enabled);
+ void setFocus(OSWINDOWHANDLE wnd);
+ OSWINDOWHANDLE getFocus();
+ void setTopmost(OSWINDOWHANDLE, int topmost);
+
+ void invalidateRect(OSWINDOWHANDLE wnd, RECT* r = NULL);
+ void invalidateRegion(OSWINDOWHANDLE wnd, OSREGIONHANDLE region);
+ void validateRect(OSWINDOWHANDLE wnd, RECT* r = NULL);
+ void validateRegion(OSWINDOWHANDLE wnd, OSREGIONHANDLE region);
+ void update(OSWINDOWHANDLE wnd);
+ int getUpdateRect(OSWINDOWHANDLE wnd, RECT* r);
+ void getUpdateRegion(OSWINDOWHANDLE wnd, OSREGIONHANDLE region);
+ int haveGetRandomRegion();
+ void getRandomRegion(HDC hdc, OSREGIONHANDLE region); // sorry, HDC
+
+ void setWndRegion(OSWINDOWHANDLE wnd, OSREGIONHANDLE region, int redraw = FALSE);
+
+ int isDesktopAlphaAvailable();
+ int isTransparencyAvailable();
+ void setLayeredWnd(OSWINDOWHANDLE wnd, int layered);
+ int isLayeredWnd(OSWINDOWHANDLE wnd);
+ void setLayeredAlpha(OSWINDOWHANDLE wnd, int amount);
+ void updateLayeredWnd(OSWINDOWHANDLE wnd, int x, int y, int w, int h, HDC surfdc, int alpha);
+ void moveLayeredWnd(OSWINDOWHANDLE wnd, int x, int y);
+
+ void getClientRect(OSWINDOWHANDLE wnd, RECT* r);
+ void getWindowRect(OSWINDOWHANDLE wnd, RECT* r);
+ void clientToScreen(OSWINDOWHANDLE wnd, int* x, int* y);
+ void screenToClient(OSWINDOWHANDLE wnd, int* x, int* y);
+
+ void setParent(OSWINDOWHANDLE child, OSWINDOWHANDLE newparent);
+ OSWINDOWHANDLE getParent(OSWINDOWHANDLE wnd);
+ // void reparent(OSWINDOWHANDLE child, OSWINDOWHANDLE newparent);
+ OSWINDOWHANDLE getTopmostChild(OSWINDOWHANDLE wnd);
+
+ void setCapture(OSWINDOWHANDLE wnd);
+ void releaseCapture();
+ OSWINDOWHANDLE getCapture();
+
+ void revokeDragNDrop(OSWINDOWHANDLE wnd);
+
+ void setWndName(OSWINDOWHANDLE wnd, const wchar_t* name);
+ void getWndName(OSWINDOWHANDLE wnd, wchar_t* name, int maxlen);
+ void setIcon(OSWINDOWHANDLE wnd, OSICONHANDLE icon, int large = FALSE);
+
+ OSWINDOWHANDLE getActiveWindow();
+ void setActiveWindow(OSWINDOWHANDLE wnd);
+ void clipOSChildren(OSWINDOWHANDLE wnd, OSREGIONHANDLE reg);
+ int alphaStretchBlit(HDC destHDC, int dstx, int dsty, int dstw, int dsth, HDC sourceHDC, int srcx, int srcy, int srcw, int srch);
+ OSWINDOWHANDLE getWindowFromPoint(POINT pt);
+
+ };
+ }
+}
+#endif
+#endif