5 #define ID_MDI_FIRSTCHILD 50000 6 #define ID_MDI_WINDOWMENU 5 94 #define ID_TOOLBAR_STANDARD 0 95 #define ID_TOOLBAR_TEXT 1 101 #define ID_TOOLBAR_TEST 5 121 UINT StartImageRes = 0;
178 if (hWndClient !=
NULL)
232 if (hFontType !=
NULL)
262 if (hFontSize !=
NULL)
285 if (hWndClient !=
NULL)
329 rbi->cx = rbi->cxIdeal =
Size.cx;
331 rbi->cyMinChild =
Size.cy;
347 rbi->cyMinChild = rcBtn.
bottom - rcBtn.
top;
413 rbi->cx = rbi->cxIdeal = (Vert ?
Size.cy :
Size.cx);
415 rbi->cyMinChild = (Vert ?
Size.cx :
Size.cy);
425 rbi->cx = rbi->cxIdeal = 150;
427 rbi->cyMinChild = 40;
460 RECT wndNewPos, TbRect;
461 INT i, xMoved, yMoved;
468 xMoved = wndNewPos.
left - wndOldPos->
left;
469 yMoved = wndNewPos.
top - wndOldPos->
top;
472 WndArr[0] =
Info->fltTools;
473 WndArr[1] =
Info->fltColors;
474 WndArr[2] =
Info->fltHistory;
481 WndArr[
i]->
x = TbRect.
left + xMoved;
482 WndArr[
i]->
y = TbRect.
top + yMoved;
512 Info->fltTools->Width,
513 Info->fltTools->Height,
519 rect.bottom -
Info->fltColors->Height - 5,
520 Info->fltColors->Width,
521 Info->fltColors->Height,
526 rect.right -
Info->fltHistory->Width - 5,
528 Info->fltHistory->Width,
529 Info->fltHistory->Height,
554 Info->fltTools->Width = 53;
555 Info->fltTools->Height = 300;
556 Info->fltColors->Width = 200;
557 Info->fltColors->Height = 200;
558 Info->fltHistory->Width = 150;
559 Info->fltHistory->Height = 150;
572 Info->fltColors->y =
rect.bottom -
Info->fltColors->Height - 5;
574 Info->fltHistory->x =
rect.right -
Info->fltHistory->Width - 5;
578 WndArr[0] =
Info->fltTools;
579 WndArr[1] =
Info->fltColors;
580 WndArr[2] =
Info->fltHistory;
592 TEXT(
"ImageSoftFloatWndClass"),
628 if (
Info->fltHistory->hSelf !=
NULL)
708 if (DocksVisible != 0)
754 INT statwidths[] = {110, -1};
775 sizeof(statwidths)/
sizeof(
int),
834 OpenInfo.
Open.lpImagePath = szFileName;
915 if (
Info->ImageEditors)
918 Info->ImageEditors->hDCMem,
919 Info->ImageEditors->hBitmap);
926 if (
Info->ImageEditors)
929 Info->ImageEditors->hDCMem,
930 Info->ImageEditors->hBitmap);
937 if (
Info->ImageEditors)
940 Info->ImageEditors->hDCMem,
941 Info->ImageEditors->hBitmap);
948 if (
Info->ImageEditors)
951 Info->ImageEditors->hDCMem,
952 Info->ImageEditors->hBitmap);
1040 UINT HintId = DefHintId;
1042 LastHint = HintArray + HintsCount;
1043 while (HintArray != LastHint)
1045 if (HintArray->
CmdId == CmdId)
1047 HintId = HintArray->
HintId;
1071 static RECT wndOldPos;
1078 goto HandleDefaultMessage;
1099 bLBMouseDown =
TRUE;
1108 bLBMouseDown =
FALSE;
1138 switch (pnmhdr->
code)
1161 goto HandleDefaultMessage;
1209 goto HandleDefaultMessage;
1218 goto HandleDefaultMessage;
1225 goto HandleDefaultMessage;
1269 HandleDefaultMessage:
1322 if (hDeactivate !=
NULL)
1326 if (EditorType !=
NULL)
1328 switch (*EditorType)
1343 if (hActivate !=
NULL)
1347 if (EditorType !=
NULL)
1349 Info->ActiveEditor = EditorType;
1351 switch (*EditorType)
1379 Info->nCmdShow = nCmdShow;
#define ID_MDI_WINDOWMENU
MDI_EDITOR_TYPE MainWndGetCurrentEditor(PMAIN_WND_INFO MainWnd, PVOID *Info)
HDWP WINAPI BeginDeferWindowPos(_In_ int)
#define TB_BUTTONSTRUCTSIZE
static const TCHAR szToolbarTest[]
static VOID CALLBACK MainWndResize(PVOID Context, LONG cx, LONG cy)
int WINAPI MapWindowPoints(_In_opt_ HWND hWndFrom, _In_opt_ HWND hWndTo, _Inout_updates_(cPoints) LPPOINT lpPoints, _In_ UINT cPoints)
#define TBSTYLE_EX_HIDECLIPPEDBUTTONS
#define IDS_TOOLBAR_STANDARD
BOOL FloatToolbarCreateHistoryGui(PMAIN_WND_INFO Info)
#define UNREFERENCED_PARAMETER(P)
HWND WINAPI SetParent(_In_ HWND, _In_opt_ HWND)
static VOID MainWndCreateFloatWindows(PMAIN_WND_INFO Info)
VOID ToolbarUpdateControlSpaces(HWND hWndToolbar, ToolbarChangeControlCallback ChangeCallback)
BOOL ToolbarInsertSpaceForControl(HWND hWndToolbar, HWND hWndControl, INT Index, INT iCmd, BOOL HideVertical)
IN PVOID IN PVOID IN USHORT IN USHORT Size
GLint GLint GLint GLint GLint x
#define ID_WINDOW_TILE_VERT
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
static BOOL CALLBACK MainWndToolbarInsertBand(struct _TOOLBAR_DOCKS *TbDocks, const DOCKBAR *Dockbar, PVOID Context, UINT *Index, LPREBARBANDINFO rbi)
static INT AllocAndLoadString(OUT LPTSTR *lpTarget, IN HINSTANCE hInst, IN UINT uID)
BOOL DisplayBlur(HWND hwnd, HDC hdcMem, HBITMAP hBitmap)
BOOL WINAPI DestroyWindow(_In_ HWND)
BOOL FloatToolbarCreateColorsGui(PMAIN_WND_INFO Info)
#define IDS_HINT_SYS_MINIMIZE
struct tagNMHDR * LPNMHDR
VOID FileInitialize(IN HWND hwnd)
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
static VOID FillFontStyleComboList(HWND hwndCombo)
static const TCHAR szMainWndClass[]
#define WM_MDIICONARRANGE
static VOID MainWndCommand(PMAIN_WND_INFO Info, WORD CmdId, HWND hControl)
static VOID CALLBACK MainWndToolbarDockBand(struct _TOOLBAR_DOCKS *TbDocks, const DOCKBAR *Dockbar, PVOID Context, DOCK_POSITION DockFrom, DOCK_POSITION DockTo, LPREBARBANDINFO rbi)
static VOID DoOpenFile(PINFO pInfo)
#define MDITILE_HORIZONTAL
BOOL WINAPI EndDeferWindowPos(_In_ HDWP)
_Out_opt_ int _Out_opt_ int * cy
#define IDI_IMAGESOFTICON
static const TCHAR szToolbarStandard[]
#define CCS_NOPARENTALIGN
static const DOCKBAR MainDockBars[]
static INT_PTR CALLBACK AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
BOOL CreateImageEditWindow(PMAIN_WND_INFO MainWnd, POPEN_IMAGE_EDIT_INFO OpenInfo)
#define ID_WINDOW_CASCADE
#define IDS_HINT_SYS_MOVE
BOOL MainWndTranslateMDISysAccel(HWND hwnd, LPMSG lpMsg)
HDWP WINAPI DeferWindowPos(_In_ HDWP, _In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
INT_PTR CALLBACK BrightnessProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
static VOID MainWndMoveFloatingWindows(PMAIN_WND_INFO Info, PRECT wndOldPos)
static BOOL CALLBACK MainWndDestroyToolbarClient(struct _TOOLBAR_DOCKS *TbDocks, const DOCKBAR *Dockbar, PVOID Context, HWND hwnd)
_In_ WDFCOLLECTION _In_ ULONG Index
static VOID TbCustomControlChange(HWND hWndToolbar, HWND hWndControl, BOOL Vert)
#define IDS_HINT_CLOSEALL
BOOL FloatToolbarCreateToolsGui(PMAIN_WND_INFO Info)
VOID FillFontSizeComboList(HWND hwndCombo)
struct _MAIN_WND_INFO * PMAIN_WND_INFO
static const TCHAR szToolbarText[]
#define IDS_HINT_SYS_RESTORE
static VOID CALLBACK MainWndToolbarChevronPushed(struct _TOOLBAR_DOCKS *TbDocks, const DOCKBAR *Dockbar, PVOID Context, HWND hwndChild, LPNMREBARCHEVRON lpnm)
DWORD WINAPI CheckMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
static VOID InitMainWnd(PMAIN_WND_INFO Info)
VOID UninitMainWindowImpl(VOID)
BOOL DisplayInvertedColors(HWND hwnd, HDC hdcMem, HBITMAP hBitmap)
#define IDS_HINT_SYS_SIZE
#define ID_WINDOW_TILE_HORZ
static VOID DestroyMainWnd(PMAIN_WND_INFO Info)
enum _MDI_EDITOR_TYPE MDI_EDITOR_TYPE
HIMAGELIST InitImageList(UINT StartResource, UINT EndResource, UINT Width, UINT Height, ULONG type)
#define IDS_HINT_PRINTPRE
BOOL ShowHideWindow(HWND hwnd)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
static const MENU_HINT MainMenuHintTable[]
VOID MakeFlatCombo(HWND hwndCombo)
BOOL WINAPI MoveWindow(_In_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ BOOL)
#define ID_WINDOW_ARRANGE
static VOID MainWndDestroyFloatWindows(PMAIN_WND_INFO Info)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static const DOCKBAR_ITEM_CALLBACKS MainWndDockBarCallbacks
static const MENU_HINT SystemMenuHintTable[]
#define IDS_HINT_TILE_VERT
static BOOL MainWndMenuHint(PMAIN_WND_INFO Info, WORD CmdId, const MENU_HINT *HintArray, DWORD HintsCount, UINT DefHintId)
static VOID UpdateMainStatusBar(PMAIN_WND_INFO Info)
static VOID MainWndResetFloatingWindows(PMAIN_WND_INFO Info)
#define IDS_HINT_SYS_MAXIMIZE
GLint GLint GLint GLint GLint GLint y
#define ID_TOOLBAR_STANDARD
static VOID CreateToolbars(PMAIN_WND_INFO Info)
#define WS_OVERLAPPEDWINDOW
static LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
BOOL DisplaySharpness(HWND hwnd, HDC hdcMem, HBITMAP hBitmap)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
#define IDS_HINT_TILE_HORZ
#define ID_MDI_FIRSTCHILD
enum _MDI_EDITOR_TYPE * PMDI_EDITOR_TYPE
BOOL InitMainWindowImpl(VOID)
#define WS_EX_ACCEPTFILES
VOID SetImageEditorEnvironment(PEDIT_WND_INFO Info, BOOL Setup)
static BOOL CALLBACK MainWndCreateToolbarClient(struct _TOOLBAR_DOCKS *TbDocks, const DOCKBAR *Dockbar, PVOID Context, HWND hParent, HWND *hwnd)
HMENU WINAPI GetMenu(_In_ HWND)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
BOOL ToolbarDeleteControlSpace(HWND hWndToolbar, const TBBUTTON *ptbButton)
#define HeapFree(x, y, z)
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
VOID MainWndSwitchEditorContext(PMAIN_WND_INFO Info, HWND hDeactivate, HWND hActivate)
static const TBBUTTON Buttons[]
BOOL WINAPI TranslateMDISysAccel(_In_ HWND, _In_ LPMSG)
#define TBN_DELETINGBUTTON
#define TB_SETEXTENDEDSTYLE
BOOL StatusBarLoadString(IN HWND hStatusBar, IN INT PartId, IN HINSTANCE hInstance, IN UINT uID)
HWND CreateMainWindow(LPCTSTR lpCaption, int nCmdShow)
struct _OPEN_IMAGE_EDIT_INFO::@1529::@1532 Open
BOOL DisplayBlackAndWhite(HWND hwnd, HDC hdcMem, HBITMAP hBitmap)