ROOT logo
#ifndef __DGFEditCoincPatternPanel_h__
#define __DGFEditCoincPatternPanel_h__

//_________________________________________________[C++ CLASS DEFINITION FILE]
//////////////////////////////////////////////////////////////////////////////
// Name:           DGFEditCoincPattern.h
// Purpose:        Class defs for the XIA DGF-4C GUI
// Class:          DGFEditCoincPatternPanel
// Description:    A GUI to operate a XIA DGF-4C
// Author:         R. Lutter
// Revision:       $Id: DGFEditCoincPatternPanel.h,v 1.7 2008-12-29 13:48:24 Rudolf.Lutter Exp $       
// Date:           
// URL:            
// Keywords:       
//////////////////////////////////////////////////////////////////////////////

#include "TList.h"

#include "TGWindow.h"
#include "TGFrame.h"
#include "TGButton.h"
#include "TGTextEntry.h"

#include "TMrbLofNamedX.h"
#include "TMrbDGF.h"

#include "TGMrbTextButton.h"
#include "TGMrbCheckButton.h"
#include "TGMrbLabelEntry.h"

#include "DGFControlCommon.h"

//______________________________________________________[C++ CLASS DEFINITION]
//////////////////////////////////////////////////////////////////////////////
// Name:           DGFEditCoincPatternPanel
// Purpose:        Main frame to edit coinc patterns
// Description:    A dialog window to modify coinc patterns
// Keywords:       
//////////////////////////////////////////////////////////////////////////////

class DGFEditCoincPatternPanel : public TGMainFrame {

	public:

		// cmd ids to dispatch over X events in this panel
		enum EDGFEditCoincPatternCmdId 	{	kDGFEditCoincPatternButtonApply,			//		apply
											kDGFEditCoincPatternButtonSetAll,			//		set all bits
											kDGFEditCoincPatternButtonReset,			//		reset
											kDGFEditCoincPatternButtonClose				//		close
									};

		// geometry settings
		enum					{	kFrameWidth 			= 350					};
		enum					{	kFrameHeight 			= 380					};

		enum					{	kLEWidth				= kAutoWidth			};
		enum					{	kEntryWidth				= 400					};
		enum					{	kLEHeight				= 20					};

		enum					{	kButtonWidth			= kAutoWidth			};
		enum					{	kButtonHeight			= 20					};

	public:
		DGFEditCoincPatternPanel(const TGWindow * Parent, TGTextEntry * Entry,
											UInt_t Width, UInt_t Height, UInt_t Options = kMainFrame | kVerticalFrame);
		virtual ~DGFEditCoincPatternPanel() { fHeap.Delete(); };

		void PerformAction(Int_t FrameId, Int_t Selection); 	// slot method

	protected:
		TList fHeap;								//! list of objects created on heap
		TGGroupFrame * fPatternFrame;
		TGMrbCheckButtonGroup * fLeftFrame;
		TGMrbCheckButtonGroup * fRightFrame;
		TGMrbLabelEntry * fCoincTime;				// coinc time
		TGMrbTextButtonList * fButtonFrame; 		// buttons: apply/close

		TGTextEntry * fEntry;						// entry to be editied

		TMrbLofNamedX fLofCoincPatternsLeft;		// list of coinc patterns (left)
		TMrbLofNamedX fLofCoincPatternsRight;		// list of coinc patterns (right)
		TMrbLofNamedX fLofButtons;					// list of buttons

	ClassDef(DGFEditCoincPatternPanel, 0)	// [DGFControl] Edit coincidence pattern
};

