void CreateProgPage::onButtonClick( wxCommandEvent& event ) { if (event.GetId() == m_butCancel->GetId()) { //need to remove these so they dont cause any more wxEvents once this dies //other wise app crashes and god kills a kitten. if (m_pThread) { *m_pThread->getMcfProgressEvent() -= delegate(this, &CreateProgPage::onProgress); *m_pThread->getErrorEvent() -= delegate(this, &CreateProgPage::onError); *m_pThread->getCompleteStringEvent() -= delegate(this, &CreateProgPage::onComplete); m_pThread->stop(); } CreateMCFForm* temp = dynamic_cast<CreateMCFForm*>(GetParent()); if (temp) { temp->cancelPrompt(); temp->Close(); } } else if (event.GetId() == m_butPause->GetId()) { gcFrame* par = dynamic_cast<gcFrame*>(GetParent()); if (m_bThreadPaused) { m_butPause->SetLabel(Managers::GetString(L"#PAUSE")); if (par) par->setProgressState(gcFrame::P_NORMAL); } else { m_butPause->SetLabel(Managers::GetString(L"#RESUME")); if (par) par->setProgressState(gcFrame::P_PAUSED); } if (m_pThread) { if (m_bThreadPaused) m_pThread->unpause(); else m_pThread->pause(); m_bThreadPaused = !m_bThreadPaused; } } }
void CreateProgPage::onError(gcException& e) { gcFrame* par = dynamic_cast<gcFrame*>(GetParent()); if (par) par->setProgressState(gcFrame::P_ERROR); gcErrorBox(this, "#CF_ERRTITLE", "#CF_ERROR", e); CreateMCFForm* temp = dynamic_cast<CreateMCFForm*>(GetParent()); if (temp) temp->cancelPrompt(); GetParent()->Close(); }
void CreateProgPage::onComplete(gcString& path) { gcFrame* par = dynamic_cast<gcFrame*>(GetParent()); gcException eFailCrtMCF(ERR_BADPATH, "Failed to create MCF"); if (par) par->setProgressState(gcFrame::P_NONE); if (UTIL::FS::isValidFile(UTIL::FS::PathWithFile(path))) { CreateMCFForm* temp = dynamic_cast<CreateMCFForm*>(GetParent()); if (temp) temp->showOverView(path.c_str()); } else { onError(eFailCrtMCF); } }
void InternalLink::createMCF(DesuraId id) { UserCore::Item::ItemInfoI* item = GetUserCore()->getItemManager()->findItemInfo( id ); if (!GetUserCore()->isAdmin() && !item) { //cant upload show prompt gcMessageBox(g_pMainApp->getMainWindow(), Managers::GetString(L"#MF_NONDEV_ERROR"), Managers::GetString(L"#MF_PERMISSION_ERRTITLE")); return; } //create new create from CreateMCFForm* form = new CreateMCFForm(m_pParent); form->setInfo(id); form->onUploadTriggerEvent += delegate(this, &InternalLink::onUploadTrigger); form->Show(true); form->Raise(); form->run(); #ifdef NIX form->Raise(); #endif //m_wxCreateMCF_Form->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainForm::OnFrameClose ) ); m_vSubForms.push_back(form); }
void InternalLink::createMCF(DesuraId id) { gcTrace("Id: {0}", id); gcRefPtr<UserCore::Item::ItemInfoI> item = GetUserCore()->getItemManager()->findItemInfo( id ); if (!GetUserCore()->isAdmin() && !item) { //cant upload show prompt gcMessageBox(g_pMainApp->getMainWindow(), Managers::GetString(L"#MF_NONDEV_ERROR"), Managers::GetString(L"#MF_PERMISSION_ERRTITLE")); return; } //create new create from CreateMCFForm* form = new CreateMCFForm(m_pParent); form->setInfo(id); form->onUploadTriggerEvent += delegate(this, &InternalLink::onUploadTrigger); form->Show(true); form->Raise(); form->run(); #ifdef NIX form->Raise(); #endif m_vSubForms.push_back(form); }