r609: *** empty log message ***
[ctsim.git] / src / backgroundmgr.h
index 90bbf147525182765ccd057b2b161573be394a16..a900f72941b1476b3582115f873e4718de68dcf6 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2001 Kevin Rosenberg
 **
-**  $Id: backgroundmgr.h,v 1.4 2001/02/23 18:56:56 kevin Exp $
+**  $Id: backgroundmgr.h,v 1.8 2001/03/05 20:29:23 kevin Exp $
 **
 **  This program is free software; you can redistribute it and/or modify
 **  it under the terms of the GNU General Public License (version 2) as
 
 #include <vector>
 
-#if defined(HAVE_CONFIG_H)
-#include "config.h"
-#endif
+#ifdef HAVE_WXTHREADS
 
 class BackgroundManagerCanvas;
 
 #if CTSIM_MDI
 //class BackgroundManager : public wxMDIChildFrame
-//#else
-class BackgroundManager : public wxMiniFrame
 #endif
+class BackgroundManager : public wxMiniFrame
 {
 private:
   DECLARE_DYNAMIC_CLASS(BackgroundManager)
@@ -68,33 +65,39 @@ private:
   typedef std::vector<std::string*> StringContainer;
   typedef std::vector<int> PositionContainer;
   typedef std::vector<wxStaticText*>  LabelContainer;
+  typedef std::vector<wxButton*> ButtonContainer;
   TaskContainer m_vecpBackgroundTasks;
   GaugeContainer m_vecpGauges;
   StringContainer m_vecpNames;
   PositionContainer m_vecpPositions;
   LabelContainer m_vecpLabels;
+  ButtonContainer m_vecpCancelButtons;
   wxSize m_sizeGauge;
   wxSize m_sizeLabel;
   wxSize m_sizeCell;
   wxSize m_sizeBorder;
+  wxSize m_sizeCellSpacing;
+  wxSize m_sizeButton;
 
   void resizeWindow();
+  wxGauge* lookupGauge(BackgroundSupervisor* pTask);
 
 public:
   BackgroundManager ();
 
-  wxGauge* addTask (BackgroundSupervisor* pTask, int iNumUnits, const char* const pszTaskName);
-  void taskDone (BackgroundSupervisor* pTask);
-  bool isCancelling (BackgroundSupervisor* pTask);
-
   TaskContainer& getTasks() { return m_vecpBackgroundTasks;}
   GaugeContainer& getGauges() { return m_vecpGauges;}
   StringContainer& getNames() { return m_vecpNames;}
   PositionContainer& getPositions() { return m_vecpPositions;}
   LabelContainer& getLabels() { return m_vecpLabels;}
+  ButtonContainer& getCancelButtons() { return m_vecpCancelButtons;}
 
+  void OnAddTask (wxCommandEvent& event);
+  void OnRemoveTask (wxCommandEvent& event);
+  void OnUnitTick (wxCommandEvent& event);
   void OnCloseWindow(wxCloseEvent& event);
-  
+  void OnCancelButton(wxCommandEvent& event);
+
   DECLARE_EVENT_TABLE()
 };
 
@@ -106,12 +109,13 @@ private:
 
 public:
   BackgroundManagerCanvas (BackgroundManager* pBkgdMgr = NULL);
-
+#if 0
   void OnPaint (wxPaintEvent& event);
-
+#endif
   DECLARE_EVENT_TABLE()
 };
 
+#endif // HAVE_WXTHREADS
 
 #endif // _BACKGROUNDMGR_H