#endif
 DGFEditCoincPatternPanel.h:1
 DGFEditCoincPatternPanel.h:2
 DGFEditCoincPatternPanel.h:3
 DGFEditCoincPatternPanel.h:4
 DGFEditCoincPatternPanel.h:5
 DGFEditCoincPatternPanel.h:6
 DGFEditCoincPatternPanel.h:7
 DGFEditCoincPatternPanel.h:8
 DGFEditCoincPatternPanel.h:9
 DGFEditCoincPatternPanel.h:10
 DGFEditCoincPatternPanel.h:11
 DGFEditCoincPatternPanel.h:12
 DGFEditCoincPatternPanel.h:13
 DGFEditCoincPatternPanel.h:14
 DGFEditCoincPatternPanel.h:15
 DGFEditCoincPatternPanel.h:16
 DGFEditCoincPatternPanel.h:17
 DGFEditCoincPatternPanel.h:18
 DGFEditCoincPatternPanel.h:19
 DGFEditCoincPatternPanel.h:20
 DGFEditCoincPatternPanel.h:21
 DGFEditCoincPatternPanel.h:22
 DGFEditCoincPatternPanel.h:23
 DGFEditCoincPatternPanel.h:24
 DGFEditCoincPatternPanel.h:25
 DGFEditCoincPatternPanel.h:26
 DGFEditCoincPatternPanel.h:27
 DGFEditCoincPatternPanel.h:28
 DGFEditCoincPatternPanel.h:29
 DGFEditCoincPatternPanel.h:30
 DGFEditCoincPatternPanel.h:31
 DGFEditCoincPatternPanel.h:32
 DGFEditCoincPatternPanel.h:33
 DGFEditCoincPatternPanel.h:34
 DGFEditCoincPatternPanel.h:35
 DGFEditCoincPatternPanel.h:36
 DGFEditCoincPatternPanel.h:37
 DGFEditCoincPatternPanel.h:38
 DGFEditCoincPatternPanel.h:39
 DGFEditCoincPatternPanel.h:40
 DGFEditCoincPatternPanel.h:41
 DGFEditCoincPatternPanel.h:42
 DGFEditCoincPatternPanel.h:43
 DGFEditCoincPatternPanel.h:44
 DGFEditCoincPatternPanel.h:45
 DGFEditCoincPatternPanel.h:46
 DGFEditCoincPatternPanel.h:47
 DGFEditCoincPatternPanel.h:48
 DGFEditCoincPatternPanel.h:49
 DGFEditCoincPatternPanel.h:50
 DGFEditCoincPatternPanel.h:51
 DGFEditCoincPatternPanel.h:52
 DGFEditCoincPatternPanel.h:53
 DGFEditCoincPatternPanel.h:54
 DGFEditCoincPatternPanel.h:55
 DGFEditCoincPatternPanel.h:56
 DGFEditCoincPatternPanel.h:57
 DGFEditCoincPatternPanel.h:58
 DGFEditCoincPatternPanel.h:59
 DGFEditCoincPatternPanel.h:60
 DGFEditCoincPatternPanel.h:61
 DGFEditCoincPatternPanel.h:62
 DGFEditCoincPatternPanel.h:63
 DGFEditCoincPatternPanel.h:64
 DGFEditCoincPatternPanel.h:65
 DGFEditCoincPatternPanel.h:66
 DGFEditCoincPatternPanel.h:67
 DGFEditCoincPatternPanel.h:68
 DGFEditCoincPatternPanel.h:69
 DGFEditCoincPatternPanel.h:70
 DGFEditCoincPatternPanel.h:71
 DGFEditCoincPatternPanel.h:72
 DGFEditCoincPatternPanel.h:73
 DGFEditCoincPatternPanel.h:74
 DGFEditCoincPatternPanel.h:75
 DGFEditCoincPatternPanel.h:76
 DGFEditCoincPatternPanel.h:77
 DGFEditCoincPatternPanel.h:78
 DGFEditCoincPatternPanel.h:79
 DGFEditCoincPatternPanel.h:80
 DGFEditCoincPatternPanel.h:81
 DGFEditCoincPatternPanel.h:82
 DGFEditCoincPatternPanel.h:83
 DGFEditCoincPatternPanel.h:84
 DGFEditCoincPatternPanel.h:85
 DGFEditCoincPatternPanel.h:86
 DGFEditCoincPatternPanel.h:87