5 #ifndef _INC_cXDialog_H
6 #define _INC_cXDialog_H
10 #include "../Style/cXStyleSheet.h"
11 #include "../Style/cXIcon.h"
12 #include "../Window/cXWindow.h"
45 #define DIALOGPLACEMENT_VERCODE 0x02
118 if (pszCaption ==
nullptr)
129 if ((
get_Style() & WS_CAPTION) != WS_CAPTION)
161 virtual void ShowWindow(SHOWWINDOW_t nCmdShow = SW_SHOWNORMAL);
164 virtual void Render(
void);
207 __super::ModifyFlags(uiFlagsAdd, uiFlagsRem);
214 if (
m_pDP ==
nullptr)
215 return COLOR_ALPHA_OPAQUE;
216 return(
m_pDP->m_bFrameAlpha);
221 if (
m_pDP ==
nullptr)
223 m_pDP->m_bFrameAlpha = bFrameAlpha;
230 __super::put_BackAlpha(bBackAlpha);
231 if (
m_pDP ==
nullptr)
233 m_pDP->m_bBackAlpha = bBackAlpha;
248 return m_bDialogLocked;
255 m_bDialogLocked = bIsLocked;
266 #define cXDialogMethod(a,b,c) M_##a,
268 #undef cXDialogMethod
283 bool NC_RenderCaptionFore(
const cPoint2i& ptAbsPos,
bool bActive);
286 void ShowWindowMinMax(UINT cmd,
cRectI&
rect);
287 void UpdateDialogIcon();
307 bool m_bDialogLocked;
#define UNREFERENCED_PARAMETER(P)
< _WIN32 type thing. get rid of stupid warning.
Definition: SysTypes.h:299
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
#define MAKEDWORD(low, high)
Definition: cTypes.h:32
#define DIALOGPLACEMENT_VERCODE
Definition: cXDialog.h:45
Definition: cXDialog.h:73
cXDialogPlacementObj(X_WNDCLASS_TYPE XClassType=X_WNDCLASS_INVALID, int iEnum=0)
Definition: cXDialog.h:77
X_WNDCLASS_TYPE m_eXWClass
class of the placement held
Definition: cXDialog.h:88
HASHCODE_t get_HashCode() const noexcept
Definition: cXDialog.h:82
int m_iEnum
what instance of this X_WNDCLASS_TYPE
Definition: cXDialog.h:89
bool IsValidFormat() const
Definition: cXDialog.cpp:87
Definition: cXDialog.h:40
DWORD m_dwXTypeData1
m_eXWClass specific1. Current selected item. cXDlgQuickbar
Definition: cXDialog.h:68
COLOR_ELEM_t m_bFrameAlpha
window Border Alpha level. 255 = COLOR_ALPHA_OPAQUE
Definition: cXDialog.h:66
COLOR_ELEM_t m_bBackAlpha
window client area alpha level.
Definition: cXDialog.h:65
bool m_bDialogLocked
whether dialog was locked in place
Definition: cXDialog.h:69
bool IsValidFormat() const
Definition: cXDialog.h:55
static bool UseDialogPlacement(X_WNDCLASS_TYPE XClassType)
Definition: cXDialog.cpp:78
BYTE m_bVerCode
So we can tell if the registry is ok.
Definition: cXDialog.h:64
cXDialogPlacement()
Definition: cXDialog.cpp:69
WINDOCKFLAG_MASK m_uDockFlags
Definition: cXDialog.h:67
void InitPlacement()
Definition: cXDialog.h:49
Definition: cXDialog.h:22
MINMAXINFO m_MinMax
for the current move.
Definition: cXDialog.h:36
DWORD m_dwHitTest
type of action. HTNOWHERE
Definition: cXDialog.h:28
cRectI m_rectStart
starting window rect for dialog size drag. only updated on mousedown.
Definition: cXDialog.h:34
cRectI m_SizingRect
previous window rect.
Definition: cXDialog.h:30
cPoint2i m_ptStartPoint
starting point for dialog size drag
Definition: cXDialog.h:33
void InitMouseRect()
Definition: cXDialog.cpp:1409
cPoint2i m_ptLastPoint
last point of update.
Definition: cXDialog.h:31
cRectI m_MouseRect
restrict the mouse to my parent!
Definition: cXDialog.h:29
Definition: cXDialog.h:96
virtual DWORD OnNCHitTest(int x, int y) const
Definition: cXDialog.cpp:1919
PLAYCMD_TYPE get_DialogCommand() const
Definition: cXDialog.cpp:617
HRESULT SetupDialogFromResourceT(cResDialog &DlgTemp, const GChar_t *pszName)
Definition: cXDialogTemplate.cpp:399
cRectI ConstrainWHRatio(const cRectI &rectInput, PIXELS_t dx=0, PIXELS_t dy=0)
Definition: cXDialog.cpp:1528
virtual bool OnSysCommand(WPARAM nSysCmd, PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1823
float m_fRatioWH
Definition: cXDialog.h:311
virtual void SetWidthHeight(PIXELS_t Width, PIXELS_t Height)
Definition: cXDialog.cpp:1344
HRESULT SetupDialogFromResource(const GChar_t *pszName)
Definition: cXDialogTemplate.cpp:423
virtual bool OnMouseDown(MBUTTON_TYPE uButton, PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1654
virtual HRESULT InitDeviceObjects(IDirect3DDevice9 *pDev)
Definition: cXDialog.cpp:2180
bool get_DialogLocked() const
Definition: cXDialog.h:246
static cXDialogSizingParams sm_MoveSizing
Definition: cXDialog.h:318
bool MoveSizing_OnMouseMove(PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1472
COLOR_ELEM_t get_FrameAlpha(void) const
Definition: cXDialog.h:211
HRESULT SetupChildrenFromResource(const GChar_t *pszName)
Definition: cXDialogTemplate.cpp:327
void StartDragOff(PIXELS_t cursorX, PIXELS_t cursorY)
Definition: cXDialog.cpp:1433
virtual bool InitXWindow(void)
Definition: cXDialog.cpp:402
void KeepDialogOnScreenWH()
Definition: cXDialog.cpp:1298
virtual HRESULT OnResetDeviceX()
Definition: cXDialog.cpp:2187
STDMETHOD() s_Invoke(const cScriptableMethod *pMethod, const cVariant &vArgs, cVariant &vValRet) override
Definition: cXDialog.cpp:2193
virtual bool OnRender(void)
Definition: cXDialog.cpp:1885
virtual bool OnDrop(cXWindow *pDragged, cXWindow *pConsumer, bool bTest)
Definition: cXDialog.h:180
virtual void Render(void)
Definition: cXDialog.cpp:1120
virtual bool OnMouseMove(MBUTTON_TYPE uButton, PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1612
bool HasStyleCaption() const
Definition: cXDialog.h:127
void put_FrameAlpha(COLOR_ELEM_t bFrameAlpha)
Definition: cXDialog.h:218
virtual bool OnKeyFocus(bool bActive)
Definition: cXDialog.cpp:1165
const GChar_t * m_idDialogResource
Definition: cXDialog.h:304
bool IsDialogOnScreenOnly() const
Definition: cXDialog.cpp:1266
bool MoveSizing_OnMouseDown(DWORD dwHitTest, PIXELS_t X, PIXELS_t Y)
Definition: cXDialog.cpp:1441
static const ATOMCHAR_t * sm_pHTTrackCursor
Definition: cXDialog.h:298
cValueLerp< COLOR_ELEM_t > m_FrameAlpha
Definition: cXDialog.h:315
M_TYPE_
Definition: cXDialog.h:265
@ M_QTY
Definition: cXDialog.h:269
virtual bool CanTakeMouseInput(void) const
Definition: cXDialog.cpp:598
virtual bool OnGetMinMaxInfo(LPMINMAXINFO pMinMax) const
Definition: cXDialog.cpp:1248
virtual void ModifyFlags(WINFLAG_MASK uiFlagsAdd, WINFLAG_MASK uiFlagsRem=0)
Definition: cXDialog.h:205
void put_BackAlpha(COLOR_ELEM_t bBackAlpha)
Definition: cXDialog.h:226
void DialogPlacementInit(void)
Definition: cXDialog.cpp:151
cXIcon2 m_Icon
Definition: cXDialog.h:300
virtual HRESULT DisposeThis()
utility
Definition: cXDialog.cpp:132
virtual void OnContextMenu(cXMenu *pMenu, cXWindow *pCtrl)
Definition: cXDialog.cpp:2037
virtual void OnDialogActive(bool bActive)
Definition: cXDialog.cpp:1157
void put_HideTitlebar(bool bHideTitleBar)
Definition: cXDialog.cpp:350
virtual void OnSize(UINT uType, PIXELS_t cx, PIXELS_t cy)
Definition: cXDialog.cpp:1148
virtual void OnCommandClose()
Definition: cXDialog.cpp:1817
virtual bool OnMouseDblClk(MBUTTON_TYPE uButton, PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1793
cString m_strCaption
Definition: cXDialog.h:316
void FitDialogToClientArea(void)
Definition: cXDialog.cpp:783
virtual void put_Text(const GChar_t *pszCaption)
Definition: cXDialog.h:116
virtual void SetXYPos(PIXELS_t X, PIXELS_t Y)
Definition: cXDialog.cpp:1322
virtual cString get_Text(void) const
Definition: cXDialog.h:112
void UpdateScalingClient(void)
Definition: cXDialog.cpp:436
void KeepDialogOnScreen()
Definition: cXDialog.cpp:1314
void NC_AdjustClientRect()
Definition: cXDialog.cpp:877
virtual bool LoadTextureFromFile(const FILECHAR_t *File, TEXTURELOAD_t uLoadFlags=TEXTURELOAD_NOP)
Definition: cXDialog.cpp:591
cRectI m_rectNonBorder
Definition: cXDialog.h:301
cRectI m_rectSysCmd[6]
Definition: cXDialog.h:302
virtual bool OnMouseUp(MBUTTON_TYPE uButton, PIXELS_t x, PIXELS_t y)
Definition: cXDialog.cpp:1719
bool DialogPlacementUpdate()
Definition: cXDialog.cpp:308
static cScriptableMethod sm_Methods[M_QTY+1]
Definition: cXDialog.h:271
virtual void OnDragOff(cXWindow *pDragged)
Definition: cXDialog.h:187
HRESULT SetupInitDataFromResource(const GChar_t *pszName)
Definition: cXDialogTemplate.cpp:387
DLGID_t m_idHelpText
Definition: cXDialog.h:305
const cRectI & get_ClientRect() const
Definition: cXDialog.h:122
HRESULT NC_DrawSysCmd(const cPoint2i &ptAbsPos, XSTYLE_ELEM_TYPE eStyleElem, XSTYLE_ELEM_TYPE iControlID)
Definition: cXDialog.cpp:980
virtual void ShowWindow(SHOWWINDOW_t nCmdShow=SW_SHOWNORMAL)
Definition: cXDialog.cpp:502
cXDialogPlacementPtr m_pDP
Definition: cXDialog.h:299
bool IsDialogActingAsControl() const
Definition: cXDialog.h:238
HRESULT SetViewportDialog(cPoint2i &ptAbsolutePos)
Definition: cXDialog.cpp:377
void ShowWindowRange(DLGID_t idStart, DLGID_t idEnd, int nCmd)
Definition: cXDialogTemplate.cpp:439
void SetScissorDialog(cPoint2i &ptAbsolutePos)
Definition: cXDialog.cpp:388
void put_DialogLocked(bool bIsLocked)
Definition: cXDialog.h:250
HRESULT SetupFrameFromResource(cResDialog &DlgTemp)
Definition: cXDialogTemplate.cpp:341
bool GetMinMaxInfo(MINMAXINFO &MinMax) const
Definition: cXDialog.cpp:1181
static bool NC_IsSizing(DWORD dwHTMode)
Definition: cXDialog.cpp:701
HRESULT SetupChildrenFromResourceT(cResDialog &DlgTemp)
Definition: cXDialogTemplate.cpp:304
virtual bool OnCommand(DLGID_t id, cXWindow *pCtrl, WORD wNotify)
Definition: cXDialog.cpp:2124
CSCRIPT_CLASS_DEF1(XDialog, cXWindowText)
bool NC_AdjustWindowRect(cRectI &rectClient) const
Definition: cXDialog.cpp:752
cRectI m_rectClientArea
Definition: cXDialog.h:314
virtual void put_Style(DWORD dwStyle)
Definition: cXDialog.cpp:417
void KeepDialogOnScreenXY()
Definition: cXDialog.cpp:1278
virtual void OnColorChange()
Definition: cXDialog.cpp:2098
virtual cString GetToolTip(cXWindow *pCtrl, PIXELS_t x, PIXELS_t y) const
Definition: cXDialog.cpp:1375
cXDialogPtr m_pPrevModalDialog
Definition: cXDialog.h:317
~cXDialog()
Definition: cXDialog.cpp:127
void SetRadioRange(DLGID_t idStart, DLGID_t idEnd, DLGID_t idCurrent)
Definition: cXDialogTemplate.cpp:454
Definition: cXWindow.h:484
Definition: cXWindow.h:94
DWORD get_Style(void) const noexcept
Definition: cXWindow.h:199
friend class cXDialog
Definition: cXWindow.h:100
cXWindowPtr m_pParentWnd
Set when someone calls AddChildWindow(pMe) for me on my parent.
Definition: cXWindow.h:465
bool HasFlags(WINFLAG_MASK uiFlags) const noexcept
Definition: cXWindow.h:244
Definition: cResDialog.h:254
Definition: cResDialog.h:189
Definition: cResDialog.h:172
const cVariant & vArgs
Definition: cScriptableObj.h:61
Definition: cScriptableInterface.h:97
cString GetStringTest(TEXTLOC_t idTextLoc)
Definition: cTextLocMgr.cpp:71
static const UID_t k_CLEAR
Hard coded UID_t values.
Definition: cUID.h:32
Definition: cVariant.h:26
Definition: WinTypes.h:232
void InitPlacement() noexcept
Definition: WinTypes.h:262
bool isInitPlacement() const noexcept
Definition: WinTypes.h:267
DWORD TEXTURELOAD_t
mask of TEXTURELOAD_TYPE_
Definition: cXTextureFile.h:41
@ TEXTURELOAD_NOP
load default. demand load.
Definition: cXTextureFile.h:23
Definition: GrayGUI.cpp:11
X_WNDCLASS_TYPE
Definition: cXWindow.h:34
@ X_WNDCLASS_INVALID
Definition: cXWindow.h:37
XSTYLE_ELEM_TYPE
Definition: cXStyleSheet.h:17
cRefPtr< cXDialogPlacementObj > cXDialogPlacementPtr
Definition: cXDialog.h:91
@ WINFLAG_HIDETITLE
pass tool tip to parent.
Definition: cXWindow.h:56
DWORD WINFLAG_MASK
Definition: cXWindow.h:44
cRefPtr< cXDialog > cXDialogPtr
Definition: cXDesktopMgr.h:16
DWORD WINDOCKFLAG_MASK
Definition: cXWindow.h:66
__DECL_IMPORT cTextLocMgr g_Text
default application language. ENU. Not cSingleton
Definition: cTextLocMgr.cpp:18
UINT DLGID_t
old window format this was a WORD, EX format this is UINT32.
Definition: cResDialog.h:68
BYTE COLOR_ELEM_t
A single 8 bit color element. alpha, red, green, or blue intensity as 0-255.
Definition: cColorRef.h:34
MBUTTON_TYPE
Definition: cInputBase.h:40
interface const RECTQ_t & rect
Definition: cQuadtree.h:44
int PIXELS_t
Count of pixels in a dimension of some image/surface.
Definition: cSurfaceInfo.h:20
HASHCODE32_t UID_t
Sort of the same as a HASHCODE_t. not the same as UIDINDEX_t.
Definition: cUID.h:18
char FILECHAR_t
a UTF8 char in a file name. like TCHAR
Definition: FileName.h:22
UINT_PTR HASHCODE_t
could hold a pointer converted to a number? maybe 64 or 32 bit ? same as size_t.
Definition: GrayCore.h:116
char ATOMCHAR_t
the char form (UNICODE or not) for an atom. (for symbolic names)
Definition: StrConst.h:15
char GChar_t
My version of TCHAR, _TCHAR.
Definition: StrConst.h:26