I am new here, how is everyone doing?
I am here because I need help to implement something. First question.
I am trying to implement a multiple Undo/Redo feature for a text editor I am working on. I thought, one way of doing it would be to capture the EM_UPDATE message and copy the text to a buffer before the text changes. So, I need something like a BeforeChange event. In the MS docs, here is what it says:
The EN_UPDATE notification message is sent when an edit control is about to redraw itself. This notification message is sent after the control has formatted the text, but before it displays the text. This makes it possible to resize the edit control window, if necessary. The parent window of the edit control receives this notification message through a WM_COMMAND message.
The EN_UPDATE notification message is sent when an edit control is about to redraw itself. This notification message is sent after the control has formatted the text, but before it displays the text.
I thought this would have been a BeforeChange event or something but it is not.
When I capture the message, the text is already modified. I want to capture something like BeforeChange event so I can copy the text to an array of buffers and save it. I have it working now BUT the implementation is pretty poor. I have to keep track on every key stroke typed and also I have to make sure before I paste something into the RichEdit or modify the text, I have to remember to copy the existing text before I modify the text. So is there something like BeforeChange event/message? So I can put the code that copies RichEdit->Text into the buffer in the BeforeChange event instead of doing it manually all the time.
Second question: This one, I am clue less.
I KNOW how to make my program accept file from explorer BUT how can I make ito be able to drag from my program to explorer AND also want to be able to drag elements from one position on the form, to another? I am particularly interested in dragging Tabs using the Tab Control, just like in Maxthon or other tabbed browsers, the tabs are draggable.