Code::Blocks  SVN r11506
Public Member Functions | List of all members
cbProjectManagerUI Class Referenceabstract

#include <projectmanager.h>

Inheritance diagram for cbProjectManagerUI:
Collaboration diagram for cbProjectManagerUI:

Public Member Functions

virtual ~cbProjectManagerUI ()
 
virtual cbAuiNotebookGetNotebook ()=0
 
virtual cbTreeCtrlGetTree ()=0
 Retrieve a pointer to the project manager's tree (GUI). More...
 
virtual void RebuildTree ()=0
 Rebuild the project manager's tree. More...
 
virtual void FreezeTree ()=0
 Stop the tree control from updating. More...
 
virtual void UnfreezeTree (bool force=false)=0
 Le the tree control be updated again. More...
 
virtual wxTreeItemId GetTreeSelection ()=0
 Get the selection of the project manager's tree (GUI). More...
 
virtual void ShowFileInTree (ProjectFile &projectFile)=0
 
virtual void UpdateActiveProject (cbProject *oldProject, cbProject *newProject, bool refresh)=0
 
virtual void RemoveProject (cbProject *project)=0
 
virtual void BeginLoadingWorkspace ()=0
 
virtual void CloseWorkspace ()=0
 
virtual void FinishLoadingProject (cbProject *project, bool newAddition, FilesGroupsAndMasks *fileGroups)=0
 
virtual void FinishLoadingWorkspace (cbProject *activeProject, const wxString &workspaceTitle)=0
 
virtual bool QueryCloseAllProjects ()=0
 Checks whether all projects are saved. More...
 
virtual bool QueryCloseProject (cbProject *proj, bool dontsavefiles=false)=0
 Checks whether project is saved. More...
 
virtual bool QueryCloseWorkspace ()=0
 Asks user to save the workspace, projects and files (Yes/No/cancel). More...
 
virtual int AskForBuildTargetIndex (cbProject *project=nullptr)=0
 Utility function. More...
 
virtual wxArrayInt AskForMultiBuildTargetIndex (cbProject *project=nullptr)=0
 Utility function. More...
 
virtual void ConfigureProjectDependencies (cbProject *base=nullptr)=0
 Displays a dialog to setup project dependencies. More...
 
virtual void SwitchToProjectsPage ()=0
 Switches the management's notebook to the Projects tab. More...
 

Detailed Description

Definition at line 35 of file projectmanager.h.

Constructor & Destructor Documentation

◆ ~cbProjectManagerUI()

virtual cbProjectManagerUI::~cbProjectManagerUI ( )
inlinevirtual

Definition at line 38 of file projectmanager.h.

Member Function Documentation

◆ AskForBuildTargetIndex()

virtual int cbProjectManagerUI::AskForBuildTargetIndex ( cbProject project = nullptr)
pure virtual

Utility function.

Displays a single selection list of a project's build targets to choose from.

Parameters
projectThe project to use. If NULL, the active project is used.
Returns
The selected build target's index, or -1 if no build target was selected.

Implemented in NullProjectManagerUI, and ProjectManagerUI.

◆ AskForMultiBuildTargetIndex()

virtual wxArrayInt cbProjectManagerUI::AskForMultiBuildTargetIndex ( cbProject project = nullptr)
pure virtual

Utility function.

Displays a multiple selection list of a project's build targets to choose from.

Parameters
projectThe project to use. If NULL, the active project is used.
Returns
An integer array containing the selected build targets indices. This array will be empty if no build targets were selected.

Implemented in NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectManager::DoAddFileToProject().

◆ BeginLoadingWorkspace()

virtual void cbProjectManagerUI::BeginLoadingWorkspace ( )
pure virtual

◆ CloseWorkspace()

virtual void cbProjectManagerUI::CloseWorkspace ( )
pure virtual

◆ ConfigureProjectDependencies()

virtual void cbProjectManagerUI::ConfigureProjectDependencies ( cbProject base = nullptr)
pure virtual

Displays a dialog to setup project dependencies.

Parameters
baseThe project to setup its dependencies. Can be NULL (default) because there's a project selection combo in the dialog.

Implemented in NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectOptionsDlg::OnProjectDepsClick().

◆ FinishLoadingProject()

virtual void cbProjectManagerUI::FinishLoadingProject ( cbProject project,
bool  newAddition,
FilesGroupsAndMasks fileGroups 
)
pure virtual

◆ FinishLoadingWorkspace()

virtual void cbProjectManagerUI::FinishLoadingWorkspace ( cbProject activeProject,
const wxString workspaceTitle 
)
pure virtual

◆ FreezeTree()

