MCPcopy Create free account
hub / github.com/dhewm/dhewm3 / HandleCreate

Method HandleCreate

neo/tools/debugger/DebuggerWindow.cpp:905–1130  ·  view source on GitHub ↗

================ rvDebuggerWindow::HandleCreate Handles the WM_CREATE command ================ */

Source from the content-addressed store, hash-verified

903================
904*/
905int rvDebuggerWindow::HandleCreate ( WPARAM wparam, LPARAM lparam )
906{
907 UINT tabsize = 16;
908 TEXTMETRIC tm;
909 HDC dc;
910 LOGFONT lf;
911 int i;
912
913 gDebuggerApp.GetOptions().GetWindowPlacement ( "wp_main", mWnd );
914
915 // Create the main toolbar
916 CreateToolbar ( );
917
918 // Create the script window
919 LoadLibrary ( "Riched20.dll" );
920 mWndScript = CreateWindow ( "RichEdit20A", "", WS_CHILD|WS_BORDER|ES_NOHIDESEL|ES_READONLY|ES_MULTILINE|ES_WANTRETURN|ES_AUTOVSCROLL|ES_AUTOHSCROLL|WS_VSCROLL|WS_HSCROLL, 0, 0, 100, 100, mWnd, (HMENU) IDC_DBG_SCRIPT, mInstance, 0 );
921 SendMessage ( mWndScript, EM_SETEVENTMASK, 0, ENM_SCROLL | ENM_CHANGE | ENM_UPDATE | ENM_SCROLLEVENTS | ENM_REQUESTRESIZE) ;
922 SendMessage ( mWndScript, EM_SETWORDBREAKPROC, 0, (LPARAM) ScriptWordBreakProc );
923 mOldScriptProc = (WNDPROC)GetWindowLongPtr ( mWndScript, GWLP_WNDPROC );
924 SetWindowLongPtr ( mWndScript, GWLP_USERDATA, (LONG_PTR)this );
925 SetWindowLongPtr ( mWndScript, GWLP_WNDPROC, (LONG_PTR)ScriptWndProc );
926
927 SendMessage ( mWndScript, EM_SETTABSTOPS, 1, (LPARAM)&tabsize );
928
929 dc = GetDC ( mWndScript );
930 GetTextMetrics ( dc, &tm );
931 ZeroMemory ( &lf, sizeof(lf) );
932 lf.lfHeight = tm.tmHeight * Win_GetWindowScalingFactor( mWndScript );
933 strcpy ( lf.lfFaceName, "Courier New" );
934
935 SendMessage ( mWndScript, WM_SETFONT, (WPARAM)CreateFontIndirect ( &lf ), 0 );
936 SendMessage ( mWndScript, EM_SETMARGINS, EC_LEFTMARGIN|EC_RIGHTMARGIN, MAKELONG( GetMarginWidth(),10) );
937 SendMessage ( mWndScript, EM_SETBKGNDCOLOR, 0, GetSysColor ( COLOR_3DFACE ) );
938
939 mWndOutput = CreateWindow ( "RichEdit20A", "", WS_CHILD|ES_READONLY|ES_MULTILINE|ES_WANTRETURN|ES_AUTOVSCROLL|ES_AUTOHSCROLL|WS_VSCROLL|WS_HSCROLL|WS_VISIBLE, 0, 0, 100, 100, mWnd, (HMENU) IDC_DBG_OUTPUT, mInstance, 0 );
940 SendMessage ( mWndOutput, WM_SETFONT, (WPARAM)CreateFontIndirect ( &lf ), 0 );
941 SendMessage ( mWndOutput, EM_SETMARGINS, EC_LEFTMARGIN|EC_RIGHTMARGIN, MAKELONG(18,10) );
942 SendMessage ( mWndOutput, EM_SETBKGNDCOLOR, 0, GetSysColor ( COLOR_3DFACE ) );
943 SendMessage ( mWndOutput, EM_SETEVENTMASK, 0, ENM_SCROLL | ENM_CHANGE | ENM_UPDATE | ENM_SCROLLEVENTS);
944
945 mWndConsole = CreateWindow ( "RichEdit20A", "", WS_CHILD|ES_READONLY|ES_MULTILINE|ES_WANTRETURN|ES_AUTOVSCROLL|ES_AUTOHSCROLL|WS_VSCROLL|WS_HSCROLL, 0, 0, 100, 100, mWnd, (HMENU) IDC_DBG_CONSOLE, mInstance, 0 );
946 SendMessage ( mWndConsole, WM_SETFONT, (WPARAM)CreateFontIndirect ( &lf ), 0 );
947 SendMessage ( mWndConsole, EM_SETMARGINS, EC_LEFTMARGIN|EC_RIGHTMARGIN, MAKELONG(18,10) );
948 SendMessage ( mWndConsole, EM_SETBKGNDCOLOR, 0, GetSysColor ( COLOR_3DFACE ) );
949
950 mWndConsoleInput = CreateWindow( "RichEdit20A", "", WS_CHILD | ES_WANTRETURN | ES_AUTOVSCROLL | WS_VSCROLL | WS_BORDER, 0, 0, 100, 18, mWnd, ( HMENU ) IDC_DBG_CONSOLEINPUT, mInstance, 0 );
951 lf.lfHeight = -MulDiv( 8, GetDeviceCaps( dc, LOGPIXELSY ), 72 );
952 strcpy( lf.lfFaceName, "Arial" );
953 SendMessage( mWndConsoleInput, WM_SETFONT, ( WPARAM ) CreateFontIndirect( &lf ), 0 );
954 SendMessage( mWndConsoleInput, EM_SETMARGINS, EC_LEFTMARGIN | EC_RIGHTMARGIN, MAKELONG( 18, 10 ) );
955
956 mWndMargin = CreateWindow ( "STATIC", "", WS_VISIBLE|WS_CHILD, 0, 0, 0, 0, mWndScript, (HMENU)IDC_DBG_SPLITTER, mInstance, NULL );
957 SetWindowLongPtr ( mWndMargin, GWLP_USERDATA, (LONG_PTR)this );
958 SetWindowLongPtr ( mWndMargin, GWLP_WNDPROC, (LONG_PTR)MarginWndProc );
959
960 mWndBorder = CreateWindow ( "STATIC", "", WS_VISIBLE|WS_CHILD|SS_GRAYFRAME, 0, 0, 0, 0, mWnd, (HMENU)IDC_DBG_BORDER, mInstance, NULL );
961
962 GetClientRect ( mWnd, &mSplitterRect );

Callers 1

WndProcMethod · 0.80

Calls 5

vaFunction · 0.85
GetColumnWidthsMethod · 0.80
GetWindowPlacementMethod · 0.45
GetStringMethod · 0.45

Tested by

no test coverage detected