photon_window CreateSDLWindow(const photon_settings &settings){ PrintToLog("INFO: Initializing SDL."); photon_window window; SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_JOYSTICK | SDL_INIT_GAMECONTROLLER) == -1) { PrintToLog("ERROR: Unable to init SDL! \"%s\"", SDL_GetError()); // TODO - error handling. abort(); } SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16); SDL_GL_SetAttribute(SDL_GL_BUFFER_SIZE, 32); if(settings.multisamples > 0){ SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 1); SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, settings.multisamples); } SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, settings.doublebuffer); window.window_SDL = SDL_CreateWindow("Photon", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 600, PHOTON_WINDOW_FLAGS); if (!window.window_SDL){ PrintToLog("ERROR: Unable to create window!"); // TODO - error handling. abort(); } window.context_SDL = SDL_GL_CreateContext(window.window_SDL); SDL_GL_SetSwapInterval(settings.vsync); SDL_ShowCursor(SDL_ENABLE); if(settings.fullscreen){ ToggleFullscreen(window); } SetWindowIcon(window, "/textures/gui/window_icon.png"); return window; }
void VPlayerApp::AfterEngineInit() { VAppImpl::AfterEngineInit(); VPlayerAppModule* pModule = new VPlayerAppModule(&m_Config); pModule->RegisterLoader(new SceneLoader()); pModule->RegisterLoader(new MeshLoader()); pModule->RegisterLoader(new PrefabLoader()); pModule->RegisterLoader(new ZoneLoader()); pModule->RegisterLoader(new LitLoader()); RegisterAppModule(pModule); RegisterAppModule(new VCameraHandling()); SetWindowIcon(); }
inline void WINAPI tapetums::UWnd::SetWindowIcon ( HMODULE hInst, LPCTSTR lpszIconName ) noexcept { const auto hIcon = (HICON)::LoadImage ( hInst, lpszIconName, IMAGE_ICON, 0, 0, LR_DEFAULTSIZE | LR_SHARED ); const auto hIconSm = (HICON)::LoadImage ( hInst, lpszIconName, IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR | LR_SHARED ); return SetWindowIcon(hIcon, hIconSm); }
ExplorerAboutDlg(HWND hwnd) : super(hwnd) { SetWindowIcon(hwnd, IDI_REACTOS); new FlatButton(hwnd, IDOK); _hfont = CreateFont(20, 0, 0, 0, FW_BOLD, TRUE, 0, 0, 0, 0, 0, 0, 0, TEXT("Sans Serif")); new ColorStatic(hwnd, IDC_ROS_EXPLORER, RGB(32,32,128), 0, _hfont); new HyperlinkCtrl(hwnd, IDC_WWW); FmtString ver_txt(ResString(IDS_EXPLORER_VERSION_STR), (LPCTSTR)ResString(IDS_VERSION_STR)); SetWindowText(GetDlgItem(hwnd, IDC_VERSION_TXT), ver_txt); HWND hwnd_winver = GetDlgItem(hwnd, IDC_WIN_VERSION); SetWindowText(hwnd_winver, get_windows_version_str()); SetWindowFont(hwnd_winver, GetStockFont(DEFAULT_GUI_FONT), FALSE); CenterWindow(hwnd); }
// // Main Window message handler // LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { NMHDR *hdr; POINT pt; RECT rect; HMENU hMenu; HWND hwndHV = GetActiveHexView(hwnd);//g_hwndHexView; int i; TCITEM tci; MAINWND *mainWnd = (MAINWND *)GetWindowLongPtr(hwnd, 0); switch(msg) { case WM_NCCREATE: if((mainWnd = malloc(sizeof(MAINWND))) == 0) return FALSE; SetWindowLongPtr(hwnd, 0, (LONG_PTR)mainWnd); ZeroMemory(mainWnd, sizeof(MAINWND)); return TRUE; case WM_NCDESTROY: free(mainWnd); return 0; case WM_CREATE: g_hwndMain = hwnd; SetWindowIcon(hwnd, IDI_APP); // create a child-window EDIT control //g_hwndHexView = CreateHexViewCtrl(hwnd); g_hwndTabView = CreateWindow(WC_TABVIEW, TEXT(""), WS_CHILD|WS_VISIBLE,0,0,0,0,hwnd, 0, g_hInstance, 0); g_hwndStatusBar = CreateStatusBar(hwnd); SendMessage(g_hwndTabView, TCM_SETITEMSIZE, 0, MAKELPARAM(150, 0)); SetStatusBarParts(g_hwndStatusBar); hwndHV = g_hwndHexView; mainWnd->hwndMain = hwnd; mainWnd->hwndStatusBar = g_hwndStatusBar; mainWnd->hwndTabView = g_hwndTabView; CreateToolTip(g_hwndHexView); // g_hwndDock[0] = CreateDockWnd(&dock, hwnd, TEXT("Toolbar")); //g_hwndToolbar = InitToolbar(hwnd); //g_hwndSearchBar = CreateSearchBar(hwnd); //g_hwndTypeView = CreateTypeView(hwnd); SetFocus(hwndHV); // tell windows that we can handle drag+drop'd files DragAcceptFiles(hwnd, TRUE); UpdateRecentMenu(GetSubMenu(GetMenu(hwnd), 0)); SetTimer(hwnd, 0xdeadbeef, 1000, 0); return TRUE; case WM_TIMER: if(wParam == 0xdeadbeef) { KillTimer(hwnd, wParam); //FirstTimeOptions(hwnd); } return 0; case WM_DROPFILES: // get the screen coordinates of the drop-location if(DragQueryPoint((HDROP)wParam, &pt)) ClientToScreen(hwnd, &pt); GetWindowRect(hwndHV, &rect); // drop anywhere *except* the hexview, as that does D&D itself if(!PtInRect(&rect, pt)) { HandleDropFiles(hwnd, (HDROP)wParam); } //CreateToolTip(mainWnd->hwndTabView); return 0; case WM_ENABLE: EnableWindow(g_hwndSearch, (BOOL)wParam); EnableWindow(g_hwndGoto, (BOOL)wParam); return 0; case WM_CONTEXTMENU: if((HWND)wParam == DockWnd_GetWindow(hwnd, DWID_TYPEVIEW)) { HMENU hMenu = GetSubMenu(LoadMenu(g_hInstance, MAKEINTRESOURCE(IDR_TYPECONTEXT)), 0); UINT u; MenuCheckMark(hMenu, IDM_TYPEVIEW_HEX, g_fDisplayHex); MenuCheckMark(hMenu, IDM_TYPEVIEW_BIGENDIAN, g_fDisplayBigEndian); u = TrackPopupMenu(hMenu, TPM_RETURNCMD, (short)LOWORD(lParam), (short)HIWORD(lParam), 0, hwnd, 0); SendMessage(DockWnd_GetContents(hwnd, DWID_TYPEVIEW), WM_COMMAND, u, 0); } break; case WM_COMMAND: return HexEdit_OnCommand(hwnd, LOWORD(wParam), HIWORD(wParam), (HWND)lParam); case WM_NOTIFY: hdr = (NMHDR *)lParam; if(hdr->hwndFrom == hwndHV) return HexViewNotifyHandler(mainWnd, hwnd, hdr); else return HexEdit_OnNotify(mainWnd, hwnd, (UINT)wParam, (NMHDR *)lParam); case WM_CLOSE: tci.mask = TCIF_PARAM; for(i = 0; (hwndHV = EnumHexView(hwnd, i)) != NULL; ) { UINT uAnswer = HexFileCloseNotify(hwnd, hwndHV); if(uAnswer == IDCANCEL) { return 0; } else if(uAnswer == IDNO) { SaveHighlights(hwndHV); TabCtrl_DeleteItem(mainWnd->hwndTabView, i); } else { i++; } } // save settings *before* we destroy anything! DockWnd_SaveSettings(hwnd); // shut program down DestroyWindow(hwnd); return 0; case WM_DESTROY: DestroyWindow(hwndHV); // PostQuitMessage(0); return 0; case WM_SETFOCUS: SetFocus(hwndHV); return 0; case WM_SIZE: MainWndSize(mainWnd, LOWORD(lParam), HIWORD(lParam)); UpdateStatusbar(mainWnd->hwndStatusBar); return 0; case WM_INITMENUPOPUP: hMenu = (HMENU)wParam;//GetMenu(hwnd); MenuCheckMark(hMenu, IDM_VIEW_TOOLBAR, DockWnd_IsOpen(hwnd, DWID_TOOLBAR)); MenuCheckMark(hMenu, IDM_TOOLS_TYPEVIEW, DockWnd_IsOpen(hwnd, DWID_TYPEVIEW)); MenuCheckMark(hMenu, IDM_TOOLS_SEARCHBAR, DockWnd_IsOpen(hwnd, DWID_SEARCHBAR)); CheckMenuRadioItem(hMenu, IDM_VIEW_HEX, IDM_VIEW_BIN, IDM_VIEW_HEX + (HexView_GetStyle(hwndHV) & HVS_FORMAT_MASK), MF_BYCOMMAND); { int look[32] = { 0, 0, 1, 0, 2 }; CheckMenuRadioItem(hMenu, IDM_GROUP_BYTE, IDM_GROUP_DWORD, IDM_GROUP_BYTE + look[HexView_GetGrouping(hwndHV)], MF_BYCOMMAND); } { size_w selsize; UINT edmode = HexView_GetEditMode(hwndHV); BOOL cftext = IsClipboardFormatAvailable(CF_TEXT); BOOL canundo = HexView_CanUndo(hwndHV); BOOL canredo = HexView_CanRedo(hwndHV); HexView_GetSelSize(hwndHV, &selsize); //hMenu = GetSubMenu(GetMenu(hwnd), 1); EnableMenuCmdItem(hMenu, IDM_EDIT_UNDO, canundo); EnableMenuCmdItem(hMenu, IDM_EDIT_REDO, canredo); EnableMenuCmdItem(hMenu, IDM_EDIT_CUT, selsize > 0 && edmode == HVMODE_INSERT); EnableMenuCmdItem(hMenu, IDM_EDIT_COPY, selsize > 0); EnableMenuCmdItem(hMenu, IDM_EDIT_COPYAS, selsize > 0); EnableMenuCmdItem(hMenu, IDM_EDIT_PASTE, cftext && edmode != HVMODE_READONLY ); EnableMenuCmdItem(hMenu, IDM_EDIT_PASTESPECIAL, edmode != HVMODE_READONLY ); EnableMenuCmdItem(hMenu, IDM_EDIT_DELETE, selsize > 0 && edmode != HVMODE_READONLY ); EnableMenuCmdItem(hMenu, IDM_EDIT_REVERSE, selsize > 0 && edmode != HVMODE_READONLY ); EnableMenuCmdItem(hMenu, IDM_TOOLS_TRANSFORM, selsize > 0 && edmode != HVMODE_READONLY ); EnableMenuCmdItem(hMenu, IDM_FILE_REVERT, canundo || canredo); } return 0; } return DefWindowProc(hwnd, msg, wParam, lParam); }
//-------------------------------------------------------------------- // Function: Cls_OnInitDialog // // Description: // // Input: hwnd - // hwndFocus - // lParam - // // Modifies: // // Returns: // //-------------------------------------------------------------------- BOOL Cls_OnTrayInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam) { TCHAR szBuffer[512]; HWND hwndChild; int i; LPPROPSHEETPAGE psp = (LPPROPSHEETPAGE)lParam; #ifndef WIN32 hwndChild = GetFirstChild(hwnd); while (hwndChild) { SetWindowFont(hwndChild, hFontDialog, FALSE); hwndChild = GetNextSibling(hwndChild); } #endif // Description LoadString(hInstance, IDS_TRAYS_DESC1, szBuffer, SIZEOF_IN_CHAR(szBuffer)); LoadString(hInstance, IDS_TRAYS_DESC2, szBuffer + _tcslen(szBuffer), SIZEOF_IN_CHAR(szBuffer) - _tcslen(szBuffer)); SetDlgItemText(hwnd, IDC_TIP_TEXT, szBuffer); loadMediaSize(hwnd, IDC_MEDIA_SIZE1, media_tray[0].uMediaSizeID); if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE2)) { for (i = 0; i < MEDIA_SIZE_MAX_NUMBER; i++) { if (media_tray[1].uMediaSizeID IS media_size[i].uMediaSizeID) { SetWindowText(hwndChild, media_size[i].szMediaSize); SetWindowIcon(hwndChild, media_size[1].uMediaSizeIconID); break; } } } if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE3)) { for (i = 0; i < MEDIA_SIZE_MAX_NUMBER; i++) { if (media_tray[2].uMediaSizeID IS media_size[i].uMediaSizeID) { SetWindowText(hwndChild, media_size[i].szMediaSize); SetWindowIcon(hwndChild, media_size[1].uMediaSizeIconID); break; } } } if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE4)) { if (media_tray[3].bInstalled IS TRUE) { for (i = 0; i < MEDIA_SIZE_MAX_NUMBER; i++) { if (media_tray[3].uMediaSizeID IS media_size[i].uMediaSizeID) { SetWindowText(hwndChild, media_size[i].szMediaSize); SetWindowIcon(hwndChild, media_size[1].uMediaSizeIconID); break; } } } else { ShowWindow(hwndChild, SW_HIDE); if (hwndChild = GetDlgItem(hwnd, IDC_TRAY4_NAME)) ShowWindow(hwndChild, SW_HIDE); } } if (media_tray[4].bInstalled IS TRUE) { loadMediaSize(hwnd, IDC_MEDIA_SIZE5, media_tray[4].uMediaSizeID); } else { if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE5)) ShowWindow(hwndChild, SW_HIDE); if (hwndChild = GetDlgItem(hwnd, IDC_ENVL_NAME)) ShowWindow(hwndChild, SW_HIDE); } OnActivateDialog (hwnd); return TRUE; }
BOOL Cls_OnTraysInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam) { TCHAR szBuffer[512]; HWND hwndChild; int i; #ifdef WIN32XXX LPPROPSHEETPAGE psp = (LPPROPSHEETPAGE)lParam; #else LPTABINFOENTRY psp = (LPTABINFOENTRY)lParam; #endif #ifndef WIN32 hwndChild = GetFirstChild(hwnd); while (hwndChild) { SetWindowFont(hwndChild, hFontDialog, FALSE); hwndChild = GetNextSibling(hwndChild); } #endif // Description LoadString(hInstance, IDS_TRAYS_DESC1, szBuffer, SIZEOF_IN_CHAR(szBuffer)); LoadString(hInstance, IDS_TRAYS_DESC2, szBuffer + _tcslen(szBuffer), SIZEOF_IN_CHAR(szBuffer) - _tcslen(szBuffer)); SetDlgItemText(hwnd, IDC_TIP_TEXT, szBuffer); /*****************************************************/ /* Load media size to the MP tray - this cannot */ /* sizes so load the current */ /*****************************************************/ loadMediaSize(hwnd, IDC_MEDIA_SIZE1, elk_media_tray[0].uMediaSizeID); /*****************************************************/ /* Now, for the Tray 2 - loop through and match the */ /* size and then set it. */ /*****************************************************/ if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE2)) { for (i = 0; i < MEDIA_SIZE_MAX_NUMBER; i++) { if (elk_media_tray[1].uMediaSizeID IS media_size[i].uMediaSizeID) { SetWindowText(hwndChild, media_size[i].szMediaSize); SetWindowIcon(hwndChild, media_size[1].uMediaSizeIconID); break; } } } /*****************************************************/ /* Set up the Tray 3 - this is the 500 sheet option */ /* If it is not installed,hide the dialog. */ /*****************************************************/ if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE3)) { if (elk_media_tray[2].bInstalled IS TRUE) { for (i = 0; i < MEDIA_SIZE_MAX_NUMBER; i++) { if (elk_media_tray[2].uMediaSizeID IS media_size[i].uMediaSizeID) { SetWindowText(hwndChild, media_size[i].szMediaSize); SetWindowIcon(hwndChild, media_size[1].uMediaSizeIconID); break; } } } else { ShowWindow(hwndChild, SW_HIDE); if (hwndChild = GetDlgItem(hwnd, IDC_TRAY3_NAME)) ShowWindow(hwndChild, SW_HIDE); } } /*****************************************************/ /* Now see if the envelope feeder is installed - */ /* This is elk_media_tray[3] for us, but it */ /* corresponds to IDC_MEDIA_SIZE 5. */ /*****************************************************/ if (elk_media_tray[3].bInstalled IS TRUE) { loadMediaSize(hwnd, IDC_MEDIA_SIZE5, elk_media_tray[3].uMediaSizeID); } else { if (hwndChild = GetDlgItem(hwnd, IDC_MEDIA_SIZE5)) ShowWindow(hwndChild, SW_HIDE); if (hwndChild = GetDlgItem(hwnd, IDC_ENVL_NAME)) ShowWindow(hwndChild, SW_HIDE); } return TRUE; }
TrayNotifyDlg::TrayNotifyDlg(HWND hwnd) : super(hwnd), _tree_ctrl(GetDlgItem(hwnd, IDC_NOTIFY_ICONS)), _himl(ImageList_Create(GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), ILC_COLOR24, 3, 0)), _pNotifyArea(static_cast<NotifyArea*>(Window::get_window((HWND)SendMessage(g_Globals._hwndDesktopBar, PM_GET_NOTIFYAREA, 0, 0)))) { _selectedItem = 0; if (_pNotifyArea) { // save original icon states and configuration data for(NotifyIconMap::const_iterator it=_pNotifyArea->_icon_map.begin(); it!=_pNotifyArea->_icon_map.end(); ++it) _icon_states_org[it->first] = IconStatePair(it->second._mode, it->second._dwState); _cfg_org = _pNotifyArea->_cfg; _show_hidden_org = _pNotifyArea->_show_hidden; } SetWindowIcon(hwnd, IDI_REACTOS); _haccel = LoadAccelerators(g_Globals._hInstance, MAKEINTRESOURCE(IDA_TRAYNOTIFY)); { WindowCanvas canvas(_hwnd); HBRUSH hbkgnd = GetStockBrush(WHITE_BRUSH); ImageList_AddAlphaIcon(_himl, SmallIcon(IDI_DOT), hbkgnd, canvas); ImageList_AddAlphaIcon(_himl, SmallIcon(IDI_DOT_TRANS), hbkgnd, canvas); ImageList_AddAlphaIcon(_himl, SmallIcon(IDI_DOT_RED), hbkgnd, canvas); } (void)TreeView_SetImageList(_tree_ctrl, _himl, TVSIL_NORMAL); _resize_mgr.Add(IDC_NOTIFY_ICONS, RESIZE); _resize_mgr.Add(IDC_LABEL1, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_TOOLTIP, RESIZE_X|MOVE_Y); _resize_mgr.Add(IDC_LABEL2, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_TITLE, RESIZE_X|MOVE_Y); _resize_mgr.Add(IDC_LABEL3, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_MODULE, RESIZE_X|MOVE_Y); _resize_mgr.Add(IDC_LABEL4, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_SHOW, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_HIDE, MOVE_Y); _resize_mgr.Add(IDC_NOTIFY_AUTOHIDE,MOVE_Y); _resize_mgr.Add(IDC_PICTURE, MOVE); _resize_mgr.Add(ID_SHOW_HIDDEN_ICONS,MOVE_Y); _resize_mgr.Add(IDC_LABEL6, MOVE_Y); _resize_mgr.Add(IDC_LAST_CHANGE, MOVE_Y); _resize_mgr.Add(IDOK, MOVE); _resize_mgr.Add(IDCANCEL, MOVE); _resize_mgr.Resize(+150, +200); Refresh(); SetTimer(_hwnd, 0, 3000, NULL); register_pretranslate(hwnd); }
INT_PTR CALLBACK DlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { HDC hdc; HICON hIcon; char msg[MAX_PATH]; char *str_lv; switch (uMsg) { case WM_INITDIALOG: CentreDialog(hwndDlg); hIcon = LoadIcon(g_hInst, (LPCTSTR)IDI_ICON); SetWindowIcon(hwndDlg, hIcon); g_hwndDlg = hwndDlg; InstDrvInit(); break; case WM_CLOSE: EndDialog(hwndDlg, 0); break; case WM_COMMAND: switch (LOWORD(wParam)) { case IDC_INSTALL: GetDlgItemText(hwndDlg, IDC_SRVNAME, szFileName, MAX_PATH); if (lstrlen(szFileName) == 0) { SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Please fill in the blank driver file name"); return FALSE; } str_lv = strrchr(szFileName, '\\'); strcpy(szServiceName, ++str_lv); *strrchr(szServiceName, '.') = 0; if (0 == InstDrvInstall(szServiceName, szFileName)) SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Install service success"); break; case IDC_START: GetDlgItemText(hwndDlg, IDC_SRVNAME, szFileName, MAX_PATH); if (lstrlen(szFileName) == 0) { SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Please fill in the blank driver file name"); return FALSE; } str_lv = strrchr(szFileName, '\\'); strcpy(szServiceName, ++str_lv); *strrchr(szServiceName, '.') = 0; if (0 == InstDrvStart(szServiceName, szFileName)) SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Start service success"); break; case IDC_STOP: GetDlgItemText(hwndDlg, IDC_SRVNAME, szFileName, MAX_PATH); if (lstrlen(szFileName) == 0) { SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Please fill in the blank driver file name"); return FALSE; } str_lv = strrchr(szFileName, '\\'); strcpy(szServiceName, ++str_lv); *strrchr(szServiceName, '.') = 0; if (0 == InstDrvStart(szServiceName, szFileName)) SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Stop service success"); break; case IDC_REMOVE: GetDlgItemText(hwndDlg, IDC_SRVNAME, szFileName, MAX_PATH); if (lstrlen(szFileName) == 0) { SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Please fill in the blank driver file name"); return FALSE; } str_lv = strrchr(szFileName, '\\'); strcpy(szServiceName, ++str_lv); *strrchr(szServiceName, '.') = 0; if (0 == InstDrvRemove(szServiceName, szFileName)) SetDlgItemText(hwndDlg, IDC_STATE, "[InstDrv]Remove service success"); InstDrvInit(); break; case IDC_SRVNAME: //hdc = GetDC(NULL); //line += 20; //sprintf(msg, "%10d %10d ", wParam, lParam); //TextOutA(hdc, 0, line, msg, strlen(msg)); //ReleaseDC(hdc, NULL); break; case IDC_CLOSE: EndDialog(hwndDlg, 0); break; } break; case WM_LBUTTONDBLCLK: ofn.Flags = 0 ; if (!GetOpenFileName(&ofn)) return FALSE; SetDlgItemText(hwndDlg, IDC_SRVNAME, szFileName); break; default: return FALSE; } return TRUE; }