#include <CfgEdit.h>
Public Member Functions | |
| ParamFrame (const TGWindow *p, cfg::Config *cfg, std::vector< std::string > &names, std::vector< std::string > &tags, std::vector< std::string > &comments, std::vector< TGTextEntry * > &fT2) | |
| virtual | ~ParamFrame () |
| TGGroupFrame * | GetFrame () const |
| void | SetCanvas (TGCanvas *canvas) |
| void | HandleMouseWheel (Event_t *event) |
| int | GetHeight () const |
| int | GetWidth () const |
Private Member Functions | |
| RQ_OBJECT ("evdb::ParamFrame") | |
Private Attributes | |
| TGGroupFrame * | fFrame |
| TGCanvas * | fCanvas |
| TGMatrixLayout * | fML |
Definition at line 23 of file CfgEdit.h.
|
||||||||||||||||||||||||||||
|
Definition at line 35 of file CfgEdit.cxx. References fCanvas, fFrame, fML, cfg::Param::GetComment(), cfg::Param::GetName(), cfg::Config::ParMap(), and cfg::Param::XMLTag().
00041 {
00042 // Create tile view container. Used to show colormap.
00043
00044 fFrame = new TGGroupFrame(p, "Parameters", kVerticalFrame);
00045
00046 TGLayoutHints* fLH3 = new TGLayoutHints(kLHintsCenterX|kLHintsExpandX,
00047 2,2,2,2);
00048
00049 fML = new TGMatrixLayout(fFrame, 0, 2, 2);
00050 fFrame->SetLayoutManager(fML);
00051 cfg::Config::ParamMap::iterator itr (cfg->ParMap().begin());
00052 cfg::Config::ParamMap::iterator itrEnd(cfg->ParMap().end());
00053
00054 int h=0;
00055
00056 for (;itr!=itrEnd;++itr) {
00057 cfg::Param* p = itr->second;
00058
00059 // Store the parameter fields for later edit operation
00060 name. push_back( p->GetName() );
00061 tag. push_back( p->XMLTag() );
00062 comment.push_back( p->GetComment() );
00063
00064 // Build the parameter label
00065 std::ostringstream tag;
00066 tag << p->GetName() << " <" << p->XMLTag() << ">";
00067 TGTextButton*
00068 b = new TGTextButton(fFrame,
00069 tag.str().c_str(),
00070 -1,
00071 TGButton::GetDefaultGC()(),
00072 TGTextButton::GetDefaultFontStruct(),
00073 0);
00074 b->SetToolTipText(p->GetComment());
00075 fFrame->AddFrame(b, fLH3);
00076
00077 // Build the text edit box for the values
00078 std::ostringstream value;
00079 value << (*p);
00080 TGTextEntry* t = new TGTextEntry(fFrame, value.str().c_str());
00081
00082 // Set the size of the edit box
00083 t->Resize(225,18);
00084 fFrame->AddFrame(t, fLH3);
00085 fT2.push_back(t);
00086 h += 18;
00087 }
00088
00089 fFrame->Resize(fFrame->GetWidth(), 400);
00090
00091 fFrame->Connect("ProcessedEvent(Event_t*)", "evdb::ParamFrame", this,
00092 "HandleMouseWheel(Event_t*)");
00093 fCanvas = 0;
00094
00095 delete fLH3;
00096 }
|
|
|
Definition at line 38 of file CfgEdit.h. References fFrame.
00038 { delete fFrame; }
|
|
|
Definition at line 40 of file CfgEdit.h. References fFrame. Referenced by evdb::CfgEdit::CfgEdit().
00040 { return fFrame; }
|
|
|
Definition at line 100 of file CfgEdit.cxx. References fFrame. Referenced by evdb::CfgEdit::CfgEdit().
|
|
|
Definition at line 108 of file CfgEdit.cxx. References fFrame.
|
|
|
Definition at line 116 of file CfgEdit.cxx. References fCanvas.
00117 {
00118 // Handle mouse wheel to scroll.
00119
00120 if (event->fType != kButtonPress && event->fType != kButtonRelease)
00121 return;
00122
00123 Int_t page = 0;
00124 if (event->fCode == kButton4 || event->fCode == kButton5) {
00125 if (!fCanvas) return;
00126 if (fCanvas->GetContainer()->GetHeight())
00127 page = Int_t(Float_t(fCanvas->GetViewPort()->GetHeight() *
00128 fCanvas->GetViewPort()->GetHeight()) /
00129 fCanvas->GetContainer()->GetHeight());
00130 }
00131
00132 if (event->fCode == kButton4) {
00133 //scroll up
00134 Int_t newpos = fCanvas->GetVsbPosition() - page;
00135 if (newpos < 0) newpos = 0;
00136 fCanvas->SetVsbPosition(newpos);
00137 }
00138 if (event->fCode == kButton5) {
00139 // scroll down
00140 Int_t newpos = fCanvas->GetVsbPosition() + page;
00141 fCanvas->SetVsbPosition(newpos);
00142 }
00143 }
|
|
|
|
|
|
Definition at line 42 of file CfgEdit.h. References fCanvas. Referenced by evdb::CfgEdit::CfgEdit().
00042 { fCanvas = canvas; }
|
|
|
Definition at line 28 of file CfgEdit.h. Referenced by HandleMouseWheel(), ParamFrame(), and SetCanvas(). |
|
|
Definition at line 27 of file CfgEdit.h. Referenced by GetFrame(), GetHeight(), GetWidth(), ParamFrame(), and ~ParamFrame(). |
|
|
Definition at line 29 of file CfgEdit.h. Referenced by ParamFrame(). |
1.3.5