9#ifndef ROOT7_TObjectDrawable 
   10#define ROOT7_TObjectDrawable 
   24namespace Experimental {
 
   27class TObjectDisplayItem;
 
   57   std::unique_ptr<RDisplayItem> 
Display(
const RDisplayContext &) 
override;
 
   61   void Execute(
const std::string &) 
final;
 
   87   TObjectDrawable(
const std::shared_ptr<TObject> &obj, 
const std::string &opt);
 
 
Drawing fill attributes for different objects.
 
Drawing line attributes for different objects.
 
Base class for drawable entities: objects that can be painted on a RPad.
 
Provides v7 drawing facilities for TObject types (TGraph, TH1, TH2, etc).
 
RAttrValue< std::string > options
! object draw options
 
void Reset()
Reset object.
 
@ kColors
list of ROOT colors
 
@ kPalette
list of colors from palette
 
@ kStyle
instance of TStyle object
 
TObjectDrawable()
Default constructor.
 
static void ExtractObjectColors(std::unique_ptr< TObjectDisplayItem > &item, const TObject *obj)
Check if object has specified color value and store it in display item Ensure that color matches on c...
 
static void CheckOwnership(TObject *obj)
Checks object ownership - used for TH1 directory handling and TF1 globals lists.
 
Internal::RIOShared< TObject > fObj
The object to be painted, owned by the drawable.
 
RAttrText text
! object text attributes
 
RAttrFill fill
! object fill attributes
 
std::unique_ptr< TObject > CreateSpecials(int kind)
Create instance of requested special object.
 
void PopulateMenu(RMenuItems &) final
fill context menu items for the ROOT class
 
static std::string GetColorCode(TColor *col)
Convert TColor to RGB string for using with SVG.
 
void CollectShared(Internal::RIOSharedVector_t &vect) final
 
void Execute(const std::string &) final
Execute object method.
 
std::unique_ptr< RDisplayItem > Display(const RDisplayContext &) override
Create display item which will be delivered to the client.
 
const TObject * Get()
Return assigned object.
 
static const char * DetectCssType(const TObject *obj)
Provide css type.
 
const TObject * fExtObj
! external object, managed outside of the drawable, not persistent
 
void Set(TObject *obj, bool isowner=false)
Set object.
 
RAttrMarker marker
! object marker attributes
 
~TObjectDrawable() override
Destructor.
 
RAttrLine line
! object line attributes
 
TClass instances represent classes, structs and namespaces in the ROOT type system.
 
The color creation and management class.
 
Mother of all ROOT objects.
 
std::vector< RIOSharedBase * > RIOSharedVector_t