Code archives/Miscellaneous/cut / copy / paste / undo / redo
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
B+ Note : it's not a multilevel undo / redo Userlibs : userlibs/user32.decls .lib "user32.dll" SendMessage%(hwnd, msg, wParam, mParam):"SendMessageA" Example : win=CreateWindow("",0,0,300,300,0,1) mytext=CreateTextArea (5,5,280,200,win) cut=CreateButton("cut",5,210,30,20,win ) copy=CreateButton("copy",45,210,30,20,win ) paste=CreateButton("paste",85,210,30,20,win ) undo=CreateButton("undo",5,240,30,20,win ) redo=CreateButton("redo",45,240,30,20,win ) Repeat If EventID()=$401 Select EventSource() Case cut TextAreaCut(mytext) Case copy TextAreaCopy(mytext) Case paste TextAreaPaste(mytext) Case undo TextAreaUndo(mytext) Case redo TextAreaRedo(mytext) End Select EndIf Until WaitEvent()=$803 Functions : | |||||
;--------------------------------------------------- Function TextAreaUndo(txt) Local EM_UNDO=$C7 SendMessage(QueryObject(txt,1), EN_UNDO, 0, 0) End Function ;--------------------------------------------------- Function TextAreaRedo(txt) Local EM_REDO=$454 SendMessage(QueryObject(txt,1), EM_REDO, 0, 0) End Function ;--------------------------------------------------- Function TextAreaCut(txt) Local WM_CUT=$300 SendMessage(QueryObject(txt,1), WM_CUT, 0, 0) End Function ;--------------------------------------------------- Function TextAreaCopy(txt) Local WM_COPY=$301 SendMessage(QueryObject(txt,1), WM_COPY, 0, 0) End Function ;--------------------------------------------------- Function TextAreaPaste(txt) Local WM_PASTE=$302 SendMessage(QueryObject(txt,1), WM_PASTE, 0, 0) End Function ;--------------------------------------------------- |
Comments
None.
Code Archives Forum