virtual void cbProjectManagerUI::FreezeTree ( )
pure virtual

Stop the tree control from updating.

Note
This operation is accumulative. This means you have to call UnfreezeTree() as many times as you 've called FreezeTree() for the tree control to un-freeze (except if you call UnfreezeTree(true)).

Implemented in BatchProjectManagerUI, NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectManager::CloseAllProjects(), ProjectManager::ReloadProject(), and ProjectManager::SaveAllProjects().

◆ GetNotebook()

virtual cbAuiNotebook* cbProjectManagerUI::GetNotebook ( )
pure virtual

◆ GetTree()

virtual cbTreeCtrl* cbProjectManagerUI::GetTree ( )
pure virtual

◆ GetTreeSelection()

virtual wxTreeItemId cbProjectManagerUI::GetTreeSelection ( )
pure virtual

Get the selection of the project manager's tree (GUI).

This must be used instead of tree->GetSelection() because the tree has the wxTR_MULTIPLE style. This usually returns the first item in the selection list, but if there is a right-click popup menu then the user may have selected several items and right-clicked on one, so return the right-click item instead. of the first

Returns
A wxTreeItemId of the selected tree item.

Implemented in BatchProjectManagerUI, NullProjectManagerUI, and ProjectManagerUI.

Referenced by CompilerGCC::DoSwitchProjectTemporarily(), CompilerGCC::OnProjectCompilerOptions(), CodeCompletion::OnSelectedFileReparse(), and NativeParser::ReparseSelectedProject().

◆ QueryCloseAllProjects()

virtual bool cbProjectManagerUI::QueryCloseAllProjects ( )
pure virtual

Checks whether all projects are saved.

If not, asks the user to save and saves accordingly.

Returns
False if the user pressed cancel. Note: calls QueryCloseProject for all projects.

Implemented in BatchProjectManagerUI, NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectManager::CloseAllProjects().

◆ QueryCloseProject()

virtual bool cbProjectManagerUI::QueryCloseProject ( cbProject proj,
bool  dontsavefiles = false 
)
pure virtual

Checks whether project is saved.

If not, asks the user to save and saves accordingly.

Returns
False if the user pressed cancel. Note: By default this asks the user if he should save any unmodified files in the project.

Implemented in ProjectManagerUI.

Referenced by ProjectManager::CloseProject().

◆ QueryCloseWorkspace()

virtual bool cbProjectManagerUI::QueryCloseWorkspace ( )
pure virtual

Asks user to save the workspace, projects and files (Yes/No/cancel).

If user pressed Yes, it saves accordingly.

Returns
False if the user pressed cancel; true otherwise. After this function is called and returns true, it is safe to close the workspace, all files and projects without asking the user later.

Implemented in BatchProjectManagerUI, NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectManager::CloseWorkspace().

◆ RebuildTree()

virtual void cbProjectManagerUI::RebuildTree ( )
pure virtual

◆ RemoveProject()

virtual void cbProjectManagerUI::RemoveProject ( cbProject project)
pure virtual

Implemented in ProjectManagerUI.

Referenced by ProjectManager::CloseProject().

◆ ShowFileInTree()

virtual void cbProjectManagerUI::ShowFileInTree ( ProjectFile projectFile)
pure virtual

◆ SwitchToProjectsPage()

virtual void cbProjectManagerUI::SwitchToProjectsPage ( )
pure virtual

Switches the management's notebook to the Projects tab.

Implemented in BatchProjectManagerUI, NullProjectManagerUI, and ProjectManagerUI.

Referenced by cbEditor::OnContextMenuEntry(), and EditorManager::OnShowFileInTree().

◆ UnfreezeTree()

virtual void cbProjectManagerUI::UnfreezeTree ( bool  force = false)
pure virtual

Le the tree control be updated again.

Parameters
forceIf true the tree control is forced to un-freeze. Else it depends on freeze-unfreeze balance (see note).
Note
This operation is accumulative. This means you have to call UnfreezeTree() as many times as you 've called FreezeTree() for the tree control to un-freeze (except if you call UnfreezeTree(true)).

Implemented in NullProjectManagerUI, and ProjectManagerUI.

Referenced by ProjectManager::CloseAllProjects(), ProjectManager::ReloadProject(), and ProjectManager::SaveAllProjects().

◆ UpdateActiveProject()

virtual void cbProjectManagerUI::UpdateActiveProject ( cbProject oldProject,
cbProject newProject,
bool  refresh 
)
pure virtual

Implemented in ProjectManagerUI.

Referenced by ProjectManager::SetProject().


The documentation for this class was generated from the following file: