[ENHANCE] 1. Put the focus on edit zone after insertion from ASCII panel and clipboard history panel.
2. Make clipboard inspection implementation conform to win32 standard. git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@770 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
parent
7b4be22351
commit
903788f9bd
@ -127,4 +127,5 @@ void AnsiCharPanel::insertChar(unsigned char char2insert) const
|
||||
(*_ppEditView)->execute(SCI_REPLACESEL, 0, (LPARAM)"");
|
||||
int len = (char2insert < 128)?1:strlen(multiByteStr);
|
||||
(*_ppEditView)->execute(SCI_ADDTEXT, len, (LPARAM)multiByteStr);
|
||||
(*_ppEditView)->getFocus();
|
||||
}
|
@ -22,10 +22,12 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
#include "ScintillaEditView.h"
|
||||
#include "clipboardFormats.h"
|
||||
|
||||
/*
|
||||
void ClipboardHistoryPanel::switchEncoding()
|
||||
{
|
||||
//int codepage = (*_ppEditView)->getCurrentBuffer()->getEncoding();
|
||||
}
|
||||
*/
|
||||
|
||||
ClipboardData ClipboardHistoryPanel::getClipboadData()
|
||||
{
|
||||
@ -173,15 +175,25 @@ BOOL CALLBACK ClipboardHistoryPanel::run_dlgProc(UINT message, WPARAM wParam, LP
|
||||
{
|
||||
case WM_INITDIALOG :
|
||||
{
|
||||
::SetClipboardViewer(_hSelf);
|
||||
return TRUE;
|
||||
_hwndNextCbViewer = ::SetClipboardViewer(_hSelf);
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_CHANGECBCHAIN:
|
||||
if (_hwndNextCbViewer == (HWND)wParam)
|
||||
_hwndNextCbViewer = (HWND)lParam;
|
||||
else if (_hwndNextCbViewer)
|
||||
::SendMessage(_hwndNextCbViewer, message, wParam, lParam);
|
||||
break;
|
||||
|
||||
case WM_DRAWCLIPBOARD :
|
||||
{
|
||||
//::MessageBoxA(NULL, "Catch u", "", MB_OK);
|
||||
ClipboardData clipboardData = getClipboadData();
|
||||
addToClipboadHistory(clipboardData);
|
||||
return TRUE;
|
||||
if (_hwndNextCbViewer)
|
||||
::SendMessage(_hwndNextCbViewer, message, wParam, lParam);
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_COMMAND :
|
||||
@ -213,7 +225,7 @@ BOOL CALLBACK ClipboardHistoryPanel::run_dlgProc(UINT message, WPARAM wParam, LP
|
||||
|
||||
(*_ppEditView)->execute(SCI_REPLACESEL, 0, (LPARAM)"");
|
||||
(*_ppEditView)->execute(SCI_ADDTEXT, strlen(c), (LPARAM)c);
|
||||
|
||||
(*_ppEditView)->getFocus();
|
||||
delete [] c;
|
||||
}
|
||||
}
|
||||
@ -242,6 +254,10 @@ BOOL CALLBACK ClipboardHistoryPanel::run_dlgProc(UINT message, WPARAM wParam, LP
|
||||
break;
|
||||
}
|
||||
*/
|
||||
case WM_DESTROY:
|
||||
::ChangeClipboardChain(_hSelf, _hwndNextCbViewer);
|
||||
break;
|
||||
|
||||
default :
|
||||
return DockingDlgInterface::run_dlgProc(message, wParam, lParam);
|
||||
}
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
|
||||
class ClipboardHistoryPanel : public DockingDlgInterface {
|
||||
public:
|
||||
ClipboardHistoryPanel(): DockingDlgInterface(IDD_CLIPBOARDHISTORY_PANEL) {};
|
||||
ClipboardHistoryPanel(): DockingDlgInterface(IDD_CLIPBOARDHISTORY_PANEL), _ppEditView(NULL), _hwndNextCbViewer(NULL) {};
|
||||
|
||||
void init(HINSTANCE hInst, HWND hPere, ScintillaEditView **ppEditView) {
|
||||
DockingDlgInterface::init(hInst, hPere);
|
||||
@ -72,7 +72,7 @@ public:
|
||||
_hParent = parent2set;
|
||||
};
|
||||
|
||||
void switchEncoding();
|
||||
//void switchEncoding();
|
||||
ClipboardData getClipboadData();
|
||||
void addToClipboadHistory(ClipboardData cbd);
|
||||
int getClipboardDataIndex(ClipboardData cbd);
|
||||
@ -83,5 +83,6 @@ protected:
|
||||
private:
|
||||
ScintillaEditView **_ppEditView;
|
||||
std::vector<ClipboardData> _clipboardDataVector;
|
||||
HWND _hwndNextCbViewer;
|
||||
};
|
||||
#endif // CLIPBOARDHISTORYPANEL_H
|
||||
|
@ -44,7 +44,8 @@ public:
|
||||
void setParent(HWND parent2set){
|
||||
_hParent = parent2set;
|
||||
};
|
||||
|
||||
|
||||
//Activate document in scintilla by using the internal index
|
||||
void activateDoc(int i) const;
|
||||
|
||||
protected:
|
||||
|
Loading…
Reference in New Issue
Block a user