// @(#)root/ged:$Name: $:$Id: TGedMarkerSelect.h,v 1.5 2004/06/16 08:58:34 rdm Exp $
// Author: Marek Biskup, Ilka Antcheva 24/07/03
/*************************************************************************
* Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TGedMarkerSelect
#define ROOT_TGedMarkerSelect
//////////////////////////////////////////////////////////////////////////
// //
// TGedMarkerPopup and TGedMarkerSelect. //
// //
// The TGedMarkerPopup is a popup containing all diferent styles of //
// markers. //
// //
// The TGedMarkerSelect widget is a button with marker drawn inside //
// and a little down arrow. When clicked the TGMarkerPopup. //
// //
// Selecting a marker in this widget will generate the event: //
// kC_MARKERSEL, kMAR_SELCHANGED, widget id, pixel. //
// //
// and the signal: //
// MarkerSelected(Style_t marker) //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TGButton
#include "TGButton.h"
#endif
#ifndef ROOT_TGToolTip
#include "TGToolTip.h"
#endif
#ifndef ROOT_TGedPatternSelect
#include "TGedPatternSelect.h"
#endif
class TGedMarkerPopup : public TGedPopup {
protected:
Style_t fCurrentStyle;
public:
TGedMarkerPopup(const TGWindow *p, const TGWindow *m, Style_t markerStyle);
virtual ~TGedMarkerPopup();
virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
ClassDef(TGedMarkerPopup,0) //marker select popup
};
class TGedMarkerSelect : public TGedSelect {
protected:
Style_t fMarkerStyle;
const TGPicture *fPicture;
virtual void DoRedraw();
public:
TGedMarkerSelect(const TGWindow *p, Style_t markerStyle, Int_t id);
virtual ~TGedMarkerSelect() { if(fPicture) gClient->FreePicture(fPicture);}
virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
void SetMarkerStyle(Style_t pattern);
Style_t GetMarkerStyle() const { return fMarkerStyle; }
virtual void SavePrimitive(ofstream &out, Option_t *);
virtual TGDimension GetDefaultSize() const { return TGDimension(38, 21); }
virtual void MarkerSelected(Style_t marker = 0)
{ Emit("MarkerSelected(Style_t)", marker ? marker : GetMarkerStyle()); } // *SIGNAL*
ClassDef(TGedMarkerSelect,0) // Marker selection button
};
#endif
syntax highlighted by Code2HTML, v. 0.9.1