16 #include <sigc++/sigc++.h> 26 #include "TGNumberEntry.h" 27 #include "TGTextEntry.h" 28 #include "TGTextView.h" 31 #include "TEveManager.h" 34 #include "TGComboBox.h" 35 #include "TVirtualX.h" 65 : TGTransientFrame(gClient->GetDefaultRoot(),
p,
w,
h),
68 m_colorManager(colorMgr),
69 m_settersFrame(nullptr) {
71 SetCleanup(kDeepCleanup);
75 TGVerticalFrame* vf =
new TGVerticalFrame(
this);
76 AddFrame(vf,
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY, 0, 0, 0, 0));
157 m_filterError->SetForegroundColor(gVirtualX->GetPixel(kRed));
158 m_filterError->SetBackgroundColor(TGFrame::GetDefaultFrameBackground());
161 m_selectError->SetForegroundColor(gVirtualX->GetPixel(kRed));
162 m_selectError->SetBackgroundColor(TGFrame::GetDefaultFrameBackground());
168 m_colorSelectWidget->Connect(
"ColorChosen(Color_t)",
"CmsShowEDI",
this,
"changeItemColor(Color_t)");
169 m_cw->Connect(
"ColorChosen(Color_t)",
"CmsShowEDI",
this,
"changeSelectionColor(Color_t)");
170 m_opacitySlider->Connect(
"PositionChanged(Int_t)",
"CmsShowEDI",
this,
"changeItemOpacity(Int_t)");
171 m_isVisibleButton->Connect(
"Toggled(Bool_t)",
"CmsShowEDI",
this,
"toggleItemVisible(Bool_t)");
173 m_filterButton->Connect(
"Clicked()",
"CmsShowEDI",
this,
"runFilter()");
175 m_selectButton->Connect(
"Clicked()",
"CmsShowEDI",
this,
"runSelection()");
176 m_removeButton->Connect(
"Clicked()",
"CmsShowEDI",
this,
"removeItem()");
179 m_frontButton->Connect(
"Clicked()",
"CmsShowEDI",
this,
"moveToFront()");
180 m_backButton->Connect(
"Clicked()",
"CmsShowEDI",
this,
"moveToBack()");
181 m_layerEntry->Connect(
"ValueSet(Long_t)",
"CmsShowEDI",
this,
"moveToLayer(Long_t)");
183 TGCompositeFrame* cf =
m_tabs->GetTabContainer(0);
186 cf->AddFrame(
m_settersFrame,
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY));
188 SetWindowName(
"Collection Controller");
190 Resize(GetDefaultSize());
203 m_colorSelectWidget->Disconnect(
"ColorSelected(Pixel_t)",
this,
"changeItemColor(Pixel_t)");
204 m_cw->Disconnect(
"ColorSelected(Pixel_t)",
this,
"changeSelectionColor(Pixel_t)");
205 m_opacitySlider->Disconnect(
"PositionChanged(Int_t)",
this,
"changeItemColor");
206 m_isVisibleButton->Disconnect(
"Toggled(Bool_t)",
this,
"toggleItemVisible(Bool_t)");
214 m_frontButton->Disconnect(
"Clicked()",
this,
"moveToFront()");
215 m_backButton->Disconnect(
"Clicked()",
this,
"moveToBack()");
216 m_layerEntry->Disconnect(
"ValueSet(Long_t)",
this,
"moveToLayer(Long_t)");
242 TGFrameElement* el = (TGFrameElement*)
m_settersFrame->GetList()->First();
243 TGFrame*
f = el->fFrame;
252 bool multipleCollections =
false;
257 multipleCollections =
true;
290 m_cw->SetEnabled(kTRUE);
302 }
else if (multipleCollections) {
303 std::ostringstream
s;
308 Resize(GetDefaultSize());
315 std::string message(
"This action will remove the ");
318 " collection from the display." 319 "\nIf you wish to return the collection you would have to use the 'Add Collection' window.";
320 new TGMsgBox(gClient->GetDefaultRoot(),
322 "Remove Collection Confirmation",
325 kMBCancel | kMBApply,
327 if (kMBApply == chosen) {
331 gEve->EditElement(
nullptr);
446 if (
e.column() > -1) {
462 item->selectionManager()->clearModelSelectionLeaveItem();
468 if (
e.column() > -1) {
477 for (
int i = 0; i < static_cast<int>(
m_item->
size());
i++) {
483 for (
int i = 0; i < static_cast<int>(
m_item->
size());
i++) {
493 for (std::set<FWModelId>::const_iterator
i =
ss.begin();
i !=
ss.end(); ++
i) {
void populateFrame(TGCompositeFrame *frame)
void setColor(Color_t iColor)
sigc::connection m_displayChangedConn
TGHSlider * m_opacitySlider
void setType(const edm::TypeWithDict &)
TGCheckButton * m_isVisibleButton
FWGUIValidatingTextEntry * m_filterExpressionEntry
void moveToLayer(int layer)
void SetColorByIndex(Color_t iColor)
FWDialogBuilder & endTab(void)
FWProxyBuilderConfiguration * getConfig() const
sigc::signal< void(const FWSelectionManager &)> itemSelectionChanged_
FWDialogBuilder & addTextButton(const char *text, TGTextButton **out=nullptr)
FWDialogBuilder & addHSlider(size_t size, TGHSlider **out=nullptr)
Char_t transparency() const
FWDialogBuilder & addTextView(const char *defaultText=nullptr, TGTextView **out=nullptr)
FWItemChangeSignal defaultDisplayPropertiesChanged_
bool isInBack() const
returns true if item is behind all other items
FWItemChangeSignal goingToBeDestroyed_
FWModelChangeManager * changeManager() const
const std::string & processName() const
bool isInFront() const
returns true if item is in front of all other items
const std::string & moduleLabel() const
FWDialogBuilder & addLabel(const char *text, size_t fontSize=12, size_t weight=0, TGLabel **out=nullptr)
TGTextButton * m_selectAllButton
FWDialogBuilder & addCheckbox(const char *text, TGCheckButton **out=nullptr)
static int maxLayerValue()
FWDialogBuilder & vSpacer(size_t size=0)
TGCompositeFrame * m_settersFrame
void select(int iIndex) const
FWDialogBuilder & untabs(void)
TGTextEntry * m_instanceEntry
FWSelectionManager * selectionManager() const
const TClass * modelType() const
void unselect(int iIndex) const
void setDefaultDisplayProperties(const FWDisplayProperties &)
void changeItemColor(Color_t color)
TGNumberEntry * m_layerEntry
const FWDisplayProperties & defaultDisplayProperties() const
TGTextButton * m_deselectAllButton
void setValidator(FWValidatorBase *)
const std::string & filterExpression() const
TGTextButton * m_backButton
TGTextEntry * m_moduleEntry
void select(FWEventItem *iItem, const std::string &iExpression, Color_t iColor=-1) const
sigc::connection m_destroyedConn
FWDialogBuilder & addHSeparator(size_t horizontalPadding=4, size_t verticalPadding=3)
static int minLayerValue()
FWDialogBuilder & tabs(TGTab **out)
void changeItemOpacity(Int_t opacity)
FWDialogBuilder & addValidatingTextEntry(const char *defaultText, FWGUIValidatingTextEntry **out)
TGTextView * m_selectError
FWDialogBuilder & addTextEntry(const char *defaultText, TGTextEntry **out)
TGTextButton * m_removeButton
FWDialogBuilder & floatLeft(size_t spacing=3)
FWExpressionValidator * m_validator
const TClass * type() const
const std::string & name() const
void setFilterExpression(const std::string &)
TGTextView * m_filterError
TGTextEntry * m_processEntry
FWDialogBuilder & expand(size_t expandX=true, size_t expandY=false)
void setTransparency(Char_t transparency)
FWColorSelect * m_colorSelectWidget
FWModelChangeSignal changed_
TGTextButton * m_filterButton
CmsShowEDI(const TGWindow *p=nullptr, UInt_t w=1, UInt_t h=1, FWSelectionManager *selMgr=nullptr, FWColorManager *colorMgr=nullptr)
FWSelectionManager * m_selectionManager
void setDisplayProperties(int iIndex, const FWDisplayProperties &) const
TGTextEntry * m_typeEntry
void toggleItemVisible(Bool_t on=kTRUE)
FWDialogBuilder & beginTab(const char *label)
const std::set< FWModelId > & selected() const
void setIsVisible(bool iSet)
sigc::connection m_modelChangedConn
void updateLayerControls()
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
FWGUIValidatingTextEntry * m_selectExpressionEntry
TGTextEntry * m_nameEntry
const std::string & productInstanceLabel() const
FWDialogBuilder & indent(int left=2, int right=-1)
FWDialogBuilder & addNumberEntry(float defaultValue, size_t digits, TGNumberFormat::EStyle style, int min, int max, TGNumberEntry **out)
FWDialogBuilder & addColorPicker(const FWColorManager *manager, FWColorSelect **out=nullptr)
const std::set< FWEventItem * > & selectedItems() const
void changeSelectionColor(Color_t color)
TGTextButton * m_frontButton
void show(FWDataCategories)
TGTextButton * m_selectButton