]> Creatis software - crea.git/blobdiff - lib/creaDevManagerLib/wxCDMMainDescriptionPanel.cpp
Feature #1711 CreaDevManager application implementation
[crea.git] / lib / creaDevManagerLib / wxCDMMainDescriptionPanel.cpp
index e50abba8d423605035c6d4040259cd4eac2654cc..41daf68640a7484c386aba72f6255635b0e75b87 100644 (file)
@@ -23,7 +23,7 @@
 #  The fact that you are presently reading this means that you have had
 #  knowledge of the CeCILL-B license and that you accept its terms.
 # ------------------------------------------------------------------------ 
-*/ 
+ */
 
 
 /*
  */
 
 #include "wxCDMMainDescriptionPanel.h"
+
+#include "wxCDMMainFrame.h"
+
+#include "wxCDMMainHelpDialog.h"
+
 #include "creaDevManagerIds.h"
-#include "images/Cicon64.xpm"
+#include "images/CIcon64.xpm"
+
+BEGIN_EVENT_TABLE(wxCDMMainDescriptionPanel, wxPanel)
+EVT_MENU(ID_MENU_NEW_PROJECT, wxCDMMainDescriptionPanel::OnBtnNewProject)
+EVT_MENU(ID_MENU_OPEN_PROJECT, wxCDMMainDescriptionPanel::OnBtnOpenProject)
 
+END_EVENT_TABLE()
 
 wxCDMMainDescriptionPanel::wxCDMMainDescriptionPanel(
     wxWindow* parent,
@@ -64,6 +74,10 @@ bool wxCDMMainDescriptionPanel::Create(
 )
 {
   wxPanel::Create(parent, id, pos, size, style);
+  //to scroll
+  this->FitInside(); // ask the sizer about the needed size
+  this->SetScrollRate(5, 5);
+
   CreateControls();
   return TRUE;
 }
@@ -72,37 +86,57 @@ void wxCDMMainDescriptionPanel::CreateControls()
 {
   wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL);
 
-  //Welcome
-  sizer->Add(new wxStaticText(this, -1, _("Welcome")),0, wxALIGN_CENTER, 0);
-
-  //Image
-  sizer->Add(new wxStaticBitmap(this, -1, wxBitmap(Cicon)),0, wxALIGN_CENTER, 0);
-
-  //Crea Development Manager
-  sizer->Add(new wxStaticText(this, -1, _("Crea Development Manager")),0, wxALIGN_CENTER, 0);
+  //Header
+  wxBoxSizer* headerSizer = new wxBoxSizer(wxHORIZONTAL);
+  {
+    //Image
+    headerSizer->Add(new wxStaticBitmap(this, -1, wxBitmap(CIcon64)),0, wxALIGN_CENTER, 0);
+    wxBoxSizer* textSizer = new wxBoxSizer(wxVERTICAL);
+    //Title
+    textSizer->Add(new wxStaticText(this, -1, _("Welcome")),0, wxALIGN_LEFT, 0);
+    //Application Name
+    textSizer->Add(new wxStaticText(this, -1, crea::std2wx("Crea Development Manager")),0, wxALIGN_LEFT, 0);
+    headerSizer->Add(textSizer, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
+  }
+  sizer->Add(headerSizer, 0, wxALIGN_CENTER | wxUP, 10);
 
   //Actions
-  wxStaticBox* actionsBox = new wxStaticBox(this, -1, _T("&Actions"));
-  wxStaticBoxSizer* actionsBoxInnerSizer = new wxStaticBoxSizer(actionsBox, wxVERTICAL);
-  sizer -> Add(actionsBoxInnerSizer, 2, wxEXPAND | wxALL, 20);
-
-  actionsBoxInnerSizer->Add(new wxButton(this, ID_BUTTON_NEWPROJECT, _T("New Project")), 0, wxRIGHT | wxLEFT, 20);
-  actionsBoxInnerSizer->Add(new wxButton(this, ID_BUTTON_OPENPROJECT, _T("Open Project")), 0, wxRIGHT | wxLEFT, 20);
+  wxStaticBoxSizer* actionsBox = new wxStaticBoxSizer(wxVERTICAL, this, wxT("&Actions"));
+  actionsBox->GetStaticBox()->SetToolTip(wxT("Create a new crea project or open an existing one selection any of the available actions."));
+  wxPanel* actionsPanel = new wxPanel(this);
+  wxBoxSizer* actionsPanelSizer = new wxBoxSizer(wxHORIZONTAL);
+
+  wxButton* newProjectbt = new wxButton(actionsPanel, ID_BUTTON_NEWPROJECT, _T("New Project"));
+  newProjectbt->SetToolTip(wxT("Create a new crea project."));
+  actionsPanelSizer->Add(newProjectbt, 0, wxRIGHT | wxLEFT, 20);
+  wxButton* openProjectbt = new wxButton(actionsPanel, ID_BUTTON_OPENPROJECT, _T("Open Project (source/binaries)"));
+  openProjectbt->SetToolTip(wxT("Open an existing crea project from its binaries or its sources."));
+  actionsPanelSizer->Add(openProjectbt, 0, wxRIGHT | wxLEFT, 20);
+
+  actionsPanel->SetSizer(actionsPanelSizer);
+  actionsPanelSizer->Fit(actionsPanel);
+  actionsBox->Add(actionsPanel, 0, wxALIGN_CENTER | wxALL, 10);
+  sizer -> Add(actionsBox, 0, wxEXPAND | wxALL, 20);
 
   //Asign sizer
   sizer->SetSizeHints(this);
   SetSizer(sizer);
+
+  if(((wxCDMMainFrame*)this->GetParent())->isHelp())
+    {
+      wxDialog* helpDialog = new wxCDMMainHelpDialog(this->GetParent(), this, wxID_ANY);
+      helpDialog->Show(true);
+    }
+
 }
 
 void wxCDMMainDescriptionPanel::OnBtnNewProject(wxCommandEvent& event)
 {
-  event.ResumePropagation(1);
   event.Skip();
 }
 
 void wxCDMMainDescriptionPanel::OnBtnOpenProject(wxCommandEvent& event)
 {
-  event.ResumePropagation(1);
   event.Skip();
 }