Subversion Repositories f9daq

Rev

Rev 172 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 172 Rev 173
Line 148... Line 148...
148
 
148
 
149
// Event handler for menubar actions ---------------------------------
149
// Event handler for menubar actions ---------------------------------
150
 
150
 
151
void TGAppMainFrame::HandleMenu(Int_t id)
151
void TGAppMainFrame::HandleMenu(Int_t id)
152
{
152
{
153
//   int ret = 0;
153
   int ret = 0;
154
   char cmd[256];
154
   char cmd[256];
155
 
155
 
156
   switch(id)
156
   switch(id)
157
   {
157
   {
158
      case M_FILE_SET_LAYOUT:
158
      case M_FILE_SET_LAYOUT:
Line 162... Line 162...
162
      case M_FILE_SAVE_LAYOUT:
162
      case M_FILE_SAVE_LAYOUT:
163
         LayoutSave();
163
         LayoutSave();
164
         break;
164
         break;
165
 
165
 
166
      case M_FILE_SAVE_MSETTINGS:
166
      case M_FILE_SAVE_MSETTINGS:
167
         // Here, we save the set values in the measurement layout (automatically done when we safely exit the application and after each start of measurement).
167
         SaveMeasSettings();
168
         break;
168
         break;
169
 
169
 
170
      case M_FILE_SAVE_ASETTINGS:
170
      case M_FILE_SAVE_ASETTINGS:
-
 
171
         SaveAnalSettings();
-
 
172
         break;
-
 
173
 
-
 
174
      case M_FILE_DEF_MSETTINGS:
-
 
175
         printf("Reseting measurement settings to default.\n");
-
 
176
         sprintf(cmd, "cp %s/settings/default_measurement_settings.txt %s/settings/measurement_settings.txt", rootdir, rootdir);
-
 
177
         ret = system(cmd);
-
 
178
         break;
-
 
179
 
-
 
180
      case M_FILE_DEF_ASETTINGS:
-
 
181
         printf("Reseting analysis settings to default.\n");
171
         // Here, we save the set values in the analysis layout (automatically done when we safely exit the application and after each start of analysis).
182
         sprintf(cmd, "cp %s/settings/default_analysis_settings.txt %s/settings/analysis_settings.txt", rootdir, rootdir);
-
 
183
         ret = system(cmd);
-
 
184
         break;
-
 
185
 
-
 
186
      case M_FILE_DEF_SETTINGS:
-
 
187
         printf("Reseting all settings to default.\n");
-
 
188
         sprintf(cmd, "cp %s/settings/default_measurement_settings.txt %s/settings/measurement_settings.txt", rootdir, rootdir);
-
 
189
         ret = system(cmd);
-
 
190
         sprintf(cmd, "cp %s/settings/default_analysis_settings.txt %s/settings/analysis_settings.txt", rootdir, rootdir);
-
 
191
         ret = system(cmd);
172
         break;
192
         break;
173
 
193
 
174
      case M_FILE_CHECK_WIDTH:
194
      case M_FILE_CHECK_WIDTH:
175
         printf("\nSettings window: %dx%d\n", measLayout[0]->GetWidth(), measLayout[0]->GetHeight());
195
         printf("\nSettings window: %dx%d\n", measLayout[0]->GetWidth(), measLayout[0]->GetHeight());
176
         printf("Histogram window: %dx%d\n", measLayout[1]->GetWidth(), measLayout[1]->GetHeight());
196
         printf("Histogram window: %dx%d\n", measLayout[1]->GetWidth(), measLayout[1]->GetHeight());
Line 300... Line 320...
300
   fMenuFile->AddEntry(new TGHotString("Set &user layout"), M_FILE_SET_LAYOUT);
320
   fMenuFile->AddEntry(new TGHotString("Set &user layout"), M_FILE_SET_LAYOUT);
301
   fMenuFile->AddEntry(new TGHotString("Save &current layout"), M_FILE_SAVE_LAYOUT);
321
   fMenuFile->AddEntry(new TGHotString("Save &current layout"), M_FILE_SAVE_LAYOUT);
302
   fMenuFile->AddSeparator();
322
   fMenuFile->AddSeparator();
303
   fMenuFile->AddEntry(new TGHotString("Save current &measurement settings"), M_FILE_SAVE_MSETTINGS);
323
   fMenuFile->AddEntry(new TGHotString("Save current &measurement settings"), M_FILE_SAVE_MSETTINGS);
304
   fMenuFile->AddEntry(new TGHotString("Save current &analysis settings"), M_FILE_SAVE_ASETTINGS);
324
   fMenuFile->AddEntry(new TGHotString("Save current &analysis settings"), M_FILE_SAVE_ASETTINGS);
-
 
325
   fMenuFile->AddEntry(new TGHotString("Set default measurement settings"), M_FILE_DEF_MSETTINGS);
-
 
326
   fMenuFile->AddEntry(new TGHotString("Set default analysis settings"), M_FILE_DEF_ASETTINGS);
-
 
327
   fMenuFile->AddEntry(new TGHotString("Set default settings"), M_FILE_DEF_SETTINGS);
305
   fMenuFile->AddEntry(new TGHotString("&Check frame width (Testing)"), M_FILE_CHECK_WIDTH);
328
   fMenuFile->AddEntry(new TGHotString("&Check frame width (Testing)"), M_FILE_CHECK_WIDTH);
306
   fMenuFile->AddSeparator();
329
   fMenuFile->AddSeparator();
307
   fMenuFile->AddEntry(new TGHotString("E&xit"), M_FILE_EXIT);
330
   fMenuFile->AddEntry(new TGHotString("E&xit"), M_FILE_EXIT);
308
 
331
 
309
   // Popup menu in menubar for Analysis controls
332
   // Popup menu in menubar for Analysis controls
Line 531... Line 554...
531
   // X, Y and Z positions
554
   // X, Y and Z positions
532
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *xPos, *yPos, *zPos, *zPosMin, *zPosMax, *zPosStep -> Settings for position and Z axis scan\n");
555
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *xPos, *yPos, *zPos, *zPosMin, *zPosMax, *zPosStep -> Settings for position and Z axis scan\n");
533
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
556
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
534
   xPos = new TSubStructure();
557
   xPos = new TSubStructure();
535
   for(int i = 0; i < 6; i++) numform[i] = 0;
558
   for(int i = 0; i < 6; i++) numform[i] = 0;
536
   numform[0] = 9; numform[3] = 2; numform[4] = -100; numform[5] = 215000;
559
   numform[0] = 9; numform[3] = 2; numform[4] = -100; numform[5] = 375000; //numform[4] = -100; numform[5] = 215000;    // use commented part if Z is the longer axis and X the shorter
537
   if(xPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X:", 0, numform, "center"))
560
   if(xPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X:", 0, numform, "center"))
538
      fH2->AddFrame(xPos->outsidebox, f0centerX);
561
      fH2->AddFrame(xPos->outsidebox, f0centerX);
539
 
562
 
540
   zPosMin = new TSubStructure();
563
   zPosMin = new TSubStructure();
541
   numform[5] = 375000;
564
   numform[5] = 215000; //numform[5] = 375000;  // use commented part if Z is the longer axis and X the shorter
542
   if(zPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z (min):", 0, numform, "center"))
565
   if(zPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z (min):", 0, numform, "center"))
543
      fH2->AddFrame(zPosMin->outsidebox, f0centerX);
566
      fH2->AddFrame(zPosMin->outsidebox, f0centerX);
544
   fG1->AddFrame(fH2, f1expandXpad);
567
   fG1->AddFrame(fH2, f1expandXpad);
545
 
568
 
546
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
569
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
Line 548... Line 571...
548
   numform[5] = 215000;
571
   numform[5] = 215000;
549
   if(yPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y:", 0, numform, "center"))
572
   if(yPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y:", 0, numform, "center"))
550
      fH2->AddFrame(yPos->outsidebox, f0centerX);
573
      fH2->AddFrame(yPos->outsidebox, f0centerX);
551
 
574
 
552
   zPosMax = new TSubStructure();
575
   zPosMax = new TSubStructure();
553
   numform[5] = 375000;
576
   numform[5] = 215000; //numform[5] = 375000;  // use commented part if Z is the longer axis and X the shorter
554
   if(zPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z (max):", 0, numform, "center"))
577
   if(zPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z (max):", 0, numform, "center"))
555
      fH2->AddFrame(zPosMax->outsidebox, f0centerX);
578
      fH2->AddFrame(zPosMax->outsidebox, f0centerX);
556
   fG1->AddFrame(fH2, f1expandXpad);
579
   fG1->AddFrame(fH2, f1expandXpad);
557
   
580
   
558
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
581
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
559
   zPos = new TSubStructure();
582
   zPos = new TSubStructure();
560
   numform[5] = 375000;
583
   numform[5] = 215000; //numform[5] = 375000;  // use commented part if Z is the longer axis and X the shorter
561
   if(zPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z:", 0, numform, "center"))
584
   if(zPos->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Z:", 0, numform, "center"))
562
      fH2->AddFrame(zPos->outsidebox, f0centerX);
585
      fH2->AddFrame(zPos->outsidebox, f0centerX);
563
 
586
 
564
   zPosStep = new TSubStructure();
587
   zPosStep = new TSubStructure();
565
   for(int i = 0; i < 6; i++) numform[i] = 0;
588
   for(int i = 0; i < 6; i++) numform[i] = 0;
Line 578... Line 601...
578
   // Position scan controls
601
   // Position scan controls
579
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *xPosMin, *xPosMax, *xPosStep, *yPosMin, *yPosMax, *yPosStep -> Settings for X and Y axis scans\n");
602
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *xPosMin, *xPosMax, *xPosStep, *yPosMin, *yPosMax, *yPosStep -> Settings for X and Y axis scans\n");
580
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
603
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
581
   xPosMin = new TSubStructure();
604
   xPosMin = new TSubStructure();
582
   for(int i = 0; i < 6; i++) numform[i] = 0;
605
   for(int i = 0; i < 6; i++) numform[i] = 0;
583
   numform[0] = 9; numform[3] = 2; numform[4] = -100; numform[5] = 215000;
606
   numform[0] = 9; numform[3] = 2; numform[4] = -100; numform[5] = 375000; //numform[5] = 215000;       // use commented part if Z is the longer axis and X the shorter
584
   if(xPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X (min):", 0, numform, "center"))
607
   if(xPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X (min):", 0, numform, "center"))
585
      fH2->AddFrame(xPosMin->outsidebox, f0centerX);
608
      fH2->AddFrame(xPosMin->outsidebox, f0centerX);
586
 
609
 
587
   yPosMin = new TSubStructure();
610
   yPosMin = new TSubStructure();
-
 
611
   numform[5] = 215000;
588
   if(yPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y (min):", 0, numform, "center"))
612
   if(yPosMin->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y (min):", 0, numform, "center"))
589
      fH2->AddFrame(yPosMin->outsidebox, f0centerX);
613
      fH2->AddFrame(yPosMin->outsidebox, f0centerX);
590
   fG1->AddFrame(fH2, f1expandXpad);
614
   fG1->AddFrame(fH2, f1expandXpad);
591
 
615
 
592
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
616
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
593
   xPosMax = new TSubStructure();
617
   xPosMax = new TSubStructure();
-
 
618
   numform[5] = 375000; //numform[5] = 215000;  // use commented part if Z is the longer axis and X the shorter
594
   if(xPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X (max):", 0, numform, "center"))
619
   if(xPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "X (max):", 0, numform, "center"))
595
      fH2->AddFrame(xPosMax->outsidebox, f0centerX);
620
      fH2->AddFrame(xPosMax->outsidebox, f0centerX);
596
 
621
 
597
   yPosMax = new TSubStructure();
622
   yPosMax = new TSubStructure();
-
 
623
   numform[5] = 215000;
598
   if(yPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y (max):", 0, numform, "center"))
624
   if(yPosMax->TGLabelNEntry(fH2, 8*subgroup[0]/16, 30, "Y (max):", 0, numform, "center"))
599
      fH2->AddFrame(yPosMax->outsidebox, f0centerX);
625
      fH2->AddFrame(yPosMax->outsidebox, f0centerX);
600
   fG1->AddFrame(fH2, f1expandXpad);
626
   fG1->AddFrame(fH2, f1expandXpad);
601
 
627
 
602
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
628
   fH2 = new TGCompositeFrame(fG1, 3*subgroup[0]/4, 30, kFixedWidth | kHorizontalFrame);
Line 612... Line 638...
612
   fG1->AddFrame(fH2, f1expandXpad);
638
   fG1->AddFrame(fH2, f1expandXpad);
613
 
639
 
614
   fV1->AddFrame(fG1, f1expand2d);
640
   fV1->AddFrame(fG1, f1expand2d);
615
   // Center pane (Table position controls)
641
   // Center pane (Table position controls)
616
   fH1->AddFrame(fV1, f0leftX);
642
   fH1->AddFrame(fV1, f0leftX);
617
 
643
 
618
   // Right pane (Incidence angle controls)
644
   // Right pane (Incidence angle controls)
619
   subgroup[0] = 2*(measLayout[2]->GetWidth())/7-14;
645
   subgroup[0] = 2*(measLayout[2]->GetWidth())/7-14;
620
   fV1 = new TGCompositeFrame(fH1, subgroup[0], subgroup[1], kFixedWidth | kFixedHeight | kVerticalFrame);
646
   fV1 = new TGCompositeFrame(fH1, subgroup[0], subgroup[1], kFixedWidth | kFixedHeight | kVerticalFrame);
621
   fG1 = new TGGroupFrame(fV1, "Incidence angle controls");
647
   fG1 = new TGGroupFrame(fV1, "Incidence angle controls");
622
 
648
 
Line 627... Line 653...
627
   numform[0] = 7; numform[1] = 2; numform[3] = 2; numform[4] = -180.; numform[5] = 180.;
653
   numform[0] = 7; numform[1] = 2; numform[3] = 2; numform[4] = -180.; numform[5] = 180.;
628
   if(rotPos->TGLabelNEntry(fG1, 3*subgroup[0]/4, 30, "Incidence angle:", 0., numform, "center"))
654
   if(rotPos->TGLabelNEntry(fG1, 3*subgroup[0]/4, 30, "Incidence angle:", 0., numform, "center"))
629
      fG1->AddFrame(rotPos->outsidebox, f1expandXpad);
655
      fG1->AddFrame(rotPos->outsidebox, f1expandXpad);
630
   
656
   
631
   // Set, get, home and reset rotation buttons
657
   // Set, get, home and reset rotation buttons
632
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *rotButtons -> 5 buttons (set rotation, read current rotation, home the motor, reset controller and emergency stop)\n");
658
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *rotButtons -> 4 buttons (set rotation, read current rotation, home the motor, reset controller)\n");
633
   rotButtons = new TSubStructure();
659
   rotButtons = new TSubStructure();
634
   selnames[0] = "Set"; selnames[1] = "Get"; selnames[2] = "Home"; selnames[3] = "Reset"; selnames[4] = "Emergency stop";
660
   selnames[0] = "Set"; selnames[1] = "Get"; selnames[2] = "Home"; selnames[3] = "Reset";
635
   if(rotButtons->TGMultiButton(fG1, 3*subgroup[0]/4, 30, 5, selnames, "center"))
661
   if(rotButtons->TGMultiButton(fG1, 3*subgroup[0]/4, 30, 4, selnames, "center"))
636
      fG1->AddFrame(rotButtons->outsidebox, f1expandXpad);
662
      fG1->AddFrame(rotButtons->outsidebox, f1expandXpad);
-
 
663
   
-
 
664
   // Emergency stop rotation buttons
-
 
665
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *rotButEmergency -> 1 button (emergency stop)\n");
-
 
666
   rotButEmergency = new TSubStructure();
-
 
667
   selnames[0] = "Emergency stop";
-
 
668
   if(rotButEmergency->TGMultiButton(fG1, 3*subgroup[0]/4, 30, 1, selnames, "center"))
-
 
669
      fG1->AddFrame(rotButEmergency->outsidebox, f1expandXpad);
637
 
670
 
638
   // Rotation scan controls
671
   // Rotation scan controls
639
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *rotPosMin -> Number entry for starting angle\n");
672
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *rotPosMin -> Number entry for starting angle\n");
640
   rotPosMin = new TSubStructure();
673
   rotPosMin = new TSubStructure();
641
   if(rotPosMin->TGLabelNEntry(fG1, 3*subgroup[0]/4, 30, "Angle (min):", 0.0, numform, "center"))
674
   if(rotPosMin->TGLabelNEntry(fG1, 3*subgroup[0]/4, 30, "Angle (min):", 0.0, numform, "center"))
Line 712... Line 745...
712
   }
745
   }
713
 
746
 
714
   Pixel_t pixel_color;
747
   Pixel_t pixel_color;
715
   gClient->GetColorByName("white", pixel_color);
748
   gClient->GetColorByName("white", pixel_color);
716
   posButtons->widgetTB[4]->SetTextColor(pixel_color);
749
   posButtons->widgetTB[4]->SetTextColor(pixel_color);
717
   rotButtons->widgetTB[4]->SetTextColor(pixel_color);
750
   rotButEmergency->widgetTB[0]->SetTextColor(pixel_color);
718
   gClient->GetColorByName("red", pixel_color);
751
   gClient->GetColorByName("red", pixel_color);
719
   posButtons->widgetTB[4]->SetBackgroundColor(pixel_color);
752
   posButtons->widgetTB[4]->SetBackgroundColor(pixel_color);
720
   rotButtons->widgetTB[4]->SetBackgroundColor(pixel_color);
753
   rotButEmergency->widgetTB[0]->SetBackgroundColor(pixel_color);
721
 
754
 
722
   // Actions for Main window //TODO
755
   // Actions for Main window //TODO
723
   vOutOpt->widgetChBox[0]->Connect("Clicked()", "TGAppMainFrame", this, "NegativePolarity()");
756
   vOutOpt->widgetChBox[0]->Connect("Clicked()", "TGAppMainFrame", this, "NegativePolarity()");
724
   vOutButtons->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "VoltOut(=0)");
757
   vOutButtons->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "VoltOut(=0)");
725
   vOutButtons->widgetTB[1]->Connect("Clicked()", "TGAppMainFrame", this, "VoltOut(=1)");
758
   vOutButtons->widgetTB[1]->Connect("Clicked()", "TGAppMainFrame", this, "VoltOut(=1)");
Line 731... Line 764...
731
   posButtons->widgetTB[4]->Connect("Clicked()", "TGAppMainFrame", this, "PositionSet(=4)");
764
   posButtons->widgetTB[4]->Connect("Clicked()", "TGAppMainFrame", this, "PositionSet(=4)");
732
   rotButtons->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=0)");
765
   rotButtons->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=0)");
733
   rotButtons->widgetTB[1]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=1)");
766
   rotButtons->widgetTB[1]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=1)");
734
   rotButtons->widgetTB[2]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=2)");
767
   rotButtons->widgetTB[2]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=2)");
735
   rotButtons->widgetTB[3]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=3)");
768
   rotButtons->widgetTB[3]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=3)");
736
   rotButtons->widgetTB[4]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=4)");
769
   rotButEmergency->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "RotationSet(=4)");
737
   fileName->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "SaveFile()");
770
   fileName->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "SaveFile()");
738
   measProgress->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "StartAcq()");
771
   measProgress->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "StartAcq()");
739
   // TODO - Save file
772
   // TODO - Save file
740
 
773
 
741
// Main window -----------------------------------------------------------------------------
774
// Main window -----------------------------------------------------------------------------
Line 815... Line 848...
815
      fH1->AddFrame(dispTemp->outsidebox, f0leftX);
848
      fH1->AddFrame(dispTemp->outsidebox, f0leftX);
816
   dispTemp->widgetNE[0]->SetState(kFALSE);
849
   dispTemp->widgetNE[0]->SetState(kFALSE);
817
 
850
 
818
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *dispAngle -> Number entry for opened histogram (incidence angle)\n");
851
   if(DBGSIG > 1) printf("AppLayout(): Creating TSubStructure *dispAngle -> Number entry for opened histogram (incidence angle)\n");
819
   dispAngle = new TSubStructure();
852
   dispAngle = new TSubStructure();
820
   for(int i = 0; i < 6; i++) numform[i] = 0;
853
   for(int i = 0; i < 6; i++) numform[i] = 0;
821
   numform[0] = 7; numform[1] = 2;
854
   numform[0] = 7; numform[1] = 2;
822
   if(dispAngle->TGLabelNEntry(fH1, subgroup[0]/4-18, 30, "Angle:", 0.00, numform, "center"))
855
   if(dispAngle->TGLabelNEntry(fH1, subgroup[0]/4-18, 30, "Angle:", 0.00, numform, "center"))
823
      fH1->AddFrame(dispAngle->outsidebox, f0leftX);
856
      fH1->AddFrame(dispAngle->outsidebox, f0leftX);
824
   dispAngle->widgetNE[0]->SetState(kFALSE);
857
   dispAngle->widgetNE[0]->SetState(kFALSE);
825
   fG1->AddFrame(fH1, f0leftXpad);
858
   fG1->AddFrame(fH1, f0leftXpad);
Line 1198... Line 1231...
1198
   histOpt->widgetChBox[0]->Connect("Clicked()", "TGAppMainFrame", this, "HistogramOptions(=0)");
1231
   histOpt->widgetChBox[0]->Connect("Clicked()", "TGAppMainFrame", this, "HistogramOptions(=0)");
1199
   histOpt->widgetChBox[1]->Connect("Clicked()", "TGAppMainFrame", this, "HistogramOptions(=1)");
1232
   histOpt->widgetChBox[1]->Connect("Clicked()", "TGAppMainFrame", this, "HistogramOptions(=1)");
1200
   exportHist->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "UpdateHistogram(=1)");
1233
   exportHist->widgetTB[0]->Connect("Clicked()", "TGAppMainFrame", this, "UpdateHistogram(=1)");
1201
 
1234
 
1202
// Histogram controls pane -----------------------------------------------------------------
1235
// Histogram controls pane -----------------------------------------------------------------
-
 
1236
 
-
 
1237
   // Setting starting settings (when opening program)
-
 
1238
   GetMeasSettings();
-
 
1239
   GetAnalSettings();
1203
}
1240
}
1204
 
1241
 
1205
// -------------------------------------------------------------------
1242
// -------------------------------------------------------------------
1206
 
1243
 
1207
// Closing main window and checking about information ----------------
1244
// Closing main window and checking about information ----------------