static bool SetupClass( void ) { if( DoRegisterClass( GUIMainHInst, GUIClass, (WPI_CLASSPROC)GUIWindowProc, REGISTER_STYLE, EXTRA_SIZE * NUM_EXTRA_WORDS ) ) { return( DoRegisterClass( GUIMainHInst, GUIDialogClass, (WPI_CLASSPROC)GUIWindowProc, REGISTER_DIALOG_STYLE, EXTRA_SIZE * NUM_EXTRA_WORDS ) ); } return( FALSE ); }
Win32ScreenDevice::Win32ScreenDevice(unsigned width,unsigned height) { cursor_ = 0; enableCursor_ = false; attached_ = false; defproc_ = 0; g_win32ScreenDev = this; hdc_ = 0; DoRegisterClass(); hwnd_ = DoCreateWindow(width,height); if ( hwnd_ ) { SetWindowTextW(hwnd_,title_.Str()); hdc_ = GetDC(hwnd_); } leave_handled_ = false; immediate_event_handler_ = false; }
static DWORD WINAPI gr_open_graph_internal(value arg) { RECT rc; int ret; int event; int x, y, w, h; int screenx,screeny; int attributes; static int registered; MSG msg; gr_initialized = TRUE; hInst = GetModuleHandle(NULL); x = y = w = h = CW_USEDEFAULT; sscanf(String_val(arg), "%dx%d+%d+%d", &w, &h, &x, &y); /* Open the display */ if (grwindow.hwnd == NULL || !IsWindow(grwindow.hwnd)) { if (!registered) { registered = DoRegisterClass(); if (!registered) { open_graph_errmsg = "Cannot register the window class"; SetEvent(open_graph_event); return 1; } } grwindow.hwnd = CreateWindow(szOcamlWindowClass, WINDOW_NAME, WS_OVERLAPPEDWINDOW, x,y, w,h, NULL,0,hInst,NULL); if (grwindow.hwnd == NULL) { open_graph_errmsg = "Cannot create window"; SetEvent(open_graph_event); return 1; } #if 0 if (x != CW_USEDEFAULT) { rc.left = 0; rc.top = 0; rc.right = w; rc.bottom = h; AdjustWindowRect(&rc,GetWindowLong(grwindow.hwnd,GWL_STYLE),0); MoveWindow(grwindow.hwnd,x,y,rc.right-rc.left,rc.bottom-rc.top,1); } #endif } gr_reset(); ShowWindow(grwindow.hwnd,SW_SHOWNORMAL); /* Position the current point at origin */ grwindow.grx = 0; grwindow.gry = 0; caml_gr_init_event_queue(); /* The global data structures are now correctly initialized. Restart the Caml main thread. */ open_graph_errmsg = NULL; SetEvent(open_graph_event); /* Enter the message handling loop */ while (GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg); // Translates virtual key codes DispatchMessage(&msg); // Dispatches message to window if (!IsWindow(grwindow.hwnd)) break; } return 0; }
//-------------------------------------------------------------------------------------------------------- void LAST_MODIFIED_LIST::Initialize (void) { DoRegisterClass ("Last Modified", "Last Modified"); }