9 #ifndef ROOT7_RDisplayItem
10 #define ROOT7_RDisplayItem
17 namespace Experimental {
32 std::string fObjectID;
33 RStyle *fStyle{
nullptr};
37 RDisplayItem() =
default;
38 virtual ~RDisplayItem() {}
40 void SetObjectID(
const std::string &
id) { fObjectID = id; }
41 std::string GetObjectID()
const {
return fObjectID; }
43 void SetObjectIDAsPtr(
const void *ptr);
45 void SetStyle(RStyle *style) { fStyle = style; }
47 void SetIndex(
unsigned indx) { fIndex = indx; }
48 unsigned GetIndex()
const {
return fIndex; }
50 virtual void BuildFullId(
const std::string &prefix);
52 static std::string ObjectIDFromPtr(
const void *ptr);
64 class RDrawableDisplayItem :
public RDisplayItem {
67 const RDrawable *fDrawable{
nullptr};
71 template <
class DRAWABLE>
72 RDrawableDisplayItem(
const DRAWABLE &dr)
87 class RObjectDisplayItem :
public RDisplayItem {
90 const TObject *fObject{
nullptr};
95 RObjectDisplayItem(
const TObject *obj,
const std::string &opt)