void TrackPropDlg::OnHyperLinkClick( wxHyperlinkEvent &event ) { if( m_toggleBtnEdit->GetValue() ) { m_pEditedLink = (wxHyperlinkCtrl*) event.GetEventObject(); OnEditLink( event ); event.Skip( false ); return; } // Windows has trouble handling local file URLs with embedded anchor points, e.g file://testfile.html#point1 // The trouble is with the wxLaunchDefaultBrowser with verb "open" // Workaround is to probe the registry to get the default browser, and open directly // // But, we will do this only if the URL contains the anchor point charater '#' // What a hack...... #ifdef __WXMSW__ wxString cc = event.GetURL(); if( cc.Find( _T("#") ) != wxNOT_FOUND ) { wxRegKey RegKey( wxString( _T("HKEY_CLASSES_ROOT\\HTTP\\shell\\open\\command") ) ); if( RegKey.Exists() ) { wxString command_line; RegKey.QueryValue( wxString( _T("") ), command_line ); // Remove " command_line.Replace( wxString( _T("\"") ), wxString( _T("") ) ); // Strip arguments int l = command_line.Find( _T(".exe") ); if( wxNOT_FOUND == l ) l = command_line.Find( _T(".EXE") ); if( wxNOT_FOUND != l ) { wxString cl = command_line.Mid( 0, l + 4 ); cl += _T(" "); cc.Prepend( _T("\"") ); cc.Append( _T("\"") ); cl += cc; wxExecute( cl ); // Async, so Fire and Forget... } } } else event.Skip(); #else wxString url = event.GetURL(); url.Replace(_T(" "), _T("%20") ); ::wxLaunchDefaultBrowser(url); // event.Skip(); #endif }
void unloadSam(IO &io,char *args) { RegKey(L"Machine\\SAM").flush(); RegKey machine(L"Machine\\"); UnicodeString key(L"SAM"); OBJECT_ATTRIBUTES dest; InitializeObjectAttributes( &dest, &key.unicode_string(), OBJ_CASE_INSENSITIVE, machine.get_handle(), NULL); ULONG status = NtUnloadKey(&dest); CHECKER(status) }
//-------------------------------------------------------------------------------- bool iPoseApp::OnInit() //-------------------------------------------------------------------------------- { mafPictureFactory::GetPictureFactory()->Initialize(); #include "iPose/pic/FRAME_ICON16x16.xpm" mafADDPIC(FRAME_ICON16x16); #include "iPose/pic/FRAME_ICON32x32.xpm" mafADDPIC(FRAME_ICON32x32); #include "iPose/pic/MDICHILD_ICON.xpm" mafADDPIC(MDICHILD_ICON); int result; result = medVMEFactory::Initialize(); assert(result == MAF_OK); result = medPipeFactoryVME::Initialize(); assert(result==MAF_OK); result = mafInteractionFactory::Initialize(); assert(result==MAF_OK); m_Logic = new mafLogicWithManagers(); m_Logic->GetTopWin()->SetTitle("iPose"); m_Logic->Configure(); SetTopWindow(mafGetFrame()); wxRegKey RegKey(wxString("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\iPose")); if(RegKey.Exists()) { RegKey.Create(); wxString revision; RegKey.QueryValue(wxString("DisplayVersion"), revision); m_Logic->SetRevision(revision); } else { wxString revision="0.1"; m_Logic->SetRevision(revision); } //------------------------- Importers ------------------------- medGUIDicomSettings *dicomSettings=new medGUIDicomSettings(NULL,"DICOM"); m_Logic->Plug(new medOpImporterDicomOffis("DICOM"),"Images",true,dicomSettings); m_Logic->Plug(new mafOpImporterSTL("STL"),"Geometries"); //------------------------------------------------------------- //------------------------- Exporters ------------------------- m_Logic->Plug(new mafOpExporterSTL("STL"),"Geometries"); //------------------------------------------------------------- //------------------------- Operations ------------------------- m_Logic->Plug(new iposeOpMove(),"Move"); m_Logic->Plug(new mafOp2DMeasure(),"Measure"); //------------------------------------------------------------- //------------------------- Views ------------------------- mafViewVTK *viso = new mafViewVTK("Isosurface"); viso->PlugVisualPipe("mafVMEVolumeGray", "mafPipeIsosurface",MUTEX); viso->PlugVisualPipe("medVMELabeledVolume", "mafPipeIsosurface",MUTEX); viso->PlugVisualPipe("mafVMEVolumeLarge","mafPipeIsosurface",MUTEX); m_Logic->Plug(viso); mafViewOrthoSlice *viewOrthoSlice = new mafViewOrthoSlice("OrthoSlice"); viewOrthoSlice->PackageView(); m_Logic->Plug(viewOrthoSlice); //------------------------------------------------------------- wxBitmap splashBitmap; splashBitmap.LoadFile("../Splash/iposeSplash.bmp", wxBITMAP_TYPE_BMP); m_Logic->ShowSplashScreen(splashBitmap); // show the application m_Logic->Show(); m_Logic->Init(0,NULL); // calls FileNew - which create the root return TRUE; }
bool CHotkey::LoadKeyMap() { key_map.erase(key_map.begin(), key_map.end()); // 임시 RegKey(VK_F6, false, false, false, ID_TEMP_CLICK_THOUGH); RegKey(VK_F7, false, false, false, ID_WND_BORDER_MODE); RegKey(VK_F7, false, true, false, ID_BACKGROUND_SWITCH); // 원문 문장/이름 출력 RegKey(VK_F8, false, false, false, ID_PRINT_ORGTEXT); RegKey(VK_F8, false, true, false, ID_PRINT_ORGNAME); // 이름 분리 표시 RegKey(VK_F8, true, false, false, ID_SEPERATE_NAME); RegKey(VK_F10, false, false, false, ID_WINDOW_SETTING, true); // 종료 RegKey(VK_F12, false, true, false, ID_TERMINATE_ANEMONE); // 이전글 / 최근글 보기 RegKey(VK_NUMPAD9, false, false, false, ID_TEXT_PREV); RegKey(VK_NUMPAD3, false, false, false, ID_TEXT_NEXT); // 글자 크기 UP/DOWN RegKey(VK_SUBTRACT, false, false, false, ID_TEXTSIZE_MINUS); RegKey(VK_ADD, false, false, false, ID_TEXTSIZE_PLUS); // 창 잠깐 숨기기 / 창 완전 숨기기 RegKey(VK_MULTIPLY, false, false, false, ID_WINDOW_VISIBLE, true); RegKey(VK_DIVIDE, false, false, false, ID_TEMP_WINDOW_HIDE, true); // 창 위치 리셋 RegKey(VK_NUMPAD5, true, false, false, ID_WINRESET); // 창 이동 RegKey(VK_NUMPAD8, false, false, false, ID_WNDMOVE_TOP); RegKey(VK_NUMPAD2, false, false, false, ID_WNDMOVE_BOTTOM); RegKey(VK_NUMPAD4, false, false, false, ID_WNDMOVE_LEFT); RegKey(VK_NUMPAD6, false, false, false, ID_WNDMOVE_RIGHT); // 창 크기 조절 RegKey(VK_NUMPAD8, false, true, false, ID_WNDSIZE_TOP); RegKey(VK_NUMPAD2, false, true, false, ID_WNDSIZE_BOTTOM); RegKey(VK_NUMPAD4, false, true, false, ID_WNDSIZE_LEFT); RegKey(VK_NUMPAD6, false, true, false, ID_WNDSIZE_RIGHT); // 단문 번역/파일 번역창 RegKey(VK_F11, false, false, true, ID_WINDOW_TRANS); RegKey(VK_F11, false, true, true, ID_WINDOW_FILETRANS); // 전역 단축키 RegKey(VK_F12, true, false, true, ID_EXTERN_HOTKEY, true); // 사전 오픈 RegKey(VK_INSERT, false, false, true, ID_OPENDIC, true); // 자석모드 RegKey(VK_OEM_3, false, false, false, ID_MAGNETIC_MODE, true); // 마우스 클릭 RegKey(VK_NUMPAD0, false, false, false, ID_MOUSE_LCLICK, true); RegKey(VK_DECIMAL, false, false, false, ID_MOUSE_RCLICK, true); // 창 번역 RegKey(VK_F9, false, false, true, ID_TRANSTEXT_WNDMENU); RegKey(VK_F10, false, false, true, ID_TRANSTEXT_WNDTEXT); // 클립보드 감시/후커 직접 감시 RegKey(VK_SCROLL, false, false, false, ID_CLIPBOARD_SWITCH, true); RegKey(VK_OEM_5, true, true, false, ID_HOOKER_MONITOR, true); return true; }