BEGIN_MESSAGE_MAP(CHexMergeDoc, CDocument)
//{{AFX_MSG_MAP(CHexMergeDoc)
+ // [File] menu
ON_COMMAND(ID_FILE_SAVE, OnFileSave)
ON_COMMAND(ID_FILE_SAVE_LEFT, OnFileSaveLeft)
ON_COMMAND(ID_FILE_SAVE_RIGHT, OnFileSaveRight)
ON_COMMAND(ID_FILE_SAVEAS_LEFT, OnFileSaveAsLeft)
ON_COMMAND(ID_FILE_SAVEAS_RIGHT, OnFileSaveAsRight)
- ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_LEFT, OnUpdateFileSaveLeft)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_RIGHT, OnUpdateFileSaveRight)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, OnUpdateFileSave)
ON_COMMAND(ID_RESCAN, OnFileReload)
+ ON_COMMAND_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs)
+ ON_UPDATE_COMMAND_UI_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnUpdateFileRecompareAs)
+ // [View] menu
+ ON_COMMAND(ID_VIEW_ZOOMIN, OnViewZoomIn)
+ ON_COMMAND(ID_VIEW_ZOOMOUT, OnViewZoomOut)
+ ON_COMMAND(ID_VIEW_ZOOMNORMAL, OnViewZoomNormal)
+ ON_COMMAND(ID_REFRESH, OnRefresh)
+ // [Merge] menu
ON_COMMAND(ID_L2R, OnL2r)
ON_COMMAND(ID_R2L, OnR2l)
ON_COMMAND(ID_COPY_FROM_LEFT, OnCopyFromLeft)
ON_COMMAND(ID_COPY_FROM_RIGHT, OnCopyFromRight)
ON_COMMAND(ID_ALL_LEFT, OnAllLeft)
ON_COMMAND(ID_ALL_RIGHT, OnAllRight)
- ON_COMMAND(ID_VIEW_ZOOMIN, OnViewZoomIn)
- ON_COMMAND(ID_VIEW_ZOOMOUT, OnViewZoomOut)
- ON_COMMAND(ID_VIEW_ZOOMNORMAL, OnViewZoomNormal)
- ON_COMMAND(ID_REFRESH, OnRefresh)
- ON_COMMAND_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs)
+ // [Plugins] menu
ON_COMMAND_RANGE(ID_UNPACKERS_FIRST, ID_UNPACKERS_LAST, OnFileRecompareAs)
- ON_UPDATE_COMMAND_UI_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnUpdateFileRecompareAs)
ON_COMMAND(ID_OPEN_WITH_UNPACKER, OnOpenWithUnpacker)
+ // Status bar
+ ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
ON_WM_CLOSE()
ON_WM_SIZE()
ON_MESSAGE_VOID(WM_IDLEUPDATECMDUI, OnIdleUpdateCmdUI)
- ON_UPDATE_COMMAND_UI(ID_VIEW_DETAIL_BAR, OnUpdateControlBarMenu)
- ON_COMMAND_EX(ID_VIEW_DETAIL_BAR, OnBarCheck)
- ON_UPDATE_COMMAND_UI(ID_VIEW_LOCATION_BAR, OnUpdateControlBarMenu)
- ON_COMMAND_EX(ID_VIEW_LOCATION_BAR, OnBarCheck)
ON_MESSAGE(MSG_STORE_PANESIZES, OnStorePaneSizes)
+ // [View] menu
+ //ON_UPDATE_COMMAND_UI(ID_VIEW_DETAIL_BAR, OnUpdateControlBarMenu)
+ //ON_COMMAND_EX(ID_VIEW_DETAIL_BAR, OnBarCheck)
+ //ON_UPDATE_COMMAND_UI(ID_VIEW_LOCATION_BAR, OnUpdateControlBarMenu)
+ //ON_COMMAND_EX(ID_VIEW_LOCATION_BAR, OnBarCheck)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
ON_WM_VSCROLL()
ON_WM_MOUSEWHEEL()
ON_WM_NCCALCSIZE()
- ON_COMMAND(ID_HELP, OnHelp)
+ // [Edit] menu
ON_COMMAND(ID_EDIT_FIND, OnEditFind)
ON_COMMAND(ID_EDIT_REPLACE, OnEditReplace)
ON_COMMAND(ID_EDIT_REPEAT, OnEditRepeat)
ON_COMMAND(ID_EDIT_PASTE, OnEditPaste)
ON_COMMAND(ID_EDIT_CLEAR, OnEditClear)
ON_COMMAND(ID_EDIT_SELECT_ALL, OnEditSelectAll)
+ // [Merge] menu
ON_COMMAND(ID_FIRSTDIFF, OnFirstdiff)
ON_COMMAND(ID_LASTDIFF, OnLastdiff)
ON_COMMAND(ID_NEXTDIFF, OnNextdiff)
ON_COMMAND(ID_PREVDIFF, OnPrevdiff)
+ // [Help] menu
+ ON_COMMAND(ID_HELP, OnHelp)
//}}AFX_MSG_MAP
// Test case to verify WM_COMMAND won't accidentally go through Default()
//ON_COMMAND(ID_APP_ABOUT, Default)
ON_WM_DESTROY()
ON_WM_MDIACTIVATE()
ON_WM_SIZE()
+ ON_WM_SETFOCUS ()
+ ON_MESSAGE_VOID(WM_IDLEUPDATECMDUI, OnIdleUpdateCmdUI)
+ ON_MESSAGE(MSG_STORE_PANESIZES, OnStorePaneSizes)
+ // [File] menu
ON_COMMAND(ID_FILE_SAVE, OnFileSave)
- ON_UPDATE_COMMAND_UI(ID_VIEW_LOCATION_BAR, OnUpdateControlBarMenu)
- ON_COMMAND_EX(ID_VIEW_LOCATION_BAR, OnBarCheck)
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, OnUpdateFileSave)
ON_COMMAND(ID_FILE_SAVE_LEFT, OnFileSaveLeft)
ON_COMMAND(ID_FILE_SAVE_MIDDLE, OnFileSaveMiddle)
ON_COMMAND(ID_FILE_SAVEAS_MIDDLE, OnFileSaveAsMiddle)
ON_COMMAND(ID_FILE_SAVEAS_RIGHT, OnFileSaveAsRight)
ON_COMMAND(ID_FILE_CLOSE, OnFileClose)
- ON_COMMAND(ID_FILE_LEFT_READONLY, OnLeftReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_LEFT_READONLY, OnUpdateLeftReadOnly)
- ON_COMMAND(ID_FILE_MIDDLE_READONLY, OnMiddleReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_MIDDLE_READONLY, OnUpdateMiddleReadOnly)
- ON_COMMAND(ID_FILE_RIGHT_READONLY, OnRightReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_RIGHT_READONLY, OnUpdateRightReadOnly)
+ ON_COMMAND(ID_FILE_LEFT_READONLY, OnFileReadOnlyLeft)
+ ON_UPDATE_COMMAND_UI(ID_FILE_LEFT_READONLY, OnUpdateFileReadOnlyLeft)
+ ON_COMMAND(ID_FILE_MIDDLE_READONLY, OnFileReadOnlyMiddle)
+ ON_UPDATE_COMMAND_UI(ID_FILE_MIDDLE_READONLY, OnUpdateFileReadOnlyMiddle)
+ ON_COMMAND(ID_FILE_RIGHT_READONLY, OnFileReadOnlyRight)
+ ON_UPDATE_COMMAND_UI(ID_FILE_RIGHT_READONLY, OnUpdateFileReadOnlyRight)
ON_COMMAND(ID_RESCAN, OnFileReload)
ON_COMMAND_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs)
- ON_COMMAND_RANGE(ID_UNPACKERS_FIRST, ID_UNPACKERS_LAST, OnFileRecompareAs)
ON_UPDATE_COMMAND_UI_RANGE(ID_MERGE_COMPARE_TEXT, ID_MERGE_COMPARE_IMAGE, OnUpdateFileRecompareAs)
- ON_COMMAND(ID_OPEN_WITH_UNPACKER, OnOpenWithUnpacker)
- ON_COMMAND(ID_WINDOW_CHANGE_PANE, OnWindowChangePane)
- ON_MESSAGE_VOID(WM_IDLEUPDATECMDUI, OnIdleUpdateCmdUI)
- ON_MESSAGE(MSG_STORE_PANESIZES, OnStorePaneSizes)
- ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
+ // [Edit] menu
ON_COMMAND(ID_EDIT_UNDO, OnEditUndo)
ON_UPDATE_COMMAND_UI(ID_EDIT_UNDO, OnUpdateEditUndo)
ON_COMMAND(ID_EDIT_REDO, OnEditRedo)
ON_COMMAND(ID_EDIT_PASTE, OnEditPaste)
ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE, OnUpdateEditPaste)
ON_COMMAND(ID_EDIT_SELECT_ALL, OnEditSelectAll)
+ // [View] menu
+ ON_UPDATE_COMMAND_UI(ID_VIEW_LOCATION_BAR, OnUpdateControlBarMenu)
+ ON_COMMAND_EX(ID_VIEW_LOCATION_BAR, OnBarCheck)
ON_COMMAND(ID_VIEW_ZOOMIN, OnViewZoomIn)
ON_COMMAND(ID_VIEW_ZOOMOUT, OnViewZoomOut)
ON_COMMAND(ID_VIEW_ZOOMNORMAL, OnViewZoomNormal)
ON_COMMAND(ID_VIEW_SPLITVERTICALLY, OnViewSplitVertically)
ON_UPDATE_COMMAND_UI(ID_VIEW_SPLITVERTICALLY, OnUpdateViewSplitVertically)
+ ON_COMMAND(ID_REFRESH, OnRefresh)
+ // [Merge] menu
ON_COMMAND(ID_FIRSTDIFF, OnFirstdiff)
ON_UPDATE_COMMAND_UI(ID_FIRSTDIFF, OnUpdateFirstdiff)
ON_COMMAND(ID_LASTDIFF, OnLastdiff)
ON_UPDATE_COMMAND_UI(ID_ALL_RIGHT, OnUpdateAllRight)
ON_COMMAND(ID_AUTO_MERGE, OnAutoMerge)
ON_UPDATE_COMMAND_UI(ID_AUTO_MERGE, OnUpdateAutoMerge)
+ // [Image] menu
ON_COMMAND(ID_IMG_VIEWDIFFERENCES, OnImgViewDifferences)
ON_UPDATE_COMMAND_UI(ID_IMG_VIEWDIFFERENCES, OnUpdateImgViewDifferences)
ON_COMMAND_RANGE(ID_IMG_ZOOM_25, ID_IMG_ZOOM_800, OnImgZoom)
ON_COMMAND_RANGE(ID_IMG_VECTORIMAGESCALING_25, ID_IMG_VECTORIMAGESCALING_800, OnImgVectorImageScaling)
ON_UPDATE_COMMAND_UI_RANGE(ID_IMG_VECTORIMAGESCALING_25, ID_IMG_VECTORIMAGESCALING_800, OnUpdateImgVectorImageScaling)
ON_COMMAND(ID_IMG_COMPARE_EXTRACTED_TEXT, OnImgCompareExtractedText)
+ // [Tools] menu
ON_COMMAND(ID_TOOLS_GENERATEREPORT, OnToolsGenerateReport)
- ON_COMMAND(ID_REFRESH, OnRefresh)
- ON_WM_SETFOCUS ()
+ // [Plugins] menu
+ ON_COMMAND_RANGE(ID_UNPACKERS_FIRST, ID_UNPACKERS_LAST, OnFileRecompareAs)
+ ON_COMMAND(ID_OPEN_WITH_UNPACKER, OnOpenWithUnpacker)
+ // [Window] menu
+ ON_COMMAND(ID_WINDOW_CHANGE_PANE, OnWindowChangePane)
+ // [Help] menu
ON_COMMAND(ID_HELP, OnHelp)
+ // Status bar
+ ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/**
* @brief Enable/disable left buffer read-only
*/
-void CImgMergeFrame::OnLeftReadOnly()
+void CImgMergeFrame::OnFileReadOnlyLeft()
{
m_bRO[0] = !m_bRO[0];
m_pImgMergeWindow->SetReadOnly(0, m_bRO[0]);
/**
* @brief Called when "Left read-only" item is updated
*/
-void CImgMergeFrame::OnUpdateLeftReadOnly(CCmdUI* pCmdUI)
+void CImgMergeFrame::OnUpdateFileReadOnlyLeft(CCmdUI* pCmdUI)
{
pCmdUI->Enable(true);
pCmdUI->SetCheck(m_bRO[0]);
/**
* @brief Enable/disable middle buffer read-only
*/
-void CImgMergeFrame::OnMiddleReadOnly()
+void CImgMergeFrame::OnFileReadOnlyMiddle()
{
if (m_pImgMergeWindow->GetPaneCount() == 3)
{
/**
* @brief Called when "Middle read-only" item is updated
*/
-void CImgMergeFrame::OnUpdateMiddleReadOnly(CCmdUI* pCmdUI)
+void CImgMergeFrame::OnUpdateFileReadOnlyMiddle(CCmdUI* pCmdUI)
{
if (m_pImgMergeWindow->GetPaneCount() < 3)
{
/**
* @brief Enable/disable right buffer read-only
*/
-void CImgMergeFrame::OnRightReadOnly()
+void CImgMergeFrame::OnFileReadOnlyRight()
{
int pane = m_pImgMergeWindow->GetPaneCount() - 1;
m_bRO[pane] = !m_bRO[pane];
/**
* @brief Called when "Right read-only" item is updated
*/
-void CImgMergeFrame::OnUpdateRightReadOnly(CCmdUI* pCmdUI)
+void CImgMergeFrame::OnUpdateFileReadOnlyRight(CCmdUI* pCmdUI)
{
pCmdUI->Enable(true);
pCmdUI->SetCheck(m_pImgMergeWindow->GetReadOnly(m_pImgMergeWindow->GetPaneCount() - 1));
afx_msg void OnFileSaveAsMiddle();
afx_msg void OnUpdateFileSaveAsMiddle(CCmdUI* pCmdUI);
afx_msg void OnFileSaveAsRight();
- afx_msg void OnLeftReadOnly();
- afx_msg void OnUpdateLeftReadOnly(CCmdUI* pCmdUI);
- afx_msg void OnMiddleReadOnly();
- afx_msg void OnUpdateMiddleReadOnly(CCmdUI* pCmdUI);
- afx_msg void OnRightReadOnly();
- afx_msg void OnUpdateRightReadOnly(CCmdUI* pCmdUI);
+ afx_msg void OnFileReadOnlyLeft();
+ afx_msg void OnUpdateFileReadOnlyLeft(CCmdUI* pCmdUI);
+ afx_msg void OnFileReadOnlyMiddle();
+ afx_msg void OnUpdateFileReadOnlyMiddle(CCmdUI* pCmdUI);
+ afx_msg void OnFileReadOnlyRight();
+ afx_msg void OnUpdateFileReadOnlyRight(CCmdUI* pCmdUI);
afx_msg void OnFileReload();
afx_msg void OnFileClose();
afx_msg void OnFileRecompareAs(UINT nID);
ON_WM_MEASUREITEM()
ON_WM_INITMENUPOPUP()
ON_WM_INITMENU()
+ ON_WM_CLOSE()
ON_WM_CREATE()
+ ON_WM_TIMER()
+ ON_WM_DESTROY()
+ ON_MESSAGE(WM_COPYDATA, OnCopyData)
+ ON_MESSAGE(WM_USER+1, OnUser1)
+ ON_WM_ACTIVATEAPP()
+ // [File] menu
+ ON_COMMAND(ID_FILE_NEW, (OnFileNew<2, ID_MERGE_COMPARE_TEXT>))
+ ON_COMMAND(ID_FILE_NEW_TABLE, (OnFileNew<2, ID_MERGE_COMPARE_TABLE>))
+ ON_COMMAND(ID_FILE_NEW_HEX, (OnFileNew<2, ID_MERGE_COMPARE_HEX>))
+ ON_COMMAND(ID_FILE_NEW_IMAGE, (OnFileNew<2, ID_MERGE_COMPARE_IMAGE>))
+ ON_COMMAND(ID_FILE_NEW3, (OnFileNew<3, ID_MERGE_COMPARE_TEXT>))
+ ON_COMMAND(ID_FILE_NEW3_TABLE, (OnFileNew<2, ID_MERGE_COMPARE_TABLE>))
+ ON_COMMAND(ID_FILE_NEW3_HEX, (OnFileNew<3, ID_MERGE_COMPARE_HEX>))
+ ON_COMMAND(ID_FILE_NEW3_IMAGE, (OnFileNew<3, ID_MERGE_COMPARE_IMAGE>))
ON_COMMAND(ID_FILE_OPEN, OnFileOpen)
- ON_COMMAND(ID_HELP_GNULICENSE, OnHelpGnulicense)
+ ON_COMMAND(ID_FILE_OPENPROJECT, OnFileOpenProject)
+ ON_COMMAND(ID_FILE_SAVEPROJECT, OnSaveProject)
+ ON_COMMAND(ID_FILE_OPENCONFLICT, OnFileOpenConflict)
+ ON_COMMAND_RANGE(ID_MRU_FIRST, ID_MRU_LAST, OnMRUs)
+ ON_UPDATE_COMMAND_UI(ID_MRU_FIRST, OnUpdateNoMRUs)
+ ON_UPDATE_COMMAND_UI(ID_NO_MRU, OnUpdateNoMRUs)
+ ON_COMMAND(ID_ACCEL_QUIT, &CMainFrame::OnAccelQuit)
+ // [Edit] menu
ON_COMMAND(ID_OPTIONS, OnOptions)
+ // [View] menu
ON_COMMAND(ID_VIEW_SELECTFONT, OnViewSelectfont)
ON_COMMAND(ID_VIEW_USEDEFAULTFONT, OnViewUsedefaultfont)
- ON_COMMAND(ID_HELP_CONTENTS, OnHelpContents)
- ON_WM_CLOSE()
- ON_COMMAND(ID_TOOLS_GENERATEPATCH, OnToolsGeneratePatch)
- ON_WM_TIMER()
- ON_WM_DESTROY()
+ ON_COMMAND(ID_VIEW_STATUS_BAR, OnViewStatusBar)
+ ON_COMMAND(ID_VIEW_TAB_BAR, OnViewTabBar)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_TAB_BAR, OnUpdateViewTabBar)
+ ON_COMMAND(ID_VIEW_RESIZE_PANES, OnResizePanes)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_RESIZE_PANES, OnUpdateResizePanes)
+ ON_COMMAND_RANGE(ID_TOOLBAR_NONE, ID_TOOLBAR_HUGE, OnToolbarSize)
+ ON_UPDATE_COMMAND_UI_RANGE(ID_TOOLBAR_NONE, ID_TOOLBAR_HUGE, OnUpdateToolbarSize)
+ // [Plugins] menu
+ ON_COMMAND(ID_PLUGINS_LIST, OnPluginsList)
ON_COMMAND_RANGE(ID_UNPACK_MANUAL, ID_UNPACK_AUTO, OnPluginUnpackMode)
ON_UPDATE_COMMAND_UI_RANGE(ID_UNPACK_MANUAL, ID_UNPACK_AUTO, OnUpdatePluginUnpackMode)
ON_COMMAND_RANGE(ID_PREDIFFER_MANUAL, ID_PREDIFFER_AUTO, OnPluginPrediffMode)
ON_UPDATE_COMMAND_UI(ID_TRANSFORM_WITH_SCRIPT, OnUpdatePluginRelatedMenu)
ON_UPDATE_COMMAND_UI(ID_RELOAD_PLUGINS, OnUpdatePluginRelatedMenu)
ON_COMMAND(ID_RELOAD_PLUGINS, OnReloadPlugins)
- ON_COMMAND(ID_HELP_GETCONFIG, OnSaveConfigData)
- ON_COMMAND(ID_FILE_NEW, (OnFileNew<2, ID_MERGE_COMPARE_TEXT>))
- ON_COMMAND(ID_FILE_NEW_TABLE, (OnFileNew<2, ID_MERGE_COMPARE_TABLE>))
- ON_COMMAND(ID_FILE_NEW_HEX, (OnFileNew<2, ID_MERGE_COMPARE_HEX>))
- ON_COMMAND(ID_FILE_NEW_IMAGE, (OnFileNew<2, ID_MERGE_COMPARE_IMAGE>))
- ON_COMMAND(ID_FILE_NEW3, (OnFileNew<3, ID_MERGE_COMPARE_TEXT>))
- ON_COMMAND(ID_FILE_NEW3_TABLE, (OnFileNew<2, ID_MERGE_COMPARE_TABLE>))
- ON_COMMAND(ID_FILE_NEW3_HEX, (OnFileNew<3, ID_MERGE_COMPARE_HEX>))
- ON_COMMAND(ID_FILE_NEW3_IMAGE, (OnFileNew<3, ID_MERGE_COMPARE_IMAGE>))
+ // [Tools] menu
ON_COMMAND(ID_TOOLS_FILTERS, OnToolsFilters)
- ON_COMMAND(ID_VIEW_STATUS_BAR, OnViewStatusBar)
- ON_UPDATE_COMMAND_UI(ID_VIEW_TAB_BAR, OnUpdateViewTabBar)
- ON_COMMAND(ID_VIEW_TAB_BAR, OnViewTabBar)
- ON_UPDATE_COMMAND_UI(ID_VIEW_RESIZE_PANES, OnUpdateResizePanes)
- ON_COMMAND(ID_VIEW_RESIZE_PANES, OnResizePanes)
- ON_COMMAND(ID_FILE_OPENPROJECT, OnFileOpenProject)
- ON_MESSAGE(WM_COPYDATA, OnCopyData)
- ON_MESSAGE(WM_USER+1, OnUser1)
+ ON_COMMAND(ID_TOOLS_GENERATEPATCH, OnToolsGeneratePatch)
+ // [Window] menu
ON_COMMAND(ID_WINDOW_CLOSEALL, OnWindowCloseAll)
ON_UPDATE_COMMAND_UI(ID_WINDOW_CLOSEALL, OnUpdateWindowCloseAll)
- ON_COMMAND(ID_FILE_SAVEPROJECT, OnSaveProject)
- ON_WM_ACTIVATEAPP()
- ON_COMMAND_RANGE(ID_TOOLBAR_NONE, ID_TOOLBAR_HUGE, OnToolbarSize)
- ON_UPDATE_COMMAND_UI_RANGE(ID_TOOLBAR_NONE, ID_TOOLBAR_HUGE, OnUpdateToolbarSize)
- ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTW, 0, 0xFFFF, OnToolTipText)
- ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTA, 0, 0xFFFF, OnToolTipText)
+ // [Help] menu
+ ON_COMMAND(ID_HELP_CONTENTS, OnHelpContents)
+ ON_COMMAND(ID_HELP_GNULICENSE, OnHelpGnulicense)
+ ON_COMMAND(ID_HELP_GETCONFIG, OnSaveConfigData)
ON_COMMAND(ID_HELP_RELEASENOTES, OnHelpReleasenotes)
ON_COMMAND(ID_HELP_TRANSLATIONS, OnHelpTranslations)
- ON_COMMAND(ID_FILE_OPENCONFLICT, OnFileOpenConflict)
- ON_COMMAND(ID_PLUGINS_LIST, OnPluginsList)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PLUGIN, OnUpdatePluginName)
+ // Tool bar icon
+ ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTW, 0, 0xFFFF, OnToolTipText)
+ ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTA, 0, 0xFFFF, OnToolTipText)
+ ON_COMMAND(ID_FIRSTFILE, OnFirstFile)
+ ON_UPDATE_COMMAND_UI(ID_FIRSTFILE, OnUpdateFirstFile)
+ ON_COMMAND(ID_PREVFILE, OnPrevFile)
+ ON_UPDATE_COMMAND_UI(ID_PREVFILE, OnUpdatePrevFile)
+ ON_COMMAND(ID_NEXTFILE, OnNextFile)
+ ON_UPDATE_COMMAND_UI(ID_NEXTFILE, OnUpdateNextFile)
+ ON_COMMAND(ID_LASTFILE, OnLastFile)
+ ON_UPDATE_COMMAND_UI(ID_LASTFILE, OnUpdateLastFile)
+ // Tool bar drop-down menu
ON_NOTIFY(TBN_DROPDOWN, AFX_IDW_TOOLBAR, OnToolbarButtonDropDown)
ON_COMMAND_RANGE(ID_DIFF_OPTIONS_WHITESPACE_COMPARE, ID_DIFF_OPTIONS_WHITESPACE_IGNOREALL, OnDiffWhitespace)
ON_UPDATE_COMMAND_UI_RANGE(ID_DIFF_OPTIONS_WHITESPACE_COMPARE, ID_DIFF_OPTIONS_WHITESPACE_IGNOREALL, OnUpdateDiffWhitespace)
ON_UPDATE_COMMAND_UI(ID_DIFF_OPTIONS_INCLUDE_SUBFOLDERS, OnUpdateIncludeSubfolders)
ON_COMMAND_RANGE(ID_DIFF_OPTIONS_COMPMETHOD_FULL_CONTENTS, ID_DIFF_OPTIONS_COMPMETHOD_SIZE, OnCompareMethod)
ON_UPDATE_COMMAND_UI_RANGE(ID_DIFF_OPTIONS_COMPMETHOD_FULL_CONTENTS, ID_DIFF_OPTIONS_COMPMETHOD_SIZE, OnUpdateCompareMethod)
- ON_COMMAND_RANGE(ID_MRU_FIRST, ID_MRU_LAST, OnMRUs)
- ON_UPDATE_COMMAND_UI(ID_MRU_FIRST, OnUpdateNoMRUs)
- ON_UPDATE_COMMAND_UI(ID_NO_MRU, OnUpdateNoMRUs)
- ON_COMMAND(ID_FIRSTFILE, OnFirstFile)
- ON_UPDATE_COMMAND_UI(ID_FIRSTFILE, OnUpdateFirstFile)
- ON_COMMAND(ID_PREVFILE, OnPrevFile)
- ON_UPDATE_COMMAND_UI(ID_PREVFILE, OnUpdatePrevFile)
- ON_COMMAND(ID_NEXTFILE, OnNextFile)
- ON_UPDATE_COMMAND_UI(ID_NEXTFILE, OnUpdateNextFile)
- ON_COMMAND(ID_LASTFILE, OnLastFile)
- ON_UPDATE_COMMAND_UI(ID_LASTFILE, OnUpdateLastFile)
- ON_COMMAND(ID_ACCEL_QUIT, &CMainFrame::OnAccelQuit)
+ // Status bar
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PLUGIN, OnUpdatePluginName)
+ // Window manager
ON_MESSAGE(WMU_CHILDFRAMEADDED, &CMainFrame::OnChildFrameAdded)
ON_MESSAGE(WMU_CHILDFRAMEREMOVED, &CMainFrame::OnChildFrameRemoved)
ON_MESSAGE(WMU_CHILDFRAMEACTIVATE, &CMainFrame::OnChildFrameActivate)
ON_COMMAND(ID_FILE_MERGINGMODE, OnMergingMode)
ON_UPDATE_COMMAND_UI(ID_FILE_MERGINGMODE, OnUpdateMergingMode)
ON_UPDATE_COMMAND_UI(ID_STATUS_MERGINGMODE, OnUpdateMergingStatus)
+ ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
//}}AFX_MSG_MAP
// Standard file based document commands
//ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
//ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
// Standard print setup command
- ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
BEGIN_MESSAGE_MAP(CMergeDoc, CDocument)
//{{AFX_MSG_MAP(CMergeDoc)
+ // [File] menu
ON_COMMAND(ID_FILE_SAVE, OnFileSave)
+ ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, OnUpdateFileSave)
ON_COMMAND(ID_FILE_SAVE_LEFT, OnFileSaveLeft)
+ ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_LEFT, OnUpdateFileSaveLeft)
ON_COMMAND(ID_FILE_SAVE_MIDDLE, OnFileSaveMiddle)
+ ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_MIDDLE, OnUpdateFileSaveMiddle)
ON_COMMAND(ID_FILE_SAVE_RIGHT, OnFileSaveRight)
+ ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_RIGHT, OnUpdateFileSaveRight)
ON_COMMAND(ID_FILE_SAVEAS_LEFT, OnFileSaveAsLeft)
- ON_UPDATE_COMMAND_UI(ID_FILE_SAVEAS_MIDDLE, OnUpdateFileSaveAsMiddle)
ON_COMMAND(ID_FILE_SAVEAS_MIDDLE, OnFileSaveAsMiddle)
+ ON_UPDATE_COMMAND_UI(ID_FILE_SAVEAS_MIDDLE, OnUpdateFileSaveAsMiddle)
ON_COMMAND(ID_FILE_SAVEAS_RIGHT, OnFileSaveAsRight)
- ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
- ON_COMMAND(ID_TOOLS_GENERATEREPORT, OnToolsGenerateReport)
- ON_COMMAND(ID_TOOLS_GENERATEPATCH, OnToolsGeneratePatch)
+ ON_COMMAND(ID_FILE_LEFT_READONLY, OnFileReadOnlyLeft)
+ ON_UPDATE_COMMAND_UI(ID_FILE_LEFT_READONLY, OnUpdateFileReadOnlyLeft)
+ ON_COMMAND(ID_FILE_MIDDLE_READONLY, OnFileReadOnlyMiddle)
+ ON_UPDATE_COMMAND_UI(ID_FILE_MIDDLE_READONLY, OnUpdateFileReadOnlyMiddle)
+ ON_COMMAND(ID_FILE_RIGHT_READONLY, OnFileReadOnlyRight)
+ ON_UPDATE_COMMAND_UI(ID_FILE_RIGHT_READONLY, OnUpdateFileReadOnlyRight)
ON_COMMAND(ID_RESCAN, OnFileReload)
ON_COMMAND(ID_FILE_ENCODING, OnFileEncoding)
+ ON_COMMAND(ID_MERGE_COMPARE_TEXT, OnFileRecompareAsText)
+ ON_UPDATE_COMMAND_UI(ID_MERGE_COMPARE_TEXT, OnUpdateFileRecompareAsText)
+ ON_COMMAND(ID_MERGE_COMPARE_TABLE, OnFileRecompareAsTable)
+ ON_UPDATE_COMMAND_UI(ID_MERGE_COMPARE_TABLE, OnUpdateFileRecompareAsTable)
+ ON_COMMAND_RANGE(ID_MERGE_COMPARE_HEX, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs)
+ ON_COMMAND_RANGE(ID_UNPACKERS_FIRST, ID_UNPACKERS_LAST, OnFileRecompareAs)
+ // [View] menu
ON_COMMAND_RANGE(ID_VIEW_DIFFCONTEXT_ALL, ID_VIEW_DIFFCONTEXT_INVERT, OnDiffContext)
ON_UPDATE_COMMAND_UI_RANGE(ID_VIEW_DIFFCONTEXT_ALL, ID_VIEW_DIFFCONTEXT_INVERT, OnUpdateDiffContext)
+ ON_COMMAND(ID_SWAPPANES_SWAP12, (OnViewSwapPanes<0, 1>))
+ ON_COMMAND(ID_SWAPPANES_SWAP23, (OnViewSwapPanes<1, 2>))
+ ON_COMMAND(ID_SWAPPANES_SWAP13, (OnViewSwapPanes<0, 2>))
+ ON_UPDATE_COMMAND_UI_RANGE(ID_SWAPPANES_SWAP23, ID_SWAPPANES_SWAP13, OnUpdateSwapContext)
+ ON_COMMAND(ID_REFRESH, OnRefresh)
+ // [Tools] menu
+ ON_COMMAND(ID_TOOLS_GENERATEREPORT, OnToolsGenerateReport)
+ ON_COMMAND(ID_TOOLS_GENERATEPATCH, OnToolsGeneratePatch)
+ // [Plugins] menu
ON_COMMAND(ID_OPEN_WITH_UNPACKER, OnOpenWithUnpacker)
ON_COMMAND(ID_APPLY_PREDIFFER, OnApplyPrediffer)
ON_COMMAND_RANGE(ID_NO_PREDIFFER, ID_NO_PREDIFFER, OnPrediffer)
ON_COMMAND_RANGE(ID_PREDIFFERS_FIRST, ID_PREDIFFERS_LAST, OnPrediffer)
ON_UPDATE_COMMAND_UI(ID_NO_PREDIFFER, OnUpdatePrediffer)
ON_UPDATE_COMMAND_UI_RANGE(ID_PREDIFFERS_FIRST, ID_PREDIFFERS_LAST, OnUpdatePrediffer)
+ // Encoding Error dialog
ON_BN_CLICKED(IDC_FILEENCODING, OnBnClickedFileEncoding)
ON_BN_CLICKED(IDC_PLUGIN, OnBnClickedPlugin)
ON_BN_CLICKED(IDC_HEXVIEW, OnBnClickedHexView)
- ON_COMMAND(IDOK, OnOK)
- ON_COMMAND(ID_MERGE_COMPARE_TEXT, OnFileRecompareAsText)
- ON_UPDATE_COMMAND_UI(ID_MERGE_COMPARE_TEXT, OnUpdateFileRecompareAsText)
- ON_COMMAND(ID_MERGE_COMPARE_TABLE, OnFileRecompareAsTable)
- ON_UPDATE_COMMAND_UI(ID_MERGE_COMPARE_TABLE, OnUpdateFileRecompareAsTable)
- ON_COMMAND_RANGE(ID_MERGE_COMPARE_HEX, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs)
- ON_COMMAND_RANGE(ID_UNPACKERS_FIRST, ID_UNPACKERS_LAST, OnFileRecompareAs)
- ON_COMMAND(ID_SWAPPANES_SWAP12, (OnViewSwapPanes<0, 1>))
- ON_COMMAND(ID_SWAPPANES_SWAP23, (OnViewSwapPanes<1, 2>))
- ON_COMMAND(ID_SWAPPANES_SWAP13, (OnViewSwapPanes<0, 2>))
- ON_UPDATE_COMMAND_UI_RANGE(ID_SWAPPANES_SWAP23, ID_SWAPPANES_SWAP13, OnUpdateSwapContext)
+ ON_COMMAND(IDOK, OnOK)
+ // Status bar
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE0FILE_RO, OnUpdateStatusRO)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE1FILE_RO, OnUpdateStatusRO)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE2FILE_RO, OnUpdateStatusRO)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_DIFFNUM, OnUpdateStatusNum)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
}
/**
+ * @brief Called when "Save" item is updated
+ */
+void CMergeDoc::OnUpdateFileSave(CCmdUI* pCmdUI)
+{
+ bool bModified = false;
+ for (int nPane = 0; nPane < m_nBuffers; nPane++)
+ {
+ if (m_ptBuf[nPane]->IsModified())
+ bModified = true;
+ }
+ pCmdUI->Enable(bModified);
+}
+
+/**
+ * @brief Called when "Save left (as...)" item is updated
+ */
+void CMergeDoc::OnUpdateFileSaveLeft(CCmdUI* pCmdUI)
+{
+ pCmdUI->Enable(m_ptBuf[0]->IsModified());
+}
+
+/**
+ * @brief Called when "Save middle (as...)" item is updated
+ */
+void CMergeDoc::OnUpdateFileSaveMiddle(CCmdUI* pCmdUI)
+{
+ pCmdUI->Enable(m_nBuffers == 3 && m_ptBuf[1]->IsModified());
+}
+
+/**
+ * @brief Called when "Save right (as...)" item is updated
+ */
+void CMergeDoc::OnUpdateFileSaveRight(CCmdUI* pCmdUI)
+{
+ pCmdUI->Enable(m_ptBuf[m_nBuffers - 1]->IsModified());
+}
+
+/**
* @brief Saves left-side file with name asked
*/
void CMergeDoc::OnFileSaveAsLeft()
}
/**
+ * @brief Enable/disable left buffer read-only
+ */
+void CMergeDoc::OnFileReadOnlyLeft()
+{
+ bool bReadOnly = m_ptBuf[0]->GetReadOnly();
+ m_ptBuf[0]->SetReadOnly(!bReadOnly);
+}
+
+/**
+ * @brief Called when "Left read-only" item is updated
+ */
+void CMergeDoc::OnUpdateFileReadOnlyLeft(CCmdUI* pCmdUI)
+{
+ bool bReadOnly = m_ptBuf[0]->GetReadOnly();
+ pCmdUI->Enable(true);
+ pCmdUI->SetCheck(bReadOnly);
+}
+
+/**
+ * @brief Enable/disable middle buffer read-only
+ */
+void CMergeDoc::OnFileReadOnlyMiddle()
+{
+ if (m_nBuffers == 3)
+ {
+ bool bReadOnly = m_ptBuf[1]->GetReadOnly();
+ m_ptBuf[1]->SetReadOnly(!bReadOnly);
+ }
+}
+
+/**
+ * @brief Called when "Middle read-only" item is updated
+ */
+void CMergeDoc::OnUpdateFileReadOnlyMiddle(CCmdUI* pCmdUI)
+{
+ if (m_nBuffers < 3)
+ {
+ pCmdUI->Enable(false);
+ }
+ else
+ {
+ bool bReadOnly = m_ptBuf[1]->GetReadOnly();
+ pCmdUI->Enable(true);
+ pCmdUI->SetCheck(bReadOnly);
+ }
+}
+
+/**
+ * @brief Enable/disable right buffer read-only
+ */
+void CMergeDoc::OnFileReadOnlyRight()
+{
+ bool bReadOnly = m_ptBuf[m_nBuffers - 1]->GetReadOnly();
+ m_ptBuf[m_nBuffers - 1]->SetReadOnly(!bReadOnly);
+}
+
+/**
+ * @brief Called when "Left read-only" item is updated
+ */
+void CMergeDoc::OnUpdateFileReadOnlyRight(CCmdUI* pCmdUI)
+{
+ bool bReadOnly = m_ptBuf[m_nBuffers - 1]->GetReadOnly();
+ pCmdUI->Enable(true);
+ pCmdUI->SetCheck(bReadOnly);
+}
+
+/**
+ * @brief Update readonly statusbaritem
+ */
+void CMergeDoc::OnUpdateStatusRO(CCmdUI* pCmdUI)
+{
+ bool bRO = m_ptBuf[pCmdUI->m_nID - ID_STATUS_PANE0FILE_RO]->GetReadOnly();
+ pCmdUI->Enable(bRO);
+}
+
+/**
* @brief Update diff-number pane text in file compare.
* The diff number pane shows selected difference/amount of differences when
* there is difference selected. If there is no difference selected, then
}
/**
+ * @brief Refresh display using text-buffers
+ * @note This DOES NOT reload files!
+ */
+void CMergeDoc::OnRefresh()
+{
+ FlushAndRescan(true);
+}
+
+/**
* @brief Build the diff array and prepare buffers accordingly (insert ghost lines, set WinMerge flags)
*
* @note After PrimeTextBuffers(), all buffers should have the same length.
protected:
//{{AFX_MSG(CMergeDoc)
afx_msg void OnFileSave();
+ afx_msg void OnUpdateFileSave(CCmdUI* pCmdUI);
afx_msg void OnFileSaveLeft();
+ afx_msg void OnUpdateFileSaveLeft(CCmdUI* pCmdUI);
afx_msg void OnFileSaveMiddle();
+ afx_msg void OnUpdateFileSaveMiddle(CCmdUI* pCmdUI);
afx_msg void OnFileSaveRight();
+ afx_msg void OnUpdateFileSaveRight(CCmdUI* pCmdUI);
afx_msg void OnFileSaveAsLeft();
afx_msg void OnUpdateFileSaveAsMiddle(CCmdUI* pCmdUI);
afx_msg void OnFileSaveAsMiddle();
afx_msg void OnUpdateStatusNum(CCmdUI* pCmdUI);
afx_msg void OnFileReload();
afx_msg void OnFileEncoding();
+ afx_msg void OnFileReadOnlyLeft();
+ afx_msg void OnUpdateFileReadOnlyLeft(CCmdUI* pCmdUI);
+ afx_msg void OnFileReadOnlyMiddle();
+ afx_msg void OnUpdateFileReadOnlyMiddle(CCmdUI* pCmdUI);
+ afx_msg void OnFileReadOnlyRight();
+ afx_msg void OnUpdateFileReadOnlyRight(CCmdUI* pCmdUI);
+ afx_msg void OnUpdateStatusRO(CCmdUI* pCmdUI);
afx_msg void OnDiffContext(UINT nID);
afx_msg void OnUpdateDiffContext(CCmdUI* pCmdUI);
afx_msg void OnToolsGenerateReport();
template<int srcPane, int dstPane>
afx_msg void OnViewSwapPanes();
afx_msg void OnUpdateSwapContext(CCmdUI* pCmdUI);
+ afx_msg void OnRefresh();
afx_msg void OnUpdatePrediffer(CCmdUI* pCmdUI);
afx_msg void OnPrediffer(UINT nID );
//}}AFX_MSG
ON_WM_CLOSE()
ON_WM_MDIACTIVATE()
ON_WM_TIMER()
+ ON_WM_SIZE()
+ ON_MESSAGE_VOID(WM_IDLEUPDATECMDUI, OnIdleUpdateCmdUI)
+ ON_MESSAGE(MSG_STORE_PANESIZES, OnStorePaneSizes)
+ // [View] menu
ON_UPDATE_COMMAND_UI(ID_VIEW_DETAIL_BAR, OnUpdateControlBarMenu)
ON_COMMAND_EX(ID_VIEW_DETAIL_BAR, OnBarCheck)
ON_UPDATE_COMMAND_UI(ID_VIEW_LOCATION_BAR, OnUpdateControlBarMenu)
ON_COMMAND_EX(ID_VIEW_LOCATION_BAR, OnBarCheck)
ON_COMMAND(ID_VIEW_SPLITVERTICALLY, OnViewSplitVertically)
ON_UPDATE_COMMAND_UI(ID_VIEW_SPLITVERTICALLY, OnUpdateViewSplitVertically)
- ON_MESSAGE(MSG_STORE_PANESIZES, OnStorePaneSizes)
- ON_WM_SIZE()
- ON_MESSAGE_VOID(WM_IDLEUPDATECMDUI, OnIdleUpdateCmdUI)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
BEGIN_MESSAGE_MAP(CMergeEditView, CCrystalEditViewEx)
//{{AFX_MSG_MAP(CMergeEditView)
- ON_COMMAND(ID_CURDIFF, OnCurdiff)
- ON_UPDATE_COMMAND_UI(ID_CURDIFF, OnUpdateCurdiff)
+ ON_WM_CONTEXTMENU()
+ ON_WM_TIMER()
+ ON_WM_LBUTTONDBLCLK()
+ ON_WM_LBUTTONUP()
+ ON_WM_RBUTTONDOWN()
+ ON_WM_VSCROLL ()
+ ON_WM_HSCROLL ()
+ ON_WM_SIZE()
+ ON_WM_MOVE()
+ ON_WM_MOUSEWHEEL()
+ ON_WM_MOUSEHWHEEL()
+ // [File] menu
+ ON_COMMAND_RANGE(ID_EOL_TO_DOS, ID_EOL_TO_MAC, OnConvertEolTo)
+ ON_UPDATE_COMMAND_UI_RANGE(ID_EOL_TO_DOS, ID_EOL_TO_MAC, OnUpdateConvertEolTo)
+ // [Edit] menu
ON_COMMAND(ID_EDIT_COPY, OnEditCopy)
ON_UPDATE_COMMAND_UI(ID_EDIT_COPY, OnUpdateEditCopy)
ON_COMMAND(ID_EDIT_CUT, OnEditCut)
ON_COMMAND(ID_EDIT_PASTE, OnEditPaste)
ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE, OnUpdateEditPaste)
ON_COMMAND(ID_EDIT_UNDO, OnEditUndo)
+ ON_UPDATE_COMMAND_UI(ID_EDIT_UNDO, OnUpdateEditUndo)
+ ON_COMMAND(ID_EDIT_REDO, OnEditRedo)
+ ON_UPDATE_COMMAND_UI(ID_EDIT_REDO, OnUpdateEditRedo)
+ ON_UPDATE_COMMAND_UI(ID_EDIT_REPLACE, OnUpdateEditReplace)
+ ON_COMMAND(ID_EDIT_WMGOTO, OnWMGoto)
+ ON_COMMAND(ID_EDIT_COPY_LINENUMBERS, OnEditCopyLineNumbers)
+ ON_UPDATE_COMMAND_UI(ID_EDIT_COPY_LINENUMBERS, OnUpdateEditCopyLinenumbers)
+ // [View] menu
+ ON_COMMAND(ID_SELECTLINEDIFF, OnSelectLineDiff<false>)
+ ON_UPDATE_COMMAND_UI(ID_SELECTLINEDIFF, OnUpdateSelectLineDiff)
+ ON_COMMAND(ID_SELECTPREVLINEDIFF, OnSelectLineDiff<true>)
+ ON_UPDATE_COMMAND_UI(ID_SELECTPREVLINEDIFF, OnUpdateSelectLineDiff)
+ ON_COMMAND(ID_VIEW_LINEDIFFS, OnViewLineDiffs)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_LINEDIFFS, OnUpdateViewLineDiffs)
+ ON_COMMAND(ID_VIEW_WORDWRAP, OnViewWordWrap)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_WORDWRAP, OnUpdateViewWordWrap)
+ ON_COMMAND(ID_VIEW_LINENUMBERS, OnViewLineNumbers)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_LINENUMBERS, OnUpdateViewLineNumbers)
+ ON_COMMAND(ID_VIEW_WHITESPACE, OnViewWhitespace)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_WHITESPACE, OnUpdateViewWhitespace)
+ ON_COMMAND(ID_VIEW_EOL, OnViewEOL)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_EOL, OnUpdateViewEOL)
+ ON_COMMAND(ID_VIEW_SELMARGIN, OnViewMargin)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_SELMARGIN, OnUpdateViewMargin)
+ ON_UPDATE_COMMAND_UI(ID_VIEW_CHANGESCHEME, OnUpdateViewChangeScheme)
+ ON_COMMAND_RANGE(ID_COLORSCHEME_FIRST, ID_COLORSCHEME_LAST, OnChangeScheme)
+ ON_UPDATE_COMMAND_UI_RANGE(ID_COLORSCHEME_FIRST, ID_COLORSCHEME_LAST, OnUpdateChangeScheme)
+ ON_COMMAND(ID_VIEW_ZOOMIN, OnViewZoomIn)
+ ON_COMMAND(ID_VIEW_ZOOMOUT, OnViewZoomOut)
+ ON_COMMAND(ID_VIEW_ZOOMNORMAL, OnViewZoomNormal)
+ // [Merge] menu
+ ON_COMMAND(ID_CURDIFF, OnCurdiff)
+ ON_UPDATE_COMMAND_UI(ID_CURDIFF, OnUpdateCurdiff)
ON_COMMAND(ID_FIRSTDIFF, OnFirstdiff)
ON_UPDATE_COMMAND_UI(ID_FIRSTDIFF, OnUpdateFirstdiff)
ON_COMMAND(ID_LASTDIFF, OnLastdiff)
ON_UPDATE_COMMAND_UI(ID_NEXTDIFFRO, OnUpdateNextdiffRO)
ON_COMMAND(ID_PREVDIFFRO, OnPrevdiffRO)
ON_UPDATE_COMMAND_UI(ID_PREVDIFFRO, OnUpdatePrevdiffRO)
- ON_WM_LBUTTONDBLCLK()
- ON_WM_LBUTTONUP()
- ON_WM_RBUTTONDOWN()
ON_COMMAND(ID_ALL_LEFT, OnAllLeft)
ON_UPDATE_COMMAND_UI(ID_ALL_LEFT, OnUpdateAllLeft)
ON_COMMAND(ID_ALL_RIGHT, OnAllRight)
ON_UPDATE_COMMAND_UI(ID_COPY_FROM_RIGHT, OnUpdateCopyFromRight)
ON_COMMAND(ID_COPY_LINES_FROM_RIGHT, OnCopyLinesFromRight)
ON_UPDATE_COMMAND_UI(ID_COPY_LINES_FROM_RIGHT, OnUpdateCopyLinesFromRight)
- ON_COMMAND(ID_ADD_SYNCPOINT, OnAddSyncPoint)
- ON_COMMAND(ID_CLEAR_SYNCPOINTS, OnClearSyncPoints)
- ON_UPDATE_COMMAND_UI(ID_CLEAR_SYNCPOINTS, OnUpdateClearSyncPoints)
- ON_UPDATE_COMMAND_UI(ID_EDIT_UNDO, OnUpdateEditUndo)
- ON_COMMAND(ID_EDIT_REDO, OnEditRedo)
- ON_UPDATE_COMMAND_UI(ID_EDIT_REDO, OnUpdateEditRedo)
- ON_WM_TIMER()
- ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_LEFT, OnUpdateFileSaveLeft)
- ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_MIDDLE, OnUpdateFileSaveMiddle)
- ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_RIGHT, OnUpdateFileSaveRight)
- ON_COMMAND(ID_REFRESH, OnRefresh)
- ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, OnUpdateFileSave)
- ON_COMMAND(ID_SELECTLINEDIFF, OnSelectLineDiff<false>)
- ON_UPDATE_COMMAND_UI(ID_SELECTLINEDIFF, OnUpdateSelectLineDiff)
- ON_COMMAND(ID_SELECTPREVLINEDIFF, OnSelectLineDiff<true>)
- ON_UPDATE_COMMAND_UI(ID_SELECTPREVLINEDIFF, OnUpdateSelectLineDiff)
- ON_COMMAND(ID_ADD_TO_IGNORED_SUBSTITUTIONS, OnAddToSubstitutionFilters)
- ON_UPDATE_COMMAND_UI(ID_ADD_TO_IGNORED_SUBSTITUTIONS, OnUpdateAddToSubstitutionFilters)
- ON_WM_CONTEXTMENU()
- ON_UPDATE_COMMAND_UI(ID_EDIT_REPLACE, OnUpdateEditReplace)
- ON_COMMAND(ID_FILE_LEFT_READONLY, OnLeftReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_LEFT_READONLY, OnUpdateLeftReadOnly)
- ON_COMMAND(ID_FILE_MIDDLE_READONLY, OnMiddleReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_MIDDLE_READONLY, OnUpdateMiddleReadOnly)
- ON_COMMAND(ID_FILE_RIGHT_READONLY, OnRightReadOnly)
- ON_UPDATE_COMMAND_UI(ID_FILE_RIGHT_READONLY, OnUpdateRightReadOnly)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE0FILE_RO, OnUpdateStatusRO)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE1FILE_RO, OnUpdateStatusRO)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE2FILE_RO, OnUpdateStatusRO)
- ON_COMMAND_RANGE(ID_EOL_TO_DOS, ID_EOL_TO_MAC, OnConvertEolTo)
- ON_UPDATE_COMMAND_UI_RANGE(ID_EOL_TO_DOS, ID_EOL_TO_MAC, OnUpdateConvertEolTo)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE0FILE_EOL, OnUpdateStatusEOL)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE1FILE_EOL, OnUpdateStatusEOL)
- ON_UPDATE_COMMAND_UI(ID_STATUS_PANE2FILE_EOL, OnUpdateStatusEOL)
ON_COMMAND(ID_L2RNEXT, OnL2RNext)
ON_UPDATE_COMMAND_UI(ID_L2RNEXT, OnUpdateL2RNext)
ON_COMMAND(ID_R2LNEXT, OnR2LNext)
ON_UPDATE_COMMAND_UI(ID_R2LNEXT, OnUpdateR2LNext)
+ ON_COMMAND(ID_ADD_SYNCPOINT, OnAddSyncPoint)
+ ON_COMMAND(ID_CLEAR_SYNCPOINTS, OnClearSyncPoints)
+ ON_UPDATE_COMMAND_UI(ID_CLEAR_SYNCPOINTS, OnUpdateClearSyncPoints)
+ // [Plugins] menu
+ ON_COMMAND_RANGE(ID_SCRIPT_FIRST, ID_SCRIPT_LAST, OnScripts)
+ ON_COMMAND(ID_TRANSFORM_WITH_SCRIPT, OnTransformWithScript)
+ // [Window] menu
ON_COMMAND(ID_WINDOW_CHANGE_PANE, OnChangePane)
ON_COMMAND(ID_NEXT_PANE, OnChangePane)
- ON_COMMAND(ID_EDIT_WMGOTO, OnWMGoto)
+ ON_COMMAND(ID_WINDOW_SPLIT, OnWindowSplit)
+ ON_UPDATE_COMMAND_UI(ID_WINDOW_SPLIT, OnUpdateWindowSplit)
+ // [Help] menu
+ ON_COMMAND(ID_HELP, OnHelp)
+ // Context menu
+ ON_COMMAND(ID_ADD_TO_IGNORED_SUBSTITUTIONS, OnAddToSubstitutionFilters)
+ ON_UPDATE_COMMAND_UI(ID_ADD_TO_IGNORED_SUBSTITUTIONS, OnUpdateAddToSubstitutionFilters)
ON_COMMAND(ID_GOTO_MOVED_LINE_LM, OnGotoMovedLineLM)
ON_UPDATE_COMMAND_UI(ID_GOTO_MOVED_LINE_LM, OnUpdateGotoMovedLineLM)
ON_COMMAND(ID_GOTO_MOVED_LINE_MR, OnGotoMovedLineMR)
ON_UPDATE_COMMAND_UI(ID_GOTO_MOVED_LINE_MR, OnUpdateGotoMovedLineMR)
ON_COMMAND(ID_FILE_SHELLMENU, OnShellMenu)
ON_UPDATE_COMMAND_UI(ID_FILE_SHELLMENU, OnUpdateShellMenu)
- ON_COMMAND_RANGE(ID_SCRIPT_FIRST, ID_SCRIPT_LAST, OnScripts)
- ON_COMMAND(ID_TRANSFORM_WITH_SCRIPT, OnTransformWithScript)
- ON_WM_VSCROLL ()
- ON_WM_HSCROLL ()
- ON_COMMAND(ID_EDIT_COPY_LINENUMBERS, OnEditCopyLineNumbers)
- ON_UPDATE_COMMAND_UI(ID_EDIT_COPY_LINENUMBERS, OnUpdateEditCopyLinenumbers)
- ON_COMMAND(ID_VIEW_LINEDIFFS, OnViewLineDiffs)
- ON_UPDATE_COMMAND_UI(ID_VIEW_LINEDIFFS, OnUpdateViewLineDiffs)
- ON_COMMAND(ID_VIEW_WORDWRAP, OnViewWordWrap)
- ON_UPDATE_COMMAND_UI(ID_VIEW_WORDWRAP, OnUpdateViewWordWrap)
- ON_COMMAND(ID_VIEW_LINENUMBERS, OnViewLineNumbers)
- ON_UPDATE_COMMAND_UI(ID_VIEW_LINENUMBERS, OnUpdateViewLineNumbers)
- ON_COMMAND(ID_VIEW_WHITESPACE, OnViewWhitespace)
- ON_UPDATE_COMMAND_UI(ID_VIEW_WHITESPACE, OnUpdateViewWhitespace)
- ON_COMMAND(ID_VIEW_EOL, OnViewEOL)
- ON_UPDATE_COMMAND_UI(ID_VIEW_EOL, OnUpdateViewEOL)
ON_COMMAND(ID_FILE_OPEN_REGISTERED, OnOpenFile)
ON_COMMAND(ID_FILE_OPEN_WITHEDITOR, OnOpenFileWithEditor)
ON_COMMAND(ID_FILE_OPEN_WITH, OnOpenFileWith)
ON_COMMAND(ID_FILE_OPEN_PARENT_FOLDER, OnOpenParentFolder)
- ON_WM_SIZE()
- ON_WM_MOVE()
- ON_COMMAND(ID_HELP, OnHelp)
- ON_COMMAND(ID_VIEW_SELMARGIN, OnViewMargin)
- ON_UPDATE_COMMAND_UI(ID_VIEW_SELMARGIN, OnUpdateViewMargin)
- ON_UPDATE_COMMAND_UI(ID_VIEW_CHANGESCHEME, OnUpdateViewChangeScheme)
- ON_COMMAND_RANGE(ID_COLORSCHEME_FIRST, ID_COLORSCHEME_LAST, OnChangeScheme)
- ON_UPDATE_COMMAND_UI_RANGE(ID_COLORSCHEME_FIRST, ID_COLORSCHEME_LAST, OnUpdateChangeScheme)
- ON_WM_MOUSEWHEEL()
- ON_WM_MOUSEHWHEEL()
- ON_COMMAND(ID_VIEW_ZOOMIN, OnViewZoomIn)
- ON_COMMAND(ID_VIEW_ZOOMOUT, OnViewZoomOut)
- ON_COMMAND(ID_VIEW_ZOOMNORMAL, OnViewZoomNormal)
- ON_COMMAND(ID_WINDOW_SPLIT, OnWindowSplit)
- ON_UPDATE_COMMAND_UI(ID_WINDOW_SPLIT, OnUpdateWindowSplit)
+ // Status bar
ON_NOTIFY(NM_DBLCLK, AFX_IDW_STATUS_BAR, OnStatusBarDblClick)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE0FILE_EOL, OnUpdateStatusEOL)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE1FILE_EOL, OnUpdateStatusEOL)
+ ON_UPDATE_COMMAND_UI(ID_STATUS_PANE2FILE_EOL, OnUpdateStatusEOL)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
}
/**
- * @brief Called when "Save left (as...)" item is updated
- */
-void CMergeEditView::OnUpdateFileSaveLeft(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- pCmdUI->Enable(!IsReadOnly(0) && pd->m_ptBuf[0]->IsModified());
-}
-
-/**
- * @brief Called when "Save middle (as...)" item is updated
- */
-void CMergeEditView::OnUpdateFileSaveMiddle(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- pCmdUI->Enable(pd->m_nBuffers == 3 && !IsReadOnly(1) && pd->m_ptBuf[1]->IsModified());
-}
-
-/**
- * @brief Called when "Save right (as...)" item is updated
- */
-void CMergeEditView::OnUpdateFileSaveRight(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- pCmdUI->Enable(!IsReadOnly(pd->m_nBuffers - 1) && pd->m_ptBuf[pd->m_nBuffers - 1]->IsModified());
-}
-
-/**
- * @brief Refresh display using text-buffers
- * @note This DOES NOT reload files!
- */
-void CMergeEditView::OnRefresh()
-{
- CMergeDoc *pd = GetDocument();
- ASSERT(pd != nullptr);
- pd->FlushAndRescan(true);
-}
-
-/**
* @brief Handle some keys when in merging mode
*/
bool CMergeEditView::MergeModeKeyDown(MSG* pMsg)
return CCrystalEditViewEx::PreTranslateMessage(pMsg);
}
-/**
- * @brief Called when "Save" item is updated
- */
-void CMergeEditView::OnUpdateFileSave(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
-
- bool bModified = false;
- for (int nPane = 0; nPane < pd->m_nBuffers; nPane++)
- {
- if (pd->m_ptBuf[nPane]->IsModified())
- bModified = true;
- }
- pCmdUI->Enable(bModified);
-}
-
-/**
- * @brief Enable/disable left buffer read-only
- */
-void CMergeEditView::OnLeftReadOnly()
-{
- CMergeDoc *pd = GetDocument();
- bool bReadOnly = pd->m_ptBuf[0]->GetReadOnly();
- pd->m_ptBuf[0]->SetReadOnly(!bReadOnly);
-}
-
-/**
- * @brief Called when "Left read-only" item is updated
- */
-void CMergeEditView::OnUpdateLeftReadOnly(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- bool bReadOnly = pd->m_ptBuf[0]->GetReadOnly();
- pCmdUI->Enable(true);
- pCmdUI->SetCheck(bReadOnly);
-}
-
-/**
- * @brief Enable/disable middle buffer read-only
- */
-void CMergeEditView::OnMiddleReadOnly()
-{
- CMergeDoc *pd = GetDocument();
- if (pd->m_nBuffers == 3)
- {
- bool bReadOnly = pd->m_ptBuf[1]->GetReadOnly();
- pd->m_ptBuf[1]->SetReadOnly(!bReadOnly);
- }
-}
-
-/**
- * @brief Called when "Middle read-only" item is updated
- */
-void CMergeEditView::OnUpdateMiddleReadOnly(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- if (pd->m_nBuffers < 3)
- {
- pCmdUI->Enable(false);
- }
- else
- {
- bool bReadOnly = pd->m_ptBuf[1]->GetReadOnly();
- pCmdUI->Enable(true);
- pCmdUI->SetCheck(bReadOnly);
- }
-}
-
-/**
- * @brief Enable/disable right buffer read-only
- */
-void CMergeEditView::OnRightReadOnly()
-{
- CMergeDoc *pd = GetDocument();
- bool bReadOnly = pd->m_ptBuf[pd->m_nBuffers - 1]->GetReadOnly();
- pd->m_ptBuf[pd->m_nBuffers - 1]->SetReadOnly(!bReadOnly);
-}
-
-/**
- * @brief Called when "Left read-only" item is updated
- */
-void CMergeEditView::OnUpdateRightReadOnly(CCmdUI* pCmdUI)
-{
- CMergeDoc *pd = GetDocument();
- bool bReadOnly = pd->m_ptBuf[pd->m_nBuffers - 1]->GetReadOnly();
- pCmdUI->Enable(true);
- pCmdUI->SetCheck(bReadOnly);
-}
-
/// Store interface we use to display status line info
void CMergeEditView::SetStatusInterface(IMergeEditStatus * piMergeEditStatus)
{
}
/**
- * @brief Update readonly statusbaritem
- */
-void CMergeEditView::OnUpdateStatusRO(CCmdUI* pCmdUI)
-{
- bool bRO = GetDocument()->m_ptBuf[pCmdUI->m_nID - ID_STATUS_PANE0FILE_RO]->GetReadOnly();
- pCmdUI->Enable(bRO);
-}
-
-/**
* @brief Offer a context menu built with scriptlet/ActiveX functions
*/
void CMergeEditView::OnContextMenu(CWnd* pWnd, CPoint point)
CMergeDoc *pDoc = GetDocument();
ASSERT(pDoc != nullptr);
pDoc->SetTextType(nID - ID_COLORSCHEME_FIRST);
- OnRefresh();
+ pDoc->FlushAndRescan(true);
}
/**
afx_msg void OnEditRedo();
afx_msg void OnUpdateEditRedo(CCmdUI* pCmdUI);
afx_msg void OnTimer(UINT_PTR nIDEvent);
- afx_msg void OnUpdateFileSaveLeft(CCmdUI* pCmdUI);
- afx_msg void OnUpdateFileSaveMiddle(CCmdUI* pCmdUI);
- afx_msg void OnUpdateFileSaveRight(CCmdUI* pCmdUI);
- afx_msg void OnRefresh();
- afx_msg void OnUpdateFileSave(CCmdUI* pCmdUI);
template<bool reversed>
afx_msg void OnSelectLineDiff();
afx_msg void OnUpdateSelectLineDiff(CCmdUI* pCmdUI);
afx_msg void OnUpdateAddToSubstitutionFilters(CCmdUI* pCmdUI);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnUpdateEditReplace(CCmdUI* pCmdUI);
- afx_msg void OnLeftReadOnly();
- afx_msg void OnUpdateLeftReadOnly(CCmdUI* pCmdUI);
- afx_msg void OnMiddleReadOnly();
- afx_msg void OnUpdateMiddleReadOnly(CCmdUI* pCmdUI);
- afx_msg void OnRightReadOnly();
- afx_msg void OnUpdateRightReadOnly(CCmdUI* pCmdUI);
- afx_msg void OnUpdateStatusRO(CCmdUI* pCmdUI);
afx_msg void OnConvertEolTo(UINT nID );
afx_msg void OnUpdateConvertEolTo(CCmdUI* pCmdUI);
afx_msg void OnUpdateStatusEOL(CCmdUI* pCmdUI);