** This is part of the CTSim program
** Copyright (C) 1983-2001 Kevin Rosenberg
**
-** $Id: backgroundmgr.cpp,v 1.12 2001/03/05 20:29:23 kevin Exp $
+** $Id: backgroundmgr.cpp,v 1.13 2001/03/09 02:40:17 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
EVT_COMMAND_RANGE(0, 1000, wxEVT_COMMAND_BUTTON_CLICKED, BackgroundManager::OnCancelButton)
END_EVENT_TABLE()
+
BackgroundManager::BackgroundManager ()
- : wxMiniFrame (theApp->getMainFrame(), -1, _T("Background Tasks"), wxPoint(0,0), wxSize(210, 50)) //, wxTHICK_FRAME)
+ : wxMiniFrame (theApp->getMainFrame(), -1, _T("Background Tasks"), wxPoint(0,0), wxSize(210, 50))
{
m_iNumTasks = 0;
m_pCanvas = new BackgroundManagerCanvas (this);
int iNumTasks = m_vecpBackgroundTasks.size();
std::vector<bool> vecPositionUsed (iNumTasks);
int i;
- for (i = 0; i < iNumTasks; i++)
- vecPositionUsed[i] = false;
-
for (i = 0; i < iNumTasks; i++) {
int iPosUsed = m_vecpPositions[i];
if (iPosUsed < iNumTasks)
vecPositionUsed[iPosUsed] = true;
+ else
+ vecPositionUsed[i] = false;
}
int iFirstUnusedPos = iNumTasks; // default is just past current number of tasks
wxGauge* pGauge = new wxGauge (m_pCanvas, -1, iNumUnits, posGauge, m_sizeGauge);
wxStaticText* pLabel = new wxStaticText (m_pCanvas, -1, pszTaskName, posLabel, m_sizeLabel);
// wxPoint posButton (m_sizeBorder.x + m_sizeGauge.x + m_sizeLabel.x, m_sizeBorder.y + iFirstUnusedPos * m_sizeCell.y);
-// wxButton* pCancelButton = new wxButton (m_pCanvas, iFirstUnusedPos, _T("Cancel"), posButton, m_sizeButton, wxBU_LEFT);
+ // wxButton* pCancelButton = new wxButton (m_pCanvas, iFirstUnusedPos, _T("Cancel"), posButton, m_sizeButton, wxBU_LEFT);
+ std::string* pstrTaskName = new std::string (pszTaskName);
m_vecpBackgroundTasks.push_back (pTask);
m_vecpGauges.push_back (pGauge);
- m_vecpNames.push_back (new std::string (pszTaskName));
+ m_vecpNames.push_back (pstrTaskName);
m_vecpPositions.push_back (iFirstUnusedPos);
m_vecpLabels.push_back (pLabel);
//m_vecpCancelButtons.push_back (pCancelButton);
//ButtonContainer::iterator iCancelButton = m_vecpCancelButtons.begin();
for (TaskContainer::iterator iTask = m_vecpBackgroundTasks.begin(); iTask != m_vecpBackgroundTasks.end(); iTask++) {
if (*iTask == pTask) {
- delete *iName;
- delete *iGauge;
- delete *iLabel;
- //delete *iCancelButton;
m_vecpBackgroundTasks.erase (iTask);
m_vecpGauges.erase (iGauge);
m_vecpNames.erase (iName);
m_vecpPositions.erase (iPosition);
m_vecpLabels.erase (iLabel);
//m_vecpCancelButtons.erase (iCancelButton);
+ delete *iName;
+ delete *iGauge;
+ delete *iLabel;
+ //delete *iCancelButton;
m_iNumTasks--;
break;
}
{
}
-#if 0
-void
-BackgroundManagerCanvas::OnPaint (wxPaintEvent& event)
-{
- wxPaintDC dc (this);
-// dc.DrawLine (0, 0, 30, 30);
-// dc.DrawLine (30,0, 0, 30);
-}
-#endif
#endif // HAVE_WXTHREADS