Advertisement
C0BRA

Consor test

May 17th, 2013
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.46 KB | None | 0 0
  1. #include "MainForm.hpp"
  2.  
  3. #include <Consor/Util/Time.hpp>
  4. #include <Consor/Util/Prompts.hpp>
  5. #include <Consor/WindowSystem.hpp>
  6.  
  7. using namespace Consor;
  8.  
  9. #include "Configor.hpp"
  10. #include "OptionsForm.hpp"
  11. #include "LocateProductForm.hpp"
  12. #include "DisplayProductInformation.hpp"
  13.  
  14. CMainForm::CMainForm(IConfigorNode& Options) :
  15.     m_MainFlow(CFlowContainer::FlowAxis::Vertical, 0.0),
  16.     CForm(m_MainFlow, "Stock Control")
  17. {
  18.     m_Closed = false;
  19.     m_pOptions = &Options;
  20.     Initalize();
  21. }
  22.  
  23. CMainForm::~CMainForm()
  24. {
  25. }
  26.  
  27. void CMainForm::Initalize()
  28. {
  29.     const double buttonwidth = 18;
  30.  
  31.     m_CreateItem.SetText("Create Item");
  32.     m_Search.SetText("Search");
  33.     m_ProcessOrder.SetText("Process Order");
  34.     m_EditStock.SetText("Edit Stock");
  35.     m_Options.SetText("Options");
  36.     m_Exit.SetText("Exit");
  37.  
  38.     m_MainFlow.AddControl(m_CreateItem, buttonwidth);
  39.     m_MainFlow.AddControl(m_Search, buttonwidth);
  40.     m_MainFlow.AddControl(m_ProcessOrder, buttonwidth);
  41.     m_MainFlow.AddControl(m_EditStock, buttonwidth);
  42.     m_MainFlow.AddControl(m_Options, buttonwidth);
  43.     m_MainFlow.AddControl(m_Exit, buttonwidth);
  44.  
  45.     m_CreateItem.Click += std::bind(&CMainForm::CreateItem_Click, this); // calling xxxx_Click without ECX (this) set will probably break something, so bind it to this
  46.     m_Search.Click += std::bind(&CMainForm::Search_Click, this);
  47.     m_ProcessOrder.Click += std::bind(&CMainForm::ProcessOrder_Click, this);
  48.     m_EditStock.Click += std::bind(&CMainForm::EditStock_Click, this);
  49.     m_Options.Click += std::bind(&CMainForm::Options_Click, this);
  50.     m_Exit.Click += std::bind(&CMainForm::Exit_Click, this);
  51. }
  52.  
  53. void CMainForm::CreateItem_Click()
  54. {
  55.     IConfigorNode* pNode = new CConfigorNode(&(*m_pOptions)["Stock"], "");
  56.  
  57.     CDisplayProductInformationForm(*pNode, (*m_pOptions)["Show Items"], true).Show();
  58. }
  59.  
  60. void CMainForm::Search_Click()
  61. {
  62.     CLocateProductForm locator = CLocateProductForm((*m_pOptions)["Stock"]);
  63.    
  64.     if(locator.Show() != FormResult::OK)
  65.         return;
  66.  
  67.     CDisplayProductInformationForm(*locator.Product, (*m_pOptions)["Options"]).Show();
  68. }
  69.  
  70. void CMainForm::ProcessOrder_Click()
  71. {
  72. }
  73.  
  74. void CMainForm::EditStock_Click()
  75. {
  76.     CLocateProductForm locator = CLocateProductForm((*m_pOptions)["Stock"]);
  77.    
  78.     if(locator.Show() != FormResult::OK)
  79.         return;
  80.  
  81.     CDisplayProductInformationForm(*locator.Product, (*m_pOptions)["Options"], true).Show();
  82. }
  83.  
  84. void CMainForm::Options_Click()
  85. {
  86.     COptionsForm((*m_pOptions)["Options"]).Show();
  87. }
  88.  
  89. void CMainForm::Exit_Click()
  90. {
  91.     this->Close();
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement