bool TTTTab2::ProcessMessage(Long_t msg, Long_t param1, Long_t /*param2*/) { switch (GET_MSG(msg)) { case kC_COMMAND: switch (GET_SUBMSG(msg)) { case kCM_BUTTON: switch (param1) { case B_START_2_1: Startfunc_2_1(); break; case B_STOP_2_1: Stopfunc_2_1(); break; case B_START_2_2: Startfunc_2_2(); break; case B_STOP_2_2: Stopfunc_2_2(); break; } break; } break; } return true; }
Bool_t PMTMixed::ProcessMessageThread(Long_t msg, Long_t param1, Long_t /*param2*/) { switch (GET_MSG(msg)) { case kC_COMMAND: switch (GET_SUBMSG(msg)) { case kCM_BUTTON: switch (param1) { case 1: withMakingThread(); break; } break; } break; } return true; }
Bool_t PMTMixed::ProcessMessage(Long_t msg, Long_t param1, Long_t param2) { switch (GET_MSG(msg)) { case kC_COMMAND: switch (GET_SUBMSG(msg)) { case kCM_BUTTON: switch (param1) { case 0: withOutMakingThread(); break; } break; } break; } return RunProcessMessageThread(msg, param1, param2); }
Bool_t sis3316_flash::ProcessMessage(Long_t msg, Long_t parm1, Long_t c) { int return_code ; static const char *gDefTypes[] = { "binary files", "*.bin", "all files", "*", 0, 0 }; switch(GET_MSG(msg)) { case kC_COMMAND: switch(GET_SUBMSG(msg)) { case kCM_BUTTON: switch(parm1){ case BTN_VME_BROWSE: fiVME.fFileTypes = gDefTypes; new TGFileDialog(gClient->GetRoot(), this, kFDOpen, &fiVME); if(fiVME.fFilename){ fVMEImgPath->SetText(fiVME.fFilename); }else{ fVMEImgPath->SetText(""); } break; case BTN_VME_PROG: if(fiVME.fFilename != ""){ fBar_prog->SetBarColor(0x99ffff); // light blue ptr = this; return_code = gl_sis3316_adc1->update_firmware(fiVME.fFilename, 0, progressProgCallback); if(return_code != 0) { fBar_prog->SetBarColor(0xff6666); // light red fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } else { fBar_verify->SetBarColor(0x99ffff); // light blue return_code = gl_sis3316_adc1->verify_firmware(fiVME.fFilename, 0, progressVerifyCallback); if(return_code != 0) { fBar_verify->SetBarColor(0xff6666); fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } else { fBar_verify->SetBarColor(0x00ff00); // green fButReboot->ChangeBackground(this->green); reboot_prevent_flag = 0 ; } } } else { fBar_prog->SetBarColor(0xff6666); fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } break; case BTN_ADC1_BROWSE: fiADC1.fFileTypes = gDefTypes; new TGFileDialog(gClient->GetRoot(), this, kFDOpen, &fiADC1); if(fiADC1.fFilename){ fADC1ImgPath->SetText(fiADC1.fFilename); }else{ fADC1ImgPath->SetText(""); } break; case BTN_ADC_PROG: if(fiADC1.fFilename != ""){ fBar_prog->SetBarColor(0x99ffff); // light blue ptr = this; return_code = gl_sis3316_adc1->update_firmware(fiADC1.fFilename, 0x400000, progressProgCallback); if(return_code != 0) { fBar_prog->SetBarColor(0xff6666); // light red fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } else { fBar_verify->SetBarColor(0x99ffff); // light blue return_code = gl_sis3316_adc1->verify_firmware(fiADC1.fFilename, 0x400000, progressVerifyCallback); if(return_code != 0) { fBar_verify->SetBarColor(0xff6666); fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } else { fBar_verify->SetBarColor(0x00ff00); // green fButReboot->ChangeBackground(this->green); reboot_prevent_flag = 0 ; } } } else { fBar_prog->SetBarColor(0xff6666); fButReboot->ChangeBackground(this->red); reboot_prevent_flag = 1 ; } break; case BTN_REBOOT: if(reboot_prevent_flag == 0) { gl_sis3316_adc1->register_write(0x10, 0x80000000); // kill other "Interface Grant" gl_sis3316_adc1->register_write(0x10, 0x1); // set own "Interface Grant" gl_sis3316_adc1->register_write(0x0, 0x8000); // reboot FPGAs ; switch SW80-7 has to be on (Watchdog) } break; } } // break; #ifdef NOT_IMPLEMENTED case kCM_CHECKBUTTON: if(fChkADCImgSelect->GetState() == kButtonUp){ fGrpADC->HideFrame(fHorADC2); fGrpADC->HideFrame(fHorADC3); fGrpADC->HideFrame(fHorADC4); fGrpADC->HideFrame(fLblADC2Img); fGrpADC->HideFrame(fLblADC3Img); fGrpADC->HideFrame(fLblADC4Img); }else{ fGrpADC->ShowFrame(fHorADC2); fGrpADC->ShowFrame(fHorADC3); fGrpADC->ShowFrame(fHorADC4); fGrpADC->ShowFrame(fLblADC2Img); fGrpADC->ShowFrame(fLblADC3Img); fGrpADC->ShowFrame(fLblADC4Img); } break; #endif } return kTRUE; }
//______________________________________________________________________________ Bool_t KVFileDialog::ProcessMessage(Long_t msg, Long_t parm1, Long_t) { // Process messages generated by the user input in the file dialog. if (!fFc->GetDisplayStat()) return kTRUE; // Cancel button was pressed TGTreeLBEntry *e; TGTextLBEntry *te; TGFileItem *f; void *p = 0; TString txt; TString sdir = gSystem->WorkingDirectory(); switch (GET_MSG(msg)) { case kC_COMMAND: switch (GET_SUBMSG(msg)) { case kCM_BUTTON: switch (parm1) { case kIDF_OK: // same code as under kTE_ENTER if ((fDlgMode!=kKVFDDirectory) && (fTbfname->GetTextLength() == 0)) { txt = "Please provide file name or use \"Cancel\""; new TGMsgBox(fClient->GetRoot(), GetMainFrame(), "Missing File Name", txt, kMBIconExclamation, kMBOk); return kTRUE; } else if (!gSystem->AccessPathName(fTbfname->GetString(), kFileExists) && !strcmp(fOk->GetTitle(), "Save") && (!(fCheckB->GetState() == kButtonDown))) { Int_t ret; txt = TString::Format("File name %s already exists, OK to overwrite it?", fTbfname->GetString()); new TGMsgBox(fClient->GetRoot(), GetMainFrame(), "File Name Exist", txt.Data(), kMBIconExclamation, kMBYes | kMBNo, &ret); if (ret == kMBNo) return kTRUE; } if (fFileInfo->fMultipleSelection) { if (fFileInfo->fFilename) delete [] fFileInfo->fFilename; fFileInfo->fFilename = 0; } else { if (fFileInfo->fFilename) delete [] fFileInfo->fFilename; if (gSystem->IsAbsoluteFileName(fTbfname->GetString())) fFileInfo->fFilename = StrDup(fTbfname->GetString()); else fFileInfo->fFilename = gSystem->ConcatFileName(fFc->GetDirectory(), fTbfname->GetString()); fFileInfo->fFilename = StrDup(gSystem->UnixPathName(gSystem->ExpandPathName(fFileInfo->fFilename))); } if (fCheckB && (fCheckB->GetState() == kButtonDown)) fFileInfo->fOverwrite = kTRUE; else fFileInfo->fOverwrite = kFALSE; DeleteWindow(); break; case kIDF_CANCEL: if (fFileInfo->fFilename) delete [] fFileInfo->fFilename; fFileInfo->fFilename = 0; if (fFc->GetDisplayStat()) fFc->SetDisplayStat(kFALSE); if (fFileInfo->fFileNamesList != 0) { fFileInfo->fFileNamesList->Delete(); fFileInfo->fFileNamesList = 0; } DeleteWindow(); return kTRUE; //no need to redraw fFc break; case kIDF_CDUP: fFc->ChangeDirectory(".."); fTreeLB->Update(fFc->GetDirectory()); if (fFileInfo->fIniDir) delete [] fFileInfo->fIniDir; fFileInfo->fIniDir = StrDup(fFc->GetDirectory()); if (strcmp(gSystem->WorkingDirectory(),fFc->GetDirectory())) { gSystem->cd(fFc->GetDirectory()); } break; case kIDF_NEW_FOLDER: { char answer[128]; strlcpy(answer, "(empty)", sizeof(answer)); new TGInputDialog(gClient->GetRoot(), GetMainFrame(), "Enter directory name:", answer/*"(empty)"*/, answer); while ( strcmp(answer, "(empty)") == 0 ) { new TGMsgBox(gClient->GetRoot(), GetMainFrame(), "Error", "Please enter a valid directory name.", kMBIconStop, kMBOk); new TGInputDialog(gClient->GetRoot(), GetMainFrame(), "Enter directory name:", answer, answer); } if ( strcmp(answer, "") == 0 ) // Cancel button was pressed break; if (strcmp(gSystem->WorkingDirectory(),fFc->GetDirectory())) { gSystem->cd(fFc->GetDirectory()); } if ( gSystem->MakeDirectory(answer) != 0 ) new TGMsgBox(gClient->GetRoot(), GetMainFrame(), "Error", TString::Format("Directory name \'%s\' already exists!", answer), kMBIconStop, kMBOk); else { fFc->DisplayDirectory(); } gSystem->ChangeDirectory(sdir.Data()); break; } case kIDF_LIST: fFv->SetViewMode(kLVList); fDetails->SetState(kButtonUp); break; case kIDF_DETAILS: fFv->SetViewMode(kLVDetails); fList->SetState(kButtonUp); break; } break; case kCM_COMBOBOX: switch (parm1) { case kIDF_FSLB: e = (TGTreeLBEntry *) fTreeLB->GetSelectedEntry(); if (e) { fFc->ChangeDirectory(e->GetPath()->GetString()); fTreeLB->Update(fFc->GetDirectory()); if (fFileInfo->fIniDir) delete [] fFileInfo->fIniDir; fFileInfo->fIniDir = StrDup(fFc->GetDirectory()); if (strcmp(gSystem->WorkingDirectory(),fFc->GetDirectory())) { gSystem->cd(fFc->GetDirectory()); } } break; case kIDF_FTYPESLB: te = (TGTextLBEntry *) fTypes->GetSelectedEntry(); if (te) { //fTbfname->Clear(); //fTbfname->AddText(0, fFileInfo->fFileTypes[te->EntryId()+1]); fFileInfo->fFileTypeIdx = te->EntryId(); fFc->SetFilter(fFileInfo->fFileTypes[fFileInfo->fFileTypeIdx+1]); fFc->DisplayDirectory(); fClient->NeedRedraw(fName); } break; } break; default: break; } // switch(GET_SUBMSG(msg)) break; case kC_CONTAINER: switch (GET_SUBMSG(msg)) { case kCT_ITEMCLICK: if (parm1 == kButton1) { if (fFc->NumSelected() > 0) { if ( fFileInfo->fMultipleSelection == kFALSE ) { TGLVEntry *e2 = (TGLVEntry *) fFc->GetNextSelected(&p); if ((e2) && !R_ISDIR(((TGFileItem *)e2)->GetType())) { fTbfname->Clear(); if (e2->GetItemName()) fTbfname->AddText(0, e2->GetItemName()->GetString()); fClient->NeedRedraw(fName); } } else { TString tmpString; TList *tmp = fFc->GetSelectedItems(); TObjString *el; TIter next(tmp); if ( fFileInfo->fFileNamesList != 0 ) { fFileInfo->fFileNamesList->Delete(); } else { fFileInfo->fFileNamesList = new TList(); } while ((el = (TObjString *) next())) { char *s = gSystem->ConcatFileName(fFc->GetDirectory(), el->GetString()); tmpString += "\"" + el->GetString() + "\" "; fFileInfo->fFileNamesList->Add(new TObjString(s)); delete [] s; } fTbfname->Clear(); fTbfname->AddText(0, tmpString); fClient->NeedRedraw(fName); } } } break; case kCT_ITEMDBLCLICK: if (parm1 == kButton1) { if (fFc->NumSelected() == 1) { f = (TGFileItem *) fFc->GetNextSelected(&p); if (f && R_ISDIR(f->GetType())) { fFc->ChangeDirectory(f->GetItemName()->GetString()); fTreeLB->Update(fFc->GetDirectory()); if (fFileInfo->fIniDir) delete [] fFileInfo->fIniDir; fFileInfo->fIniDir = StrDup(fFc->GetDirectory()); if (strcmp(gSystem->WorkingDirectory(),fFc->GetDirectory())) { gSystem->cd(fFc->GetDirectory()); } } else { if (!strcmp(fOk->GetTitle(), "Save") && (!(fCheckB->GetState() == kButtonDown))) { Int_t ret; txt = TString::Format("File name %s already exists, OK to overwrite it?", fTbfname->GetString()); new TGMsgBox(fClient->GetRoot(), GetMainFrame(), "File Name Exist", txt.Data(), kMBIconExclamation, kMBYes | kMBNo, &ret); if (ret == kMBNo) return kTRUE; } if (fFileInfo->fFilename) delete [] fFileInfo->fFilename; if (gSystem->IsAbsoluteFileName(fTbfname->GetString())) fFileInfo->fFilename = StrDup(fTbfname->GetString()); else fFileInfo->fFilename = gSystem->ConcatFileName(fFc->GetDirectory(), fTbfname->GetString()); fFileInfo->fFilename = StrDup(gSystem->UnixPathName(gSystem->ExpandPathName(fFileInfo->fFilename))); if (fCheckB && (fCheckB->GetState() == kButtonDown)) fFileInfo->fOverwrite = kTRUE; else fFileInfo->fOverwrite = kFALSE; DeleteWindow(); } } } break; default: break; } // switch(GET_SUBMSG(msg)) break; case kC_TEXTENTRY: switch (GET_SUBMSG(msg)) { case kTE_ENTER: // same code as under kIDF_OK if ((fDlgMode!=kKVFDDirectory) && (fTbfname->GetTextLength() == 0)) { const char *txt2 = "Please provide file name or use \"Cancel\""; new TGMsgBox(fClient->GetRoot(), GetMainFrame(), "Missing File Name", txt2, kMBIconExclamation, kMBOk); return kTRUE; } else if (!gSystem->AccessPathName(fTbfname->GetString(), kFileExists)) { FileStat_t buf; if (!gSystem->GetPathInfo(fTbfname->GetString(), buf) && R_ISDIR(buf.fMode)) { fFc->ChangeDirectory(fTbfname->GetString()); fTreeLB->Update(fFc->GetDirectory()); if (strcmp(gSystem->WorkingDirectory(), fFc->GetDirectory())) { gSystem->cd(fFc->GetDirectory()); } fName->SetText("", kFALSE); return kTRUE; } else if (!strcmp(fOk->GetTitle(), "Save") && (!(fCheckB->GetState() == kButtonDown))) { Int_t ret; txt = TString::Format("File name %s already exists, OK to overwrite it?", fTbfname->GetString()); new TGMsgBox(fClient->GetRoot(), GetMainFrame(), "File Name Exist", txt.Data(), kMBIconExclamation, kMBYes | kMBNo, &ret); if (ret == kMBNo) return kTRUE; } } if (fFileInfo->fFilename) delete [] fFileInfo->fFilename; fFileInfo->fFilename = gSystem->ConcatFileName(fFc->GetDirectory(), fTbfname->GetString()); fFileInfo->fFilename = StrDup(gSystem->UnixPathName(gSystem->ExpandPathName(fFileInfo->fFilename))); if (fCheckB && (fCheckB->GetState() == kButtonDown)) fFileInfo->fOverwrite = kTRUE; else fFileInfo->fOverwrite = kFALSE; DeleteWindow(); break; default: break; } break; default: break; } // switch(GET_MSG(msg)) fClient->NeedRedraw(fFc); return kTRUE; }
//______________________________________________________________________________ Bool_t ArgusWindow::ProcessMessage(Long_t msg, Long_t param1, Long_t /*param2*/) { ArgusTab *tab = 0; // cout << "ArgusWindow::ProcessMessage " << GET_MSG(msg) << " " << GET_SUBMSG(msg) << " " << param1 << endl; // Process messages coming from widgets associated with the dialog. switch (GET_MSG(msg)) { case kC_COMMAND: switch (GET_SUBMSG(msg)) { case kCM_MENU: tab = GetTabObjectAt(fCurrentTabIndex); tab->BaseMenuClicked(0, param1); switch (param1) { case M_FILE_NEW_WINDOW: if (!OpenNewWindow(fCurrentTabIndex)) { return kFALSE; } break; case M_FILE_EXIT: CloseWindow(); break; case M_FILE_CONTROLLER: if (fController->IsHidden()) { fController->ShowContainer(); } break; default: ProcessMessageNetFolder(param1); break; } break; case kCM_BUTTON: break; case kCM_LISTBOX: break; case kCM_TAB: if (param1 != fCurrentTabID) { ChangeTab(GetTabObjectIndex(param1)); break; } } break; case kC_DOCK: switch (GET_SUBMSG(msg)) { // hide/show run# and event# case kDOCK_DOCK: ((TGCompositeFrame*)(fRunNumber->GetParent()->GetParent()))->HideFrame((TGFrame*)(fRunNumber->GetParent())); ((TGCompositeFrame*)(fEventNumber->GetParent()->GetParent()))->HideFrame((TGFrame*)(fEventNumber->GetParent())); break; case kDOCK_UNDOCK: ((TGCompositeFrame*)(fRunNumber->GetParent()->GetParent()))->ShowFrame((TGFrame*)(fRunNumber->GetParent())); ((TGCompositeFrame*)(fEventNumber->GetParent()->GetParent()))->ShowFrame((TGFrame*)(fEventNumber->GetParent())); break; case kDOCK_SHOW: ((TGCompositeFrame*)(fRunNumber->GetParent()->GetParent()))->HideFrame((TGFrame*)(fRunNumber->GetParent())); ((TGCompositeFrame*)(fEventNumber->GetParent()->GetParent()))->HideFrame((TGFrame*)(fEventNumber->GetParent())); break; case kDOCK_HIDE: ((TGCompositeFrame*)(fRunNumber->GetParent()->GetParent()))->ShowFrame((TGFrame*)(fRunNumber->GetParent())); ((TGCompositeFrame*)(fEventNumber->GetParent()->GetParent()))->ShowFrame((TGFrame*)(fEventNumber->GetParent())); break; } break; } return kTRUE; }