| 782 | } |
| 783 | |
| 784 | LRESULT MessageEditor::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) |
| 785 | { |
| 786 | MessageEditor* pThis = (MessageEditor*)GetWindowLongPtr(hWnd, GWLP_USERDATA); |
| 787 | |
| 788 | switch (uMsg) |
| 789 | { |
| 790 | case WM_NCCREATE: |
| 791 | { |
| 792 | CREATESTRUCT* cs = (CREATESTRUCT*)lParam; |
| 793 | SetWindowLongPtr(hWnd, GWLP_USERDATA, (LONG_PTR)cs->lpCreateParams); |
| 794 | break; |
| 795 | } |
| 796 | case WM_DESTROY: |
| 797 | { |
| 798 | pThis->m_btnUpload_hwnd = NULL; |
| 799 | pThis->m_mentionText_hwnd = NULL; |
| 800 | pThis->m_mentionName_hwnd = NULL; |
| 801 | pThis->m_mentionCheck_hwnd = NULL; |
| 802 | pThis->m_mentionCancel_hwnd = NULL; |
| 803 | pThis->m_mentionJump_hwnd = NULL; |
| 804 | pThis->m_jumpPresLbl_hwnd = NULL; |
| 805 | pThis->m_editingMessage_hwnd = NULL; |
| 806 | break; |
| 807 | } |
| 808 | case WM_SIZE: |
| 809 | { |
| 810 | pThis->Layout(); |
| 811 | break; |
| 812 | } |
| 813 | case WM_COMMAND: |
| 814 | { |
| 815 | switch (wParam) { |
| 816 | case CID_MESSAGEINPUTSEND: |
| 817 | pThis->TryToSendMessage(); |
| 818 | break; |
| 819 | case CID_MESSAGEREPLYCANCEL: |
| 820 | pThis->StopEdit(); |
| 821 | pThis->StopReply(); |
| 822 | break; |
| 823 | case CID_MESSAGEUPLOAD: |
| 824 | UploadDialogShow(); |
| 825 | break; |
| 826 | case CID_MESSAGEJUMPPRESENT: { |
| 827 | Snowflake max = UINT64_MAX; |
| 828 | SendMessage(g_Hwnd, WM_SENDTOMESSAGE, 0, (LPARAM)&max); |
| 829 | break; |
| 830 | } |
| 831 | case CID_MESSAGEREPLYJUMP: { |
| 832 | if (pThis->m_replyMessage) |
| 833 | SendMessage(g_Hwnd, WM_SENDTOMESSAGE, 0, (LPARAM) &pThis->m_replyMessage); |
| 834 | break; |
| 835 | } |
| 836 | } |
| 837 | break; |
| 838 | } |
| 839 | // Windows NT 3.1 doesn't seem to send wm_ctlcolorstatic here for some weird |
| 840 | // reason. I don't know how to fix that, I tried. |
| 841 | case WM_CTLCOLORSTATIC: |
nothing calls this directly
no test coverage detected