#include "wxCDMCMakeListsDescriptionPanel.h"
#include "wxCDMFolderDescriptionPanel.h"
#include "wxCDMFileDescriptionPanel.h"
+#include "wxCDMPackageManagerPanel.h"
#include "wxCDMProjectActionsPanel.h"
#include "wxCDMNewProjectDialog.h"
return TRUE;
}
+modelCDMMain* wxCDMMainFrame::GetModel() const
+{
+ return this->model;
+}
+
void wxCDMMainFrame::RefreshProject()
{
std::string* result;
void wxCDMMainFrame::OnTreeSelectionChanged(wxTreeEvent& event)
{
std::cout << "New Tree Selection" << std::endl;
+
+ if(event.GetId() != 0)
+ {
+ event.Skip();
+ }
+
+
//get selected element
wxTreeItemId elementId = event.GetItem();
void wxCDMMainFrame::OnCreationComplete(wxCommandEvent& event)
{
- std::cout << "inMainFrame " << event.GetInt() << std::endl;
- this->tree_Projects->SelectItem(event.GetInt());
+ std::cout << "inMainFrame id: " << event.GetId() << ", tree element: "<< event.GetInt() << std::endl;
+ switch(event.GetId() != 0)
+ {
+ case 0:
+ this->tree_Projects->SelectItem(event.GetInt(), false);
+ this->tree_Projects->SelectItem(event.GetInt(), true);
+ break;
+ case 1:
+ wxPanel* description = NULL;
+ if(event.GetString() == wxT("manage_packages"))
+ {
+ description = new wxCDMPackageManagerPanel(
+ this,
+ this->model->GetProject(),
+ ID_WINDOW_PROPERTIES,
+ wxT("Description Panel"),
+ wxDefaultPosition,
+ wxSize(600, 400),
+ 0
+ );
+ }
+ else if(event.GetString() == wxT("manage_libraries"))
+ {
+ description = new wxCDMLibDescriptionPanel(
+ this,
+ this->model->GetProject()->GetLib(),
+ ID_WINDOW_PROPERTIES,
+ wxT("Description Panel"),
+ wxDefaultPosition,
+ wxSize(600, 400),
+ 0
+ );
+ }
+ else if(event.GetString() == wxT("manage_applications"))
+ {
+ description = new wxCDMAppliDescriptionPanel(
+ this,
+ this->model->GetProject()->GetAppli(),
+ ID_WINDOW_PROPERTIES,
+ wxT("Description Panel"),
+ wxDefaultPosition,
+ wxSize(600, 400),
+ 0
+ );
+ }
+
+ if(this->panel_Properties!= NULL)
+ this->panel_Properties->Hide();
+
+ auiManager.AddPane(description, wxAuiPaneInfo().Center().Name(wxT("panel_Properties")).Caption(wxT("Properties")).BestSize(600,400));
+ auiManager.Update();
+
+ //delete old view
+ if(this->panel_Properties!= NULL)
+ {
+ this->panel_Properties->Destroy();
+ auiManager.DetachPane(this->panel_Properties);
+ }
+ //set new view
+
+ this->panel_Properties = description;
+ auiManager.Update();
+ break;
+ }
event.Skip();
}