PHPProjectSetupDlg::PHPProjectSetupDlg(wxWindow* parent) : PHPProjectSetupDlgBase(parent) { PHPConfigurationData conf; conf.Load(); m_filePickerPhpExe->SetPath(conf.GetPhpExe()); WindowAttrManager::Load(this, "PHPProjectSetupDlgBase"); }
void PhpPlugin::FinalizeStartup() { // Create the debugger windows (hidden) wxWindow* parent = m_mgr->GetDockingManager()->GetManagedWindow(); m_debuggerPane = new PHPDebugPane(parent); m_mgr->GetDockingManager()->AddPane(m_debuggerPane, wxAuiPaneInfo() .Name("XDebug") .Caption("Call Stack & Breakpoints") .Hide() .CloseButton() .MaximizeButton() .Bottom() .Position(3)); m_xdebugLocalsView = new LocalsView(parent); m_mgr->GetDockingManager()->AddPane( m_xdebugLocalsView, wxAuiPaneInfo().Name("XDebugLocals").Caption("Locals").Hide().CloseButton().MaximizeButton().Bottom()); m_xdebugEvalPane = new EvalPane(parent); m_mgr->GetDockingManager()->AddPane( m_xdebugEvalPane, wxAuiPaneInfo().Name("XDebugEval").Caption("PHP").Hide().CloseButton().MaximizeButton().Bottom().Position(2)); // Check to see if the have a PHP executable setup // if not - update it PHPConfigurationData data; data.Load(); PHPLocator locator; if(locator.Locate()) { // update a PHP executable in the settings if(data.GetPhpExe().IsEmpty()) { data.SetPhpExe(locator.GetPhpExe().GetFullPath()); } data.Save(); } }
void PhpPlugin::DoOpenWorkspace(const wxString& filename, bool createIfMissing, bool createProjectFromSources) { // notify codelite to close the currently opened workspace wxCommandEvent eventClose(wxEVT_COMMAND_MENU_SELECTED, XRCID("close_workspace")); eventClose.SetEventObject(FRAME); FRAME->GetEventHandler()->ProcessEvent(eventClose); // Open the PHP workspace if(!PHPWorkspace::Get()->Open(filename, m_workspaceView, createIfMissing)) { wxMessageBox(_("Failed to open workspace: corrupted workspace file"), wxT("CodeLite"), wxOK | wxICON_WARNING | wxCENTER, FRAME); return; } // Keep the old clang state before we disable it const TagsOptionsData& options = TagsManagerST::Get()->GetCtagsOptions(); m_clangOldFlag = (options.GetClangOptions() & CC_CLANG_ENABLED); m_mgr->EnableClangCodeCompletion(false); m_workspaceView->LoadWorkspaceView(); // Select the 'PHP' tab m_mgr->GetWorkspaceView()->SelectPage(PHPStrings::PHP_WORKSPACE_VIEW_LABEL); if(createProjectFromSources) { PHPConfigurationData conf; PHPProject::CreateData cd; conf.Load(); cd.importFilesUnderPath = true; cd.name = PHPWorkspace::Get()->GetWorkspaceName(); cd.phpExe = conf.GetPhpExe(); cd.path = PHPWorkspace::Get()->GetFilename().GetPath(); cd.projectType = PHPProjectSettingsData::kRunAsCLI; m_workspaceView->CallAfter(&PHPWorkspaceView::CreateNewProject, cd); } }