BackgroundManager::OnUnitTick (wxCommandEvent& event)
{
int iUnits = event.GetInt();
-
+
BackgroundSupervisor* pSupervisor = reinterpret_cast<BackgroundSupervisor*>(event.GetClientData());
if (pSupervisor == NULL) {
sys_error (ERR_SEVERE, "Received NULL task [BackgroundManager::OnUnitTick]");
BackgroundManagerTask* pTask = lookupTask (pSupervisor);
if (pTask == NULL) {
- sys_error (ERR_SEVERE, "Error looking up task [BackgroundManager::OnUnitTick]");
- return;
+ sys_error (ERR_SEVERE, "Error looking up task [BackgroundManager::OnUnitTick]");
+ return;
}
pTask->gauge()->SetValue (iUnits);
}
BackgroundManager::OnAddTask (wxCommandEvent& event)
{
int iNumUnits = event.GetInt();
- const char* const pszTaskName = event.GetString().c_str();
+ const char* const pszTaskName = event.GetString().mb_str(wxConvUTF8);
BackgroundSupervisor* pSupervisor = reinterpret_cast<BackgroundSupervisor*>(event.GetClientData());
if (pSupervisor == NULL) {
sys_error (ERR_SEVERE, "Received NULL supervisor [BackgroundManager::OnAddTask]");
wxCriticalSectionLocker locker (m_criticalSection);
int iNumTasks = m_vecpTasks.size();
- std::vector<bool> vecPositionUsed (iNumTasks); //vector of used table positions
+ std::vector<bool> vecPositionUsed (iNumTasks); //vector of used table positions
for (int iP = 0; iP < iNumTasks; iP++)
vecPositionUsed[iP] = false;
iFirstUnusedPos = i;
break;
}
-
+
wxPoint posGauge (m_sizeBorder.x, m_sizeBorder.y + iFirstUnusedPos * m_sizeCell.y);
wxPoint posLabel (m_sizeBorder.x + m_sizeGauge.x, m_sizeBorder.y + iFirstUnusedPos * m_sizeCell.y);
wxPoint posButton (m_sizeBorder.x + m_sizeGauge.x + m_sizeLabel.x, m_sizeBorder.y + iFirstUnusedPos * m_sizeCell.y);
wxGauge* pGauge = new wxGauge (m_pCanvas, -1, iNumUnits, posGauge, m_sizeGauge);
- wxStaticText* pLabel = new wxStaticText (m_pCanvas, -1, pszTaskName, posLabel, m_sizeLabel);
+ wxStaticText* pLabel = new wxStaticText (m_pCanvas, -1, wxConvUTF8.cMB2WX(pszTaskName), posLabel, m_sizeLabel);
wxButton* pButton = new wxButton (m_pCanvas, s_iNextButtonID, _T("Cancel"), posButton, m_sizeButton, wxBU_LEFT);
- BackgroundManagerTask* pTask = new BackgroundManagerTask (pSupervisor, pszTaskName,
+ BackgroundManagerTask* pTask = new BackgroundManagerTask (pSupervisor, pszTaskName,
iFirstUnusedPos, pGauge, pLabel, pButton, s_iNextButtonID);
m_vecpTasks.push_back (pTask);
resizeWindow();
if (m_iNumTasks == 1) {
m_pCanvas->SetFocus();
- Show(true);
+ Show(true);
}
}
bool bFound = false;
for (TaskContainer::iterator iTask = m_vecpTasks.begin(); iTask != m_vecpTasks.end(); iTask++) {
if ((*iTask)->supervisor() == pSupervisor) {
- delete (*iTask)->gauge();
- delete (*iTask)->label();
- delete (*iTask)->button();
+ delete (*iTask)->gauge();
+ delete (*iTask)->label();
+ delete (*iTask)->button();
delete *iTask;
m_vecpTasks.erase (iTask);
m_iNumTasks--;
- bFound = true;
+ bFound = true;
break;
}
}
if (! bFound) {
- sys_error (ERR_SEVERE, "Unable to find supervisor [BackgroundManager::OnRemoveTask]");
+ sys_error (ERR_SEVERE, "Unable to find supervisor [BackgroundManager::OnRemoveTask]");
return;
}
pSupervisor->ackRemoveBackgroundManager();