[ENHANCEMENT] Speed up the loading time for the large file.
[NEW] Doc Map: wrapping (in progress). git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@875 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
parent
da8fdbb86a
commit
f3fbd97687
@ -1468,7 +1468,7 @@ void Notepad_plus::enableCommand(int cmdID, bool doEnable, int which) const
|
|||||||
|
|
||||||
void Notepad_plus::checkClipboard()
|
void Notepad_plus::checkClipboard()
|
||||||
{
|
{
|
||||||
bool hasSelection = (_pEditView->execute(SCI_GETSELECTIONSTART) != _pEditView->execute(SCI_GETSELECTIONEND)) || (_pEditView->execute(SCI_GETSELECTIONS) > 0);
|
bool hasSelection = (_pEditView->execute(SCI_GETSELECTIONSTART) != _pEditView->execute(SCI_GETSELECTIONEND));
|
||||||
bool canPaste = (_pEditView->execute(SCI_CANPASTE) != 0);
|
bool canPaste = (_pEditView->execute(SCI_CANPASTE) != 0);
|
||||||
enableCommand(IDM_EDIT_CUT, hasSelection, MENU | TOOLBAR);
|
enableCommand(IDM_EDIT_CUT, hasSelection, MENU | TOOLBAR);
|
||||||
enableCommand(IDM_EDIT_COPY, hasSelection, MENU | TOOLBAR);
|
enableCommand(IDM_EDIT_COPY, hasSelection, MENU | TOOLBAR);
|
||||||
|
@ -435,7 +435,9 @@ BEGIN
|
|||||||
MENUITEM "Project Panel 2", IDM_VIEW_PROJECT_PANEL_2
|
MENUITEM "Project Panel 2", IDM_VIEW_PROJECT_PANEL_2
|
||||||
MENUITEM "Project Panel 3", IDM_VIEW_PROJECT_PANEL_3
|
MENUITEM "Project Panel 3", IDM_VIEW_PROJECT_PANEL_3
|
||||||
END
|
END
|
||||||
|
#ifdef UNICODE
|
||||||
MENUITEM "Document Map", IDM_VIEW_DOC_MAP
|
MENUITEM "Document Map", IDM_VIEW_DOC_MAP
|
||||||
|
#endif
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "Synchronize Vertical Scrolling", IDM_VIEW_SYNSCROLLV
|
MENUITEM "Synchronize Vertical Scrolling", IDM_VIEW_SYNSCROLLV
|
||||||
MENUITEM "Synchronize Horizontal Scrolling", IDM_VIEW_SYNSCROLLH
|
MENUITEM "Synchronize Horizontal Scrolling", IDM_VIEW_SYNSCROLLH
|
||||||
|
@ -1259,11 +1259,17 @@ LRESULT Notepad_plus::process(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lPa
|
|||||||
|
|
||||||
case WM_NOTIFY:
|
case WM_NOTIFY:
|
||||||
{
|
{
|
||||||
checkClipboard();
|
SCNotification *notification = reinterpret_cast<SCNotification *>(lParam);
|
||||||
checkUndoState();
|
|
||||||
checkMacroState();
|
if (notification->nmhdr.code == SCN_UPDATEUI)
|
||||||
_pluginsManager.notify(reinterpret_cast<SCNotification *>(lParam));
|
{
|
||||||
return notify(reinterpret_cast<SCNotification *>(lParam));
|
checkClipboard(); //6
|
||||||
|
checkUndoState(); //4
|
||||||
|
}
|
||||||
|
|
||||||
|
_pluginsManager.notify(notification);
|
||||||
|
|
||||||
|
return notify(notification);
|
||||||
}
|
}
|
||||||
|
|
||||||
case NPPM_INTERNAL_CHECKDOCSTATUS :
|
case NPPM_INTERNAL_CHECKDOCSTATUS :
|
||||||
|
@ -1147,8 +1147,6 @@ void Notepad_plus::command(int id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
case IDM_VIEW_WRAP:
|
case IDM_VIEW_WRAP:
|
||||||
{
|
|
||||||
//if (_pDocMap && !_pDocMap->isVisible())
|
|
||||||
{
|
{
|
||||||
bool isWraped = !_pEditView->isWrap();
|
bool isWraped = !_pEditView->isWrap();
|
||||||
_mainEditView.wrap(isWraped);
|
_mainEditView.wrap(isWraped);
|
||||||
@ -1158,6 +1156,10 @@ void Notepad_plus::command(int id)
|
|||||||
|
|
||||||
ScintillaViewParams & svp1 = (ScintillaViewParams &)(NppParameters::getInstance())->getSVP();
|
ScintillaViewParams & svp1 = (ScintillaViewParams &)(NppParameters::getInstance())->getSVP();
|
||||||
svp1._doWrap = isWraped;
|
svp1._doWrap = isWraped;
|
||||||
|
|
||||||
|
if (_pDocMap)
|
||||||
|
{
|
||||||
|
_pDocMap->wrapActionDone();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -442,7 +442,7 @@ BOOL Notepad_plus::notify(SCNotification *notification)
|
|||||||
|
|
||||||
if (_pDocMap)
|
if (_pDocMap)
|
||||||
{
|
{
|
||||||
_pDocMap->scrollMap();
|
_pDocMap->guiUpdate();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -39,7 +39,8 @@ void DocumentMap::reloadMap()
|
|||||||
_pScintillaEditView->syncFoldStateWith((*_ppEditView)->getCurrentFoldStates());
|
_pScintillaEditView->syncFoldStateWith((*_ppEditView)->getCurrentFoldStates());
|
||||||
|
|
||||||
// Wrapping
|
// Wrapping
|
||||||
//wrapMap();
|
initWrapMap();
|
||||||
|
wrapMap();
|
||||||
|
|
||||||
scrollMap();
|
scrollMap();
|
||||||
|
|
||||||
@ -58,6 +59,17 @@ void DocumentMap::initWrapMap()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DocumentMap::guiUpdate()
|
||||||
|
{
|
||||||
|
if (_wrapUnwrapTriggered)
|
||||||
|
{
|
||||||
|
initWrapMap();
|
||||||
|
wrapMap();
|
||||||
|
}
|
||||||
|
scrollMap();
|
||||||
|
_wrapUnwrapTriggered = false;
|
||||||
|
}
|
||||||
|
|
||||||
void DocumentMap::wrapMap()
|
void DocumentMap::wrapMap()
|
||||||
{
|
{
|
||||||
RECT rect;
|
RECT rect;
|
||||||
|
@ -115,6 +115,12 @@ public:
|
|||||||
return _isMainEditorWrap;
|
return _isMainEditorWrap;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
void wrapActionDone() {
|
||||||
|
_wrapUnwrapTriggered = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
void guiUpdate();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
|
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
|
||||||
|
|
||||||
@ -124,6 +130,7 @@ private:
|
|||||||
//HWND _glassHandle;
|
//HWND _glassHandle;
|
||||||
ViewZoneDlg _vzDlg;
|
ViewZoneDlg _vzDlg;
|
||||||
bool _isMainEditorWrap;
|
bool _isMainEditorWrap;
|
||||||
|
bool _wrapUnwrapTriggered;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user