Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::TObjectDrawable Class Referencefinal

Provides v7 drawing facilities for TObject types (TGraph etc).

Author
Sergey Linev
Date
2017-05-31
Warning
This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!

Definition at line 30 of file TObjectDrawable.hxx.

Public Types

enum  EKind { kColors = 4 , kStyle = 5 , kPalette = 6 }
 
- Public Types inherited from ROOT::Experimental::RDrawable
using Version_t = uint64_t
 

Public Member Functions

 TObjectDrawable ()
 
 TObjectDrawable (const std::shared_ptr< TObject > &obj, const std::string &opt="")
 
 TObjectDrawable (EKind kind, bool persistent=false)
 
virtual ~TObjectDrawable ()=default
 
- Public Member Functions inherited from ROOT::Experimental::RDrawable
 RDrawable (const std::string &type)
 
virtual ~RDrawable ()
 
void ClearStyle ()
 
const std::string & GetCssClass () const
 
const std::string & GetCssType () const
 
const std::string & GetId () const
 
void SetCssClass (const std::string &cl)
 
void SetId (const std::string &id)
 
virtual void UseStyle (const std::shared_ptr< RStyle > &style)
 

Protected Member Functions

void CollectShared (Internal::RIOSharedVector_t &vect) final
 
std::unique_ptr< RDisplayItemDisplay (const RDisplayContext &) override
 Create display item which will be delivered to the client.
 
void Execute (const std::string &) final
 
void PopulateMenu (RMenuItems &) final
 
- Protected Member Functions inherited from ROOT::Experimental::RDrawable
 RDrawable (const RDrawable &)=delete
 
RAttrMapGetAttrMap ()
 
const RAttrMapGetAttrMap () const
 
Version_t GetVersion () const
 
virtual bool IsFrameRequired () const
 
bool MatchSelector (const std::string &selector) const
 Preliminary method which checks if drawable matches with given selector Following selector are allowed: "type" or "#id" or ".class_name" Here type is drawable kind like 'rect' or 'pad' id is drawable identifier, specified with RDrawable::SetId() method class_name is drawable class name, specified with RDrawable::SetCssClass() method.
 
virtual void OnDisplayItemDestroyed (RDisplayItem *) const
 
RDrawableoperator= (const RDrawable &)=delete
 
virtual void SetDrawableVersion (Version_t vers)
 

Private Types

enum  { kNone = 0 , kObject = 1 }
 

Private Member Functions

std::unique_ptr< TObjectCreateSpecials (int kind)
 Create instance of requested special object.
 
const char * GetColorCode (TColor *col)
 Convert TColor to RGB string for using with SVG.
 

Private Attributes

int fKind {kNone}
 object kind
 
Internal::RIOShared< TObjectfObj
 The object to be painted.
 
std::string fOpts
 drawing options
 

#include <ROOT/TObjectDrawable.hxx>

Inheritance diagram for ROOT::Experimental::TObjectDrawable:
[legend]

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
kNone 

empty container

kObject 

plain object

Definition at line 33 of file TObjectDrawable.hxx.

◆ EKind

Enumerator
kColors 

list of ROOT colors

kStyle 

instance of TStyle object

kPalette 

list of colors from palette

Definition at line 58 of file TObjectDrawable.hxx.

Constructor & Destructor Documentation

◆ TObjectDrawable() [1/3]

ROOT::Experimental::TObjectDrawable::TObjectDrawable ( )
inline

Definition at line 64 of file TObjectDrawable.hxx.

◆ TObjectDrawable() [2/3]

ROOT::Experimental::TObjectDrawable::TObjectDrawable ( const std::shared_ptr< TObject > &  obj,
const std::string &  opt = "" 
)
inline

Definition at line 66 of file TObjectDrawable.hxx.

◆ TObjectDrawable() [3/3]

TObjectDrawable::TObjectDrawable ( EKind  kind,
bool  persistent = false 
)

Definition at line 28 of file TObjectDrawable.cxx.

◆ ~TObjectDrawable()

virtual ROOT::Experimental::TObjectDrawable::~TObjectDrawable ( )
virtualdefault

Member Function Documentation

◆ CollectShared()

void ROOT::Experimental::TObjectDrawable::CollectShared ( Internal::RIOSharedVector_t vect)
inlinefinalprotectedvirtual

Reimplemented from ROOT::Experimental::RDrawable.

Definition at line 48 of file TObjectDrawable.hxx.

◆ CreateSpecials()

std::unique_ptr< TObject > TObjectDrawable::CreateSpecials ( int  kind)
private

Create instance of requested special object.

Definition at line 54 of file TObjectDrawable.cxx.

◆ Display()

std::unique_ptr< RDisplayItem > TObjectDrawable::Display ( const RDisplayContext ctxt)
overrideprotectedvirtual

Create display item which will be delivered to the client.

Reimplemented from ROOT::Experimental::RDrawable.

Definition at line 96 of file TObjectDrawable.cxx.

◆ Execute()

void TObjectDrawable::Execute ( const std::string &  exec)
finalprotectedvirtual

Reimplemented from ROOT::Experimental::RDrawable.

Definition at line 116 of file TObjectDrawable.cxx.

◆ GetColorCode()

const char * TObjectDrawable::GetColorCode ( TColor col)
private

Convert TColor to RGB string for using with SVG.

Definition at line 39 of file TObjectDrawable.cxx.

◆ PopulateMenu()

void TObjectDrawable::PopulateMenu ( RMenuItems items)
finalprotectedvirtual

Reimplemented from ROOT::Experimental::RDrawable.

Definition at line 109 of file TObjectDrawable.cxx.

Member Data Documentation

◆ fKind

int ROOT::Experimental::TObjectDrawable::fKind {kNone}
private

object kind

Definition at line 38 of file TObjectDrawable.hxx.

◆ fObj

Internal::RIOShared<TObject> ROOT::Experimental::TObjectDrawable::fObj
private

The object to be painted.

Definition at line 39 of file TObjectDrawable.hxx.

◆ fOpts

std::string ROOT::Experimental::TObjectDrawable::fOpts
private

drawing options

Definition at line 40 of file TObjectDrawable.hxx.

Libraries for ROOT::Experimental::TObjectDrawable:

The documentation for this class was generated from the following files: