#ifndef _STD_WIN_H #define _STD_WIN_H #include #include #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