Changeset 11854 for trunk/FACT++/gui
- Timestamp:
- 08/09/11 10:01:29 (13 years ago)
- Location:
- trunk/FACT++/gui
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/FACT++/gui/FactGui.h
r11850 r11854 377 377 vector<int> fPatchHW; // Maps the software(!) pixel id to the hardware(!) patch id 378 378 379 bool fInChoosePatch; // FIXME. Find a better solution 379 bool fInChoosePatchTH; // FIXME. Find a better solution 380 bool fInChoosePatchBias; // FIXME. Find a better solution 380 381 381 382 DimStampedInfo fDimDNS; … … 419 420 DimStampedInfo fDimFscHumidity; 420 421 422 //DimStampedInfo fDimBiasVolt; 423 DimStampedInfo fDimBiasCurrent; 424 421 425 map<string, DimInfo*> fServices; 422 426 … … 2257 2261 SetFtuStatusLed(d.time); 2258 2262 2259 #ifdef HAVE_ROOT 2260 // Camera *cam = (Camera*)fRatesCanv->GetCanvas()->FindObject("Camera"); 2263 2264 2261 2265 for (int isw=0; isw<1440; isw++) 2262 2266 { … … 2264 2268 fRatesCanv->SetEnable(isw, sdata.IsEnabled(ihw)); 2265 2269 } 2266 2267 // fRatesCanv->GetCanvas()->Modified();2268 // fRatesCanv->GetCanvas()->Update();2269 #endif2270 2270 2271 2271 { … … 2448 2448 SetFscValue(fHumidity3, d, 2, enable); 2449 2449 SetFscValue(fHumidity4, d, 3, enable); 2450 } 2451 2452 // ========================== FSC ======================================= 2453 2454 vector<int16_t> fVecBias; 2455 2456 void handleBiasVolt(const DimData &d) 2457 { 2458 if (!CheckSize(d, 416*sizeof(int16_t))) 2459 return; 2460 2461 const int16_t *ptr = d.ptr<int16_t>(); 2462 2463 fVecBias.assign(ptr, ptr+416); 2464 // FIXME: Update displayed value 2465 } 2466 2467 void handleBiasCurrent(const DimData &d) 2468 { 2469 if (!CheckSize(d, 416*sizeof(int16_t))) 2470 return; 2471 2472 const int16_t *ptr = d.ptr<int16_t>(); 2473 2474 valarray<double> dat(0., 1440); 2475 2476 // fPatch converts from software id to software patch id 2477 for (int i=0; i<1440; i++) 2478 { 2479 const int ihw = fPatchHW[i]; 2480 2481 // FIXME: Display Overcurrent 2482 dat[i] = abs(ptr[ihw])*5000./4096; 2483 2484 fBiasCam->SetEnable(i, uint16_t(ptr[ihw])!=0x8000); 2485 } 2486 2487 fBiasCam->SetData(dat); 2450 2488 } 2451 2489 … … 2886 2924 return PostInfoHandler(&FactGui::handleFscHumidity); 2887 2925 2926 // if (getInfo()==&fDimBiasVolt) 2927 // return PostInfoHandler(&FactGui::handleBiasVolt); 2928 2929 if (getInfo()==&fDimBiasCurrent) 2930 return PostInfoHandler(&FactGui::handleBiasCurrent); 2931 2888 2932 // if (getInfo()==&fDimFadFiles) 2889 2933 // return PostInfoHandler(&FactGui::handleFadFiles); … … 2970 3014 2971 3015 if (evt==11/*kMouseReleaseEvent*/) 2972 { 2973 if (dynamic_cast<Camera*>(obj)) 2974 { 2975 // const float xx = canv->AbsPixeltoX(tipped->GetEventX()); 2976 // const float yy = canv->AbsPixeltoY(tipped->GetEventY()); 2977 //ETIENNE MESS HERE 2978 // Camera *cam = static_cast<Camera*>(obj); 2979 // const int isw = cam->GetIdx(xx, yy); 2980 2981 // fPixelIdx->setValue(isw); 2982 // ChoosePixel(*cam, isw); 2983 } 2984 return; 2985 } 3016 return; 2986 3017 2987 3018 if (evt==61/*kMouseDoubleClickEvent*/) 2988 { 2989 if (dynamic_cast<Camera*>(obj) && fRatesControls->isEnabled()) 2990 { 2991 // const float xx = canv->AbsPixeltoX(tipped->GetEventX()); 2992 // const float yy = canv->AbsPixeltoY(tipped->GetEventY()); 2993 //ETIENNE MESS HERE 2994 // Camera *cam = static_cast<Camera*>(obj); 2995 // const int isw = cam->GetIdx(xx, yy); 2996 2997 // ChoosePixel(*cam, isw); 2998 2999 // fPixelIdx->setValue(isw); 3000 3001 // const uint16_t ihw = fPixelMapHW[isw]; 3002 3003 // Dim::SendCommand("FTM_CONTROL/TOGGLE_PIXEL", ihw); 3004 } 3005 if (dynamic_cast<TAxis*>(obj)) 3006 static_cast<TAxis*>(obj)->UnZoom(); 3007 3008 return; 3009 } 3019 return; 3010 3020 3011 3021 if (obj) … … 3032 3042 tipText += objectInfo; 3033 3043 3034 if (dynamic_cast<Camera*>(obj))3035 {3036 // const float xx = canv->AbsPixeltoX(tipped->GetEventX());3037 // const float yy = canv->AbsPixeltoY(tipped->GetEventY());3038 3039 //ETIENNE MESS HERE3040 // Camera *cam = static_cast<Camera*>(obj);3041 3042 // const int isw = cam->GetIdx(xx, yy);3043 // const int ihw = fPixelMapHW[isw];3044 3045 // const int idx = fPatchHW[isw];3046 3047 // int ii = 0;3048 // for (; ii<160; ii++)3049 // if (idx==fPatchMapHW[ii])3050 // break;3051 3052 3053 // const int patch = ihw%4;3054 // const int board = (ihw/4)%10;3055 // const int crate = (ihw/4)/10;3056 3057 // ostringstream str;3058 // str << " (hw=" << ihw << ") Patch=" << ii << " (hw=" << fPatchMapHW[idx] << "; Crate=" << crate << " Board=" << board << " Patch=" << patch << ")";3059 3060 // tipText += str.str().c_str();3061 }3062 3044 fStatusBar->showMessage(tipText, 3000); 3063 3045 } … … 3074 3056 QTimer::singleShot(10, this, SLOT(slot_RootUpdate())); 3075 3057 } 3076 3077 void ChoosePatch(Camera &cam, int isw) 3058 #endif 3059 3060 void ChoosePatchThreshold(Camera &cam, int isw) 3078 3061 { 3079 3062 cam.Reset(); … … 3095 3078 const int crate = (ihw/4)/10; 3096 3079 3097 fInChoosePatch = true;3080 fInChoosePatchTH = true; 3098 3081 3099 3082 fThresholdCrate->setValue(crate); … … 3101 3084 fThresholdPatch->setValue(patch); 3102 3085 3103 fInChoosePatch = false;3086 fInChoosePatchTH = false; 3104 3087 3105 3088 fThresholdVal->setValue(fFtmStaticData.fThreshold[ihw]); … … 3112 3095 } 3113 3096 3114 void ChoosePixel(Camera &cam, int isw) 3115 { 3116 const int ihw = fPixelMapHW[isw]; 3117 3118 int ii = 0; 3119 for (; ii<160; ii++) 3120 if (fPatchHW[isw]==fPatchMapHW[ii]) 3121 break; 3122 3123 cam.SetWhite(isw); 3124 ChoosePatch(cam, ii); 3125 3126 const bool on = fFtmStaticData.IsEnabled(ihw); 3127 fPixelEnable->setChecked(on); 3128 } 3129 void slot_ChoosePixel(int isw) 3097 void ChoosePatchBias(Camera &cam, int isw) 3098 { 3099 cam.Reset(); 3100 3101 fBiasPixel->setValue(isw); 3102 3103 const int ihw = isw<0 ? 0 : fPatchMapHW[isw]; 3104 3105 fBiasCurrent->setEnabled(isw>=0); 3106 fBiasCrate->setEnabled(isw>=0); 3107 fBiasBoard->setEnabled(isw>=0); 3108 fBiasPatch->setEnabled(isw>=0); 3109 3110 if (isw<0) 3111 return; 3112 3113 const int patch = ihw%4; 3114 const int board = (ihw/4)%10; 3115 const int crate = (ihw/4)/10; 3116 3117 fInChoosePatchBias = true; 3118 3119 fBiasCrate->setValue(crate); 3120 fBiasBoard->setValue(board); 3121 fBiasPatch->setValue(patch); 3122 3123 fInChoosePatchBias = false; 3124 3125 if (fVecBias.size()>0) 3126 { 3127 // FIXME: Mapping 3128 fBiasVoltDac->setValue(fVecBias[ihw]); 3129 fBiasVolt->setValue(fVecBias[ihw]*90/4096); 3130 } 3131 3132 fBiasCurrent->setValue(cam.GetData(isw)); 3133 3134 // Loop over the software idx of all pixels 3135 for (unsigned int i=0; i<1440; i++) 3136 if (fPatchHW[i]==ihw) 3137 cam.SetBold(i); 3138 } 3139 3140 void slot_ChoosePixelThreshold(int isw) 3130 3141 { 3131 3142 fPixelIdx->setValue(isw); … … 3134 3145 fPixelEnable->setChecked(on); 3135 3146 } 3147 3148 void slot_ChoosePixelBias(int isw) 3149 { 3150 fBiasPixel->setValue(isw); 3151 //const uint16_t ihw = fPixelMapHW[isw]; 3152 //const bool on = fFtmStaticData.IsEnabled(ihw); 3153 //fPixelEnable->setChecked(on); 3154 } 3155 3136 3156 void slot_CameraDoubleClick(int isw) 3137 { 3138 fPixelIdx->setValue(isw); 3139 const uint16_t ihw = fPixelMapHW[isw]; 3140 Dim::SendCommand("FTM_CONTROL/TOGGLE_PIXEL", ihw); 3141 } 3157 { 3158 fPixelIdx->setValue(isw); 3159 const uint16_t ihw = fPixelMapHW[isw]; 3160 Dim::SendCommand("FTM_CONTROL/TOGGLE_PIXEL", ihw); 3161 } 3162 3142 3163 void slot_CameraMouseMove(int isw) 3143 3164 { … … 3160 3181 } 3161 3182 3162 void UpdatePatch(int isw)3183 void on_fThresholdIdx_valueChanged(int isw) 3163 3184 { 3164 3185 //ETIENNE MESS HERE 3165 3186 // Camera *cam = (Camera*)fRatesCanv->GetCanvas()->FindObject("Camera"); 3166 // ChoosePatch(*cam, isw); 3167 } 3168 3169 void on_fThresholdIdx_valueChanged(int isw) 3170 { 3171 UpdatePatch(isw); 3172 3173 // fRatesCanv->GetCanvas()->Modified(); 3174 // fRatesCanv->GetCanvas()->Update(); 3187 // ChoosePatchTH(*cam, isw); 3175 3188 } 3176 3189 3177 3190 void UpdateThresholdIdx() 3178 3191 { 3179 if (fInChoosePatch )3192 if (fInChoosePatchTH) 3180 3193 return; 3181 3194 … … 3191 3204 break; 3192 3205 3193 UpdatePatch(isw); 3194 } 3195 3196 void on_fThresholdPatch_valueChanged(int) 3197 { 3198 UpdateThresholdIdx(); 3199 } 3200 void on_fThresholdBoard_valueChanged(int) 3201 { 3202 UpdateThresholdIdx(); 3203 } 3204 void on_fThresholdCrate_valueChanged(int) 3205 { 3206 UpdateThresholdIdx(); 3206 on_fThresholdIdx_valueChanged(isw); 3207 } 3208 3209 void UpdateBiasIdx() 3210 { 3211 if (fInChoosePatchBias) 3212 return; 3213 3214 const int crate = fBiasCrate->value(); 3215 const int board = fBiasBoard->value(); 3216 const int patch = fBiasPatch->value(); 3217 3218 const int ihw = patch + board*4 + crate*40; 3219 3220 int isw = 0; 3221 for (; isw<160; isw++) 3222 if (ihw==fPatchMapHW[isw]) 3223 break; 3224 3225 on_fBiasPixel_valueChanged(isw); 3207 3226 } 3208 3227 3209 3228 void on_fPixelIdx_valueChanged(int isw) 3210 3229 { 3211 ChoosePixel(*fRatesCanv, isw); 3212 } 3213 3214 #endif 3230 const int ihw = fPixelMapHW[isw]; 3231 3232 int ii = 0; 3233 for (; ii<160; ii++) 3234 if (fPatchHW[isw]==fPatchMapHW[ii]) 3235 break; 3236 3237 fRatesCanv->SetWhite(isw); 3238 ChoosePatchThreshold(*fRatesCanv, ii); 3239 3240 const bool on = fFtmStaticData.IsEnabled(ihw); 3241 fPixelEnable->setChecked(on); 3242 } 3243 3244 void on_fBiasPixel_valueChanged(int isw) 3245 { 3246 const int ihw = fPixelMapHW[isw]; 3247 3248 int ii = 0; 3249 for (; ii<160; ii++) 3250 if (fPatchHW[isw]==fPatchMapHW[ii]) 3251 break; 3252 3253 fBiasCam->SetWhite(isw); 3254 ChoosePatchBias(*fRatesCanv, ii); 3255 3256 const bool on = fFtmStaticData.IsEnabled(ihw); 3257 fPixelEnable->setChecked(on); 3258 } 3259 3215 3260 3216 3261 void on_fPixelEnable_stateChanged(int b) … … 3301 3346 fFtuStatus(40), 3302 3347 fPixelMapHW(1440), fPatchMapHW(160), fPatchHW(1440), 3303 fInChoosePatch (false),3348 fInChoosePatchTH(false), fInChoosePatchBias(false), 3304 3349 fDimDNS("DIS_DNS/VERSION_NUMBER", 1, int(0), this), 3305 3350 //- … … 3342 3387 fDimFscHumidity ("FSC_CONTROL/HUMIDITY", (void*)NULL, 0, this), 3343 3388 //- 3344 fEventData(0), fDrsCalibration(1440*1024*6), 3389 //fDimBiasVolt ("BIAS_CONTROL/VOLTAGE", (void*)NULL, 0, this), 3390 fDimBiasCurrent ("BIAS_CONTROL/CURRENT", (void*)NULL, 0, this), 3391 //- 3392 fEventData(0), fDrsCalibration(1440*1024*6), 3345 3393 fTimeStamp0(0) 3346 3394 … … 3560 3608 // -------------------------------------------------------------------------- 3561 3609 3562 //ETIENNE MESS HERE 3563 // c = fRatesCanv->GetCanvas(); 3564 //c->SetBit(TCanvas::kNoContextMenu); 3565 // c->SetBorderMode(0); 3566 // c->SetFrameBorderMode(0); 3567 // c->SetFillColor(kWhite); 3568 // c->cd(); 3569 3570 Camera *cam = fRatesCanv;//new Camera; 3571 // cam->SetBit(kCanDelete); 3572 cam->SetMin(fRatesMin->value()); 3573 cam->SetMax(fRatesMax->value()); 3574 // cam->Draw(); 3575 cam->updateGL(); 3576 3577 ChoosePixel(*cam, 0); 3610 fRatesCanv->SetMin(fRatesMin->value()); 3611 fRatesCanv->SetMax(fRatesMax->value()); 3612 fRatesCanv->updateGL(); 3613 on_fPixelIdx_valueChanged(0); 3578 3614 3579 3615 // -------------------------------------------------------------------------- … … 3588 3624 c->cd(); 3589 3625 3590 // --------------------------------------------------------------------------3591 3592 /* c = fEventCanv->GetCanvas();3593 c->SetBit(TCanvas::kNoContextMenu);3594 c->SetBorderMode(0);3595 c->SetFrameBorderMode(0);3596 c->SetFillColor(kWhite);3597 c->Divide(2,2);3598 c->cd(1);3599 gPad->SetBorderMode(0);3600 gPad->SetFrameBorderMode(0);3601 gPad->SetFillColor(kWhite);3602 //ETIENNE MESS HERE3603 // Camera *cam1 = new Camera;3604 // cam1->SetBit(kCanDelete);3605 // cam1->Draw();3606 c->cd(2);3607 gPad->SetBorderMode(0);3608 gPad->SetFrameBorderMode(0);3609 gPad->SetFillColor(kWhite);3610 // Camera *cam2 = new Camera;3611 // cam2->SetBit(kCanDelete);3612 // cam2->Draw();3613 c->cd(3);3614 gPad->SetBorderMode(0);3615 gPad->SetFrameBorderMode(0);3616 gPad->SetFillColor(kWhite);3617 // Camera *cam3 = new Camera;3618 // cam3->SetBit(kCanDelete);3619 // cam3->Draw();3620 c->cd(4);3621 gPad->SetBorderMode(0);3622 gPad->SetFrameBorderMode(0);3623 gPad->SetFillColor(kWhite);3624 // Camera *cam4 = new Camera;3625 // cam4->SetBit(kCanDelete);3626 // cam4->Draw();3627 3628 */3629 3630 3626 // Create histogram? 3631 3627 … … 3644 3640 3645 3641 fRatesCanv->setMouseTracking(true); 3646 //ETIENNE MESS HERE 3647 // fRatesCanv->EnableSignalEvents(kMouseMoveEvent|kMouseReleaseEvent|kMouseDoubleClickEvent); 3648 // connect(fRatesCanv, SIGNAL( RootEventProcessed(TObject*, unsigned int, TCanvas*)), 3649 // this, SLOT (slot_RootEventProcessed(TObject*, unsigned int, TCanvas*))); 3642 3650 3643 connect(fRatesCanv, SIGNAL(signalPixelMoveOver(int)), 3651 3644 this, SLOT(slot_CameraMouseMove(int))); … … 3662 3655 this, SLOT(slot_CameraDoubleClick(int))); 3663 3656 connect(fRatesCanv, SIGNAL(signalCurrentPixel(int)), 3664 this, SLOT(slot_ChoosePixel(int))); 3657 this, SLOT(slot_ChoosePixelThreshold(int))); 3658 connect(fBiasCam, SIGNAL(signalCurrentPixel(int)), 3659 this, SLOT(slot_ChoosePixelBias(int))); 3665 3660 connect(fFtmRateCanv, SIGNAL( RootEventProcessed(TObject*, unsigned int, TCanvas*)), 3666 3661 this, SLOT (slot_RootEventProcessed(TObject*, unsigned int, TCanvas*))); -
trunk/FACT++/gui/MainWindow.h
r11807 r11854 154 154 void on_fFtuAllOff_clicked(); 155 155 156 // Tab: Bias 157 virtual void UpdateBiasIdx() = 0; 158 virtual void on_fBiasPixel_valueChanged(int) = 0; 159 void on_fBiasCrate_valueChanged(int) { UpdateBiasIdx(); } 160 void on_fBiasBoard_valueChanged(int) { UpdateBiasIdx(); } 161 void on_fBiasPatch_valueChanged(int) { UpdateBiasIdx(); } 162 156 163 // Tab: Rates 164 virtual void UpdateThresholdIdx() = 0; 165 virtual void on_fPixelIdx_valueChanged(int) = 0; 166 void on_fThresholdCrate_valueChanged(int) { UpdateThresholdIdx() ; } 167 void on_fThresholdBoard_valueChanged(int) { UpdateThresholdIdx() ; } 168 void on_fThresholdPatch_valueChanged(int) { UpdateThresholdIdx() ; } 169 157 170 virtual void on_fPixelEnable_stateChanged(int) = 0; 158 171 virtual void on_fThresholdVal_valueChanged(int) = 0; 159 172 virtual void on_fThresholdIdx_valueChanged(int) = 0; 160 virtual void on_fThresholdCrate_valueChanged(int) = 0;161 virtual void on_fThresholdBoard_valueChanged(int) = 0;162 virtual void on_fThresholdPatch_valueChanged(int) = 0;163 virtual void on_fPixelIdx_valueChanged(int) = 0;164 173 165 174 void on_fRatesMin_valueChanged(int); // FIXME: Could be set as slot in the designer … … 188 197 virtual void slot_RootEventProcessed(TObject *, unsigned int, TCanvas *) = 0; 189 198 virtual void slot_RootUpdate() = 0; 190 virtual void slot_ChoosePixel(int) = 0; 199 virtual void slot_ChoosePixelThreshold(int) = 0; 200 virtual void slot_ChoosePixelBias(int) = 0; 191 201 virtual void slot_CameraDoubleClick(int) = 0; 192 202 virtual void slot_CameraMouseMove(int) = 0; -
trunk/FACT++/gui/design.ui
r11850 r11854 53 53 </property> 54 54 <property name="currentIndex"> 55 <number> 5</number>55 <number>3</number> 56 56 </property> 57 57 <property name="documentMode"> … … 3267 3267 </layout> 3268 3268 </widget> 3269 <widget class="QWidget" name="fBiasTab"> 3270 <attribute name="title"> 3271 <string>Bias</string> 3272 </attribute> 3273 <layout class="QGridLayout" name="gridLayout_86"> 3274 <item row="0" column="0"> 3275 <widget class="QDockWidget" name="fBiasDock"> 3276 <property name="sizePolicy"> 3277 <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> 3278 <horstretch>0</horstretch> 3279 <verstretch>0</verstretch> 3280 </sizepolicy> 3281 </property> 3282 <property name="features"> 3283 <set>QDockWidget::NoDockWidgetFeatures</set> 3284 </property> 3285 <property name="allowedAreas"> 3286 <set>Qt::AllDockWidgetAreas</set> 3287 </property> 3288 <property name="windowTitle"> 3289 <string>FTU rate display</string> 3290 </property> 3291 <widget class="QWidget" name="fBiasWidget"> 3292 <property name="sizePolicy"> 3293 <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> 3294 <horstretch>0</horstretch> 3295 <verstretch>0</verstretch> 3296 </sizepolicy> 3297 </property> 3298 <layout class="QGridLayout" name="gridLayout_81"> 3299 <item row="0" column="0" rowspan="2"> 3300 <widget class="QFrame" name="frame_5"> 3301 <property name="sizePolicy"> 3302 <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> 3303 <horstretch>0</horstretch> 3304 <verstretch>0</verstretch> 3305 </sizepolicy> 3306 </property> 3307 <property name="minimumSize"> 3308 <size> 3309 <width>500</width> 3310 <height>500</height> 3311 </size> 3312 </property> 3313 <property name="frameShape"> 3314 <enum>QFrame::StyledPanel</enum> 3315 </property> 3316 <property name="frameShadow"> 3317 <enum>QFrame::Sunken</enum> 3318 </property> 3319 <layout class="QGridLayout" name="gridLayout_82"> 3320 <property name="margin"> 3321 <number>3</number> 3322 </property> 3323 <item row="0" column="0"> 3324 <widget class="QCameraWidget" name="fBiasCam" native="true"/> 3325 </item> 3326 </layout> 3327 </widget> 3328 </item> 3329 <item row="0" column="1" rowspan="2"> 3330 <widget class="QGroupBox" name="fBiasControls"> 3331 <property name="sizePolicy"> 3332 <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> 3333 <horstretch>0</horstretch> 3334 <verstretch>0</verstretch> 3335 </sizepolicy> 3336 </property> 3337 <property name="title"> 3338 <string>Controls</string> 3339 </property> 3340 <layout class="QGridLayout" name="gridLayout_83" columnstretch="0"> 3341 <property name="sizeConstraint"> 3342 <enum>QLayout::SetMinimumSize</enum> 3343 </property> 3344 <item row="1" column="0"> 3345 <layout class="QVBoxLayout" name="verticalLayout_16"> 3346 <property name="rightMargin"> 3347 <number>0</number> 3348 </property> 3349 <item> 3350 <widget class="QLabel" name="label_202"> 3351 <property name="text"> 3352 <string>Pixel</string> 3353 </property> 3354 </widget> 3355 </item> 3356 <item> 3357 <layout class="QHBoxLayout" name="horizontalLayout_43"> 3358 <property name="topMargin"> 3359 <number>0</number> 3360 </property> 3361 <item> 3362 <widget class="QSpinBox" name="fBiasPixel"> 3363 <property name="alignment"> 3364 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3365 </property> 3366 <property name="maximum"> 3367 <number>1439</number> 3368 </property> 3369 </widget> 3370 </item> 3371 <item> 3372 <widget class="QCheckBox" name="fPixelEnable_2"> 3373 <property name="enabled"> 3374 <bool>false</bool> 3375 </property> 3376 <property name="maximumSize"> 3377 <size> 3378 <width>20</width> 3379 <height>16777215</height> 3380 </size> 3381 </property> 3382 <property name="text"> 3383 <string/> 3384 </property> 3385 </widget> 3386 </item> 3387 </layout> 3388 </item> 3389 <item> 3390 <layout class="QHBoxLayout" name="horizontalLayout_44"> 3391 <property name="topMargin"> 3392 <number>0</number> 3393 </property> 3394 <item> 3395 <widget class="QPushButton" name="fPixelEnableAll_2"> 3396 <property name="enabled"> 3397 <bool>false</bool> 3398 </property> 3399 <property name="text"> 3400 <string>Enable all</string> 3401 </property> 3402 </widget> 3403 </item> 3404 <item> 3405 <widget class="QPushButton" name="fPixelDisableAll_2"> 3406 <property name="enabled"> 3407 <bool>false</bool> 3408 </property> 3409 <property name="text"> 3410 <string>Disable all</string> 3411 </property> 3412 </widget> 3413 </item> 3414 </layout> 3415 </item> 3416 <item> 3417 <layout class="QHBoxLayout" name="horizontalLayout_45"> 3418 <property name="topMargin"> 3419 <number>0</number> 3420 </property> 3421 <item> 3422 <widget class="QPushButton" name="fPixelDisableOthers_2"> 3423 <property name="enabled"> 3424 <bool>false</bool> 3425 </property> 3426 <property name="text"> 3427 <string>Disable others</string> 3428 </property> 3429 </widget> 3430 </item> 3431 </layout> 3432 </item> 3433 <item> 3434 <spacer name="verticalSpacer_61"> 3435 <property name="orientation"> 3436 <enum>Qt::Vertical</enum> 3437 </property> 3438 <property name="sizeType"> 3439 <enum>QSizePolicy::Fixed</enum> 3440 </property> 3441 <property name="sizeHint" stdset="0"> 3442 <size> 3443 <width>20</width> 3444 <height>20</height> 3445 </size> 3446 </property> 3447 </spacer> 3448 </item> 3449 <item> 3450 <widget class="QLabel" name="label_206"> 3451 <property name="text"> 3452 <string>Patch</string> 3453 </property> 3454 </widget> 3455 </item> 3456 <item> 3457 <widget class="QSpinBox" name="fBiasPatch"> 3458 <property name="alignment"> 3459 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3460 </property> 3461 <property name="readOnly"> 3462 <bool>false</bool> 3463 </property> 3464 <property name="specialValueText"> 3465 <string>all</string> 3466 </property> 3467 <property name="minimum"> 3468 <number>-1</number> 3469 </property> 3470 <property name="maximum"> 3471 <number>159</number> 3472 </property> 3473 <property name="value"> 3474 <number>0</number> 3475 </property> 3476 </widget> 3477 </item> 3478 <item> 3479 <layout class="QHBoxLayout" name="horizontalLayout_46"> 3480 <property name="topMargin"> 3481 <number>0</number> 3482 </property> 3483 <item> 3484 <widget class="QPushButton" name="fThresholdDisableOthers_2"> 3485 <property name="enabled"> 3486 <bool>false</bool> 3487 </property> 3488 <property name="text"> 3489 <string>Disable others</string> 3490 </property> 3491 </widget> 3492 </item> 3493 </layout> 3494 </item> 3495 <item> 3496 <spacer name="verticalSpacer_62"> 3497 <property name="orientation"> 3498 <enum>Qt::Vertical</enum> 3499 </property> 3500 <property name="sizeType"> 3501 <enum>QSizePolicy::Fixed</enum> 3502 </property> 3503 <property name="sizeHint" stdset="0"> 3504 <size> 3505 <width>20</width> 3506 <height>5</height> 3507 </size> 3508 </property> 3509 </spacer> 3510 </item> 3511 <item> 3512 <layout class="QGridLayout" name="gridLayout_84"> 3513 <property name="topMargin"> 3514 <number>0</number> 3515 </property> 3516 <item row="1" column="0"> 3517 <widget class="QSpinBox" name="fBiasCrate"> 3518 <property name="alignment"> 3519 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3520 </property> 3521 <property name="maximum"> 3522 <number>3</number> 3523 </property> 3524 </widget> 3525 </item> 3526 <item row="1" column="1"> 3527 <widget class="QSpinBox" name="fBiasBoard"> 3528 <property name="alignment"> 3529 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3530 </property> 3531 <property name="maximum"> 3532 <number>9</number> 3533 </property> 3534 </widget> 3535 </item> 3536 <item row="1" column="3"> 3537 <widget class="QSpinBox" name="fBiasPatch_2"> 3538 <property name="alignment"> 3539 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3540 </property> 3541 <property name="maximum"> 3542 <number>4</number> 3543 </property> 3544 </widget> 3545 </item> 3546 <item row="0" column="3"> 3547 <widget class="QLabel" name="label_222"> 3548 <property name="text"> 3549 <string>Patch</string> 3550 </property> 3551 </widget> 3552 </item> 3553 <item row="0" column="0"> 3554 <widget class="QLabel" name="label_223"> 3555 <property name="text"> 3556 <string>Crate</string> 3557 </property> 3558 </widget> 3559 </item> 3560 <item row="0" column="1"> 3561 <widget class="QLabel" name="label_224"> 3562 <property name="text"> 3563 <string>Board</string> 3564 </property> 3565 </widget> 3566 </item> 3567 </layout> 3568 </item> 3569 <item> 3570 <spacer name="verticalSpacer_63"> 3571 <property name="orientation"> 3572 <enum>Qt::Vertical</enum> 3573 </property> 3574 <property name="sizeType"> 3575 <enum>QSizePolicy::Fixed</enum> 3576 </property> 3577 <property name="sizeHint" stdset="0"> 3578 <size> 3579 <width>20</width> 3580 <height>40</height> 3581 </size> 3582 </property> 3583 </spacer> 3584 </item> 3585 <item> 3586 <widget class="QLabel" name="label_225"> 3587 <property name="text"> 3588 <string>Command Voltage</string> 3589 </property> 3590 </widget> 3591 </item> 3592 <item> 3593 <widget class="QSpinBox" name="fBiasVoltDac"> 3594 <property name="alignment"> 3595 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3596 </property> 3597 <property name="maximum"> 3598 <number>4095</number> 3599 </property> 3600 </widget> 3601 </item> 3602 <item> 3603 <widget class="QDoubleSpinBox" name="fBiasVolt"> 3604 <property name="sizePolicy"> 3605 <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> 3606 <horstretch>0</horstretch> 3607 <verstretch>0</verstretch> 3608 </sizepolicy> 3609 </property> 3610 <property name="minimumSize"> 3611 <size> 3612 <width>100</width> 3613 <height>0</height> 3614 </size> 3615 </property> 3616 <property name="alignment"> 3617 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3618 </property> 3619 <property name="readOnly"> 3620 <bool>true</bool> 3621 </property> 3622 <property name="buttonSymbols"> 3623 <enum>QAbstractSpinBox::NoButtons</enum> 3624 </property> 3625 <property name="suffix"> 3626 <string> V</string> 3627 </property> 3628 <property name="decimals"> 3629 <number>2</number> 3630 </property> 3631 <property name="maximum"> 3632 <double>90.000000000000000</double> 3633 </property> 3634 <property name="value"> 3635 <double>0.000000000000000</double> 3636 </property> 3637 </widget> 3638 </item> 3639 <item> 3640 <spacer name="verticalSpacer_64"> 3641 <property name="orientation"> 3642 <enum>Qt::Vertical</enum> 3643 </property> 3644 <property name="sizeType"> 3645 <enum>QSizePolicy::Fixed</enum> 3646 </property> 3647 <property name="sizeHint" stdset="0"> 3648 <size> 3649 <width>20</width> 3650 <height>5</height> 3651 </size> 3652 </property> 3653 </spacer> 3654 </item> 3655 <item> 3656 <widget class="QLabel" name="label_226"> 3657 <property name="text"> 3658 <string>Current</string> 3659 </property> 3660 </widget> 3661 </item> 3662 <item> 3663 <widget class="QDoubleSpinBox" name="fBiasCurrent"> 3664 <property name="alignment"> 3665 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3666 </property> 3667 <property name="readOnly"> 3668 <bool>true</bool> 3669 </property> 3670 <property name="buttonSymbols"> 3671 <enum>QAbstractSpinBox::NoButtons</enum> 3672 </property> 3673 <property name="suffix"> 3674 <string> mA</string> 3675 </property> 3676 <property name="maximum"> 3677 <double>5000.000000000000000</double> 3678 </property> 3679 </widget> 3680 </item> 3681 <item> 3682 <spacer name="verticalSpacer_65"> 3683 <property name="orientation"> 3684 <enum>Qt::Vertical</enum> 3685 </property> 3686 <property name="sizeHint" stdset="0"> 3687 <size> 3688 <width>20</width> 3689 <height>40</height> 3690 </size> 3691 </property> 3692 </spacer> 3693 </item> 3694 </layout> 3695 </item> 3696 <item row="0" column="0"> 3697 <widget class="Line" name="line_39"> 3698 <property name="orientation"> 3699 <enum>Qt::Horizontal</enum> 3700 </property> 3701 </widget> 3702 </item> 3703 <item row="2" column="0"> 3704 <layout class="QGridLayout" name="gridLayout_85" rowstretch="0,0" columnstretch="0,0"> 3705 <property name="sizeConstraint"> 3706 <enum>QLayout::SetDefaultConstraint</enum> 3707 </property> 3708 <property name="topMargin"> 3709 <number>0</number> 3710 </property> 3711 <item row="0" column="0"> 3712 <widget class="QLabel" name="label_227"> 3713 <property name="sizePolicy"> 3714 <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> 3715 <horstretch>0</horstretch> 3716 <verstretch>0</verstretch> 3717 </sizepolicy> 3718 </property> 3719 <property name="text"> 3720 <string>Min</string> 3721 </property> 3722 </widget> 3723 </item> 3724 <item row="0" column="1"> 3725 <widget class="QSpinBox" name="fBiasMin"> 3726 <property name="sizePolicy"> 3727 <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> 3728 <horstretch>0</horstretch> 3729 <verstretch>0</verstretch> 3730 </sizepolicy> 3731 </property> 3732 <property name="alignment"> 3733 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3734 </property> 3735 <property name="specialValueText"> 3736 <string>auto</string> 3737 </property> 3738 <property name="suffix"> 3739 <string> Hz</string> 3740 </property> 3741 <property name="minimum"> 3742 <number>-1</number> 3743 </property> 3744 <property name="maximum"> 3745 <number>2147483647</number> 3746 </property> 3747 </widget> 3748 </item> 3749 <item row="1" column="0"> 3750 <widget class="QLabel" name="label_228"> 3751 <property name="sizePolicy"> 3752 <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> 3753 <horstretch>0</horstretch> 3754 <verstretch>0</verstretch> 3755 </sizepolicy> 3756 </property> 3757 <property name="text"> 3758 <string>Max</string> 3759 </property> 3760 </widget> 3761 </item> 3762 <item row="1" column="1"> 3763 <widget class="QSpinBox" name="fBiasMax"> 3764 <property name="sizePolicy"> 3765 <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> 3766 <horstretch>0</horstretch> 3767 <verstretch>0</verstretch> 3768 </sizepolicy> 3769 </property> 3770 <property name="alignment"> 3771 <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> 3772 </property> 3773 <property name="specialValueText"> 3774 <string>auto</string> 3775 </property> 3776 <property name="suffix"> 3777 <string> Hz</string> 3778 </property> 3779 <property name="minimum"> 3780 <number>-1</number> 3781 </property> 3782 <property name="maximum"> 3783 <number>2147483647</number> 3784 </property> 3785 <property name="value"> 3786 <number>1000</number> 3787 </property> 3788 </widget> 3789 </item> 3790 </layout> 3791 </item> 3792 </layout> 3793 </widget> 3794 </item> 3795 </layout> 3796 </widget> 3797 </widget> 3798 </item> 3799 </layout> 3800 </widget> 3269 3801 <widget class="QWidget" name="fFadTab"> 3270 3802 <attribute name="title"> … … 9105 9637 </widget> 9106 9638 </item> 9107 <item>9108 <spacer name="verticalSpacer_61">9109 <property name="orientation">9110 <enum>Qt::Vertical</enum>9111 </property>9112 <property name="sizeHint" stdset="0">9113 <size>9114 <width>20</width>9115 <height>40</height>9116 </size>9117 </property>9118 </spacer>9119 </item>9120 9639 </layout> 9121 9640 </item> … … 10776 11295 <width>40</width> 10777 11296 <height>0</height> 10778 </size>10779 </property>10780 </spacer>10781 </item>10782 <item>10783 <spacer name="verticalSpacer_62">10784 <property name="orientation">10785 <enum>Qt::Vertical</enum>10786 </property>10787 <property name="sizeHint" stdset="0">10788 <size>10789 <width>20</width>10790 <height>40</height>10791 11297 </size> 10792 11298 </property>
Note:
See TracChangeset
for help on using the changeset viewer.