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

Drawing fill attributes for different objects.

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

Definition at line 26 of file RAttrFill.hxx.

Public Types

enum  EStyle {
  kHollow = 0 , kNone = 0 , kSolid = 1001 , k3001 = 3001 ,
  k3002 = 3002 , k3003 = 3003 , k3004 = 3004 , k3005 = 3005 ,
  k3006 = 3006 , k3007 = 3007 , k3008 = 3008 , k3009 = 3009 ,
  k3010 = 3010 , k3011 = 3011 , k3012 = 3012 , k3013 = 3013 ,
  k3014 = 3014 , k3015 = 3015 , k3016 = 3016 , k3017 = 3017 ,
  k3018 = 3018 , k3019 = 3019 , k3020 = 3020 , k3021 = 3021 ,
  k3022 = 3022 , k3023 = 3023 , k3024 = 3024 , k3025 = 3025
}

Public Member Functions

 RAttrFill ()=default
 RAttrFill (const RAttrFill &src)
 RAttrFill (RAttrBase *parent, const char *prefix="fill")
 RAttrFill (RColor _color, EStyle _style)
 RAttrFill (RDrawable *drawable, const char *prefix="fill")
void Clear () override
 Clear all respective values from drawable. Only defaults can be used.
RAttrFilloperator= (const RAttrFill &src)

Public Attributes

RAttrValue< RColorcolor {this, "color", RColor::kBlack}
 ! fill color
RAttrValue< EStylestyle {this, "style", kHollow}
 ! fill style

Protected Member Functions

const Rec_t AccessAttr (const std::string &name) const
 Find attributes container and full-qualified name for value.
const Val_t AccessValue (const std::string &name, bool use_style=true) const
 Search value with given name in attributes.
void ClearValue (const std::string &name)
 Clear value if any with specified name.
RAttrMap CollectDefaults () const override
 Collect all attributes in derived class Works only if such class has dictionary.
void CopyTo (RAttrAggregation &tgt, bool use_style=true) const
 Copy attributes into target object.
bool CopyValue (const std::string &name, const RAttrMap::Value_t &value, bool check_type=true)
 Copy attributes from other object.
Rec_t EnsureAttr (const std::string &name)
 Ensure attribute with give name exists - creates container for attributes if required.
const RAttrMapGetDefaults () const override
 Return default values for attributes, empty for base class.
RDrawableGetDrawable () const
RAttrMapGetOwnAttr () const
RAttrBaseGetParent () const
const char * GetPrefix () const
bool IsAggregation () const final
bool IsSame (const RAttrAggregation &src, bool use_style=true) const
 Check if all values which are evaluated in this object are exactly the same as in tgt object.
bool IsValueEqual (const std::string &name, const RAttrMap::Value_t &value, bool use_style=false) const
 Check if provided value equal to attribute in the map.
void MoveTo (RAttrBase &tgt)
 Move all fields into target object.
void SetNoValue (const std::string &name)
 Set <NoValue> for attribute.

Private Types

enum  { kDrawable , kParent , kOwnAttr }

Private Member Functions

void ClearData ()
 Clear internal data.
RAttrMapCreateOwnAttr ()
 Creates own attribute - only if no drawable and no parent are assigned.

Private Attributes

const char * fPrefix {nullptr}
 ! name prefix for all attributes values
enum ROOT::Experimental::RAttrBase:: { ... }  kDrawable
 ! kind of data
union { 
   RDrawable *   drawable 
   RAttrMap *   ownattr 
   RAttrBase *   parent 
nullptr
 ! data

#include <ROOT/RAttrFill.hxx>

Inheritance diagram for ROOT::Experimental::RAttrFill:
ROOT::Experimental::RAttrAggregation ROOT::Experimental::RAttrBase

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
privateinherited
Enumerator
kDrawable 
kParent 
kOwnAttr 

Definition at line 37 of file RAttrBase.hxx.

◆ EStyle

Enumerator
kHollow 
kNone 
kSolid 
k3001 
k3002 
k3003 
k3004 
k3005 
k3006 
k3007 
k3008 
k3009 
k3010 
k3011 
k3012 
k3013 
k3014 
k3015 
k3016 
k3017 
k3018 
k3019 
k3020 
k3021 
k3022 
k3023 
k3024 
k3025 

Definition at line 32 of file RAttrFill.hxx.

Constructor & Destructor Documentation

◆ RAttrFill() [1/5]

ROOT::Experimental::RAttrFill::RAttrFill ( )
default

◆ RAttrFill() [2/5]

ROOT::Experimental::RAttrFill::RAttrFill ( RDrawable * drawable,
const char * prefix = "fill" )
inline

Definition at line 28 of file RAttrFill.hxx.

◆ RAttrFill() [3/5]

ROOT::Experimental::RAttrFill::RAttrFill ( RAttrBase * parent,
const char * prefix = "fill" )
inline

Definition at line 28 of file RAttrFill.hxx.

◆ RAttrFill() [4/5]

ROOT::Experimental::RAttrFill::RAttrFill ( const RAttrFill & src)
inline

Definition at line 28 of file RAttrFill.hxx.

◆ RAttrFill() [5/5]

ROOT::Experimental::RAttrFill::RAttrFill ( RColor _color,
EStyle _style )
inline

Definition at line 46 of file RAttrFill.hxx.

Member Function Documentation

◆ AccessAttr()

const Rec_t ROOT::Experimental::RAttrBase::AccessAttr ( const std::string & name) const
inlineprotectedinherited

Find attributes container and full-qualified name for value.

Definition at line 70 of file RAttrBase.hxx.

◆ AccessValue()

const Val_t ROOT::Experimental::RAttrBase::AccessValue ( const std::string & name,
bool use_style = true ) const
inlineprotectedinherited

Search value with given name in attributes.

Definition at line 95 of file RAttrBase.hxx.

◆ Clear()

void RAttrAggregation::Clear ( )
overridevirtualinherited

Clear all respective values from drawable. Only defaults can be used.

Implements ROOT::Experimental::RAttrBase.

Definition at line 118 of file RAttrAggregation.cxx.

◆ ClearData()

void RAttrBase::ClearData ( )
privateinherited

Clear internal data.

Definition at line 26 of file RAttrBase.cxx.

◆ ClearValue()

void RAttrBase::ClearValue ( const std::string & name)
protectedinherited

Clear value if any with specified name.

Definition at line 54 of file RAttrBase.cxx.

◆ CollectDefaults()

RAttrMap RAttrAggregation::CollectDefaults ( ) const
overrideprotectedvirtualinherited

Collect all attributes in derived class Works only if such class has dictionary.

In special cases one has to provide special implementation directly

Implements ROOT::Experimental::RAttrBase.

Definition at line 37 of file RAttrAggregation.cxx.

◆ CopyTo()

void RAttrAggregation::CopyTo ( RAttrAggregation & tgt,
bool use_style = true ) const
protectedinherited

Copy attributes into target object.

Definition at line 60 of file RAttrAggregation.cxx.

◆ CopyValue()

bool RAttrAggregation::CopyValue ( const std::string & name,
const RAttrMap::Value_t & value,
bool check_type = true )
protectedinherited

Copy attributes from other object.

Definition at line 71 of file RAttrAggregation.cxx.

◆ CreateOwnAttr()

RAttrMap * RAttrBase::CreateOwnAttr ( )
privateinherited

Creates own attribute - only if no drawable and no parent are assigned.

Definition at line 37 of file RAttrBase.cxx.

◆ EnsureAttr()

Rec_t ROOT::Experimental::RAttrBase::EnsureAttr ( const std::string & name)
inlineprotectedinherited

Ensure attribute with give name exists - creates container for attributes if required.

Definition at line 112 of file RAttrBase.hxx.

◆ GetDefaults()

const RAttrMap & ROOT::Experimental::RAttrFill::GetDefaults ( ) const
inlineoverrideprotectedvirtual

Return default values for attributes, empty for base class.

Reimplemented from ROOT::Experimental::RAttrAggregation.

Definition at line 28 of file RAttrFill.hxx.

◆ GetDrawable()

RDrawable * ROOT::Experimental::RAttrBase::GetDrawable ( ) const
inlineprotectedinherited

Definition at line 52 of file RAttrBase.hxx.

◆ GetOwnAttr()

RAttrMap * ROOT::Experimental::RAttrBase::GetOwnAttr ( ) const
inlineprotectedinherited

Definition at line 54 of file RAttrBase.hxx.

◆ GetParent()

RAttrBase * ROOT::Experimental::RAttrBase::GetParent ( ) const
inlineprotectedinherited

Definition at line 53 of file RAttrBase.hxx.

◆ GetPrefix()

const char * ROOT::Experimental::RAttrBase::GetPrefix ( ) const
inlineprotectedinherited

Definition at line 153 of file RAttrBase.hxx.

◆ IsAggregation()

bool ROOT::Experimental::RAttrAggregation::IsAggregation ( ) const
inlinefinalprotectedvirtualinherited

Reimplemented from ROOT::Experimental::RAttrBase.

Definition at line 33 of file RAttrAggregation.hxx.

◆ IsSame()

bool RAttrAggregation::IsSame ( const RAttrAggregation & src,
bool use_style = true ) const
protectedinherited

Check if all values which are evaluated in this object are exactly the same as in tgt object.

Definition at line 103 of file RAttrAggregation.cxx.

◆ IsValueEqual()

bool RAttrAggregation::IsValueEqual ( const std::string & name,
const RAttrMap::Value_t & value,
bool use_style = false ) const
protectedinherited

Check if provided value equal to attribute in the map.

Definition at line 91 of file RAttrAggregation.cxx.

◆ MoveTo()

void RAttrBase::MoveTo ( RAttrBase & tgt)
protectedinherited

Move all fields into target object.

Definition at line 73 of file RAttrBase.cxx.

◆ operator=()

RAttrFill & ROOT::Experimental::RAttrFill::operator= ( const RAttrFill & src)
inline

Definition at line 28 of file RAttrFill.hxx.

◆ SetNoValue()

void RAttrBase::SetNoValue ( const std::string & name)
protectedinherited

Set <NoValue> for attribute.

Ensure that value can not be configured via style - defaults will be used Equivalent to css syntax { attrname:; }

Definition at line 64 of file RAttrBase.cxx.

Member Data Documentation

◆ color

RAttrValue<RColor> ROOT::Experimental::RAttrFill::color {this, "color", RColor::kBlack}

! fill color

Definition at line 43 of file RAttrFill.hxx.

◆ drawable

RDrawable* ROOT::Experimental::RAttrBase::drawable
inherited

Definition at line 40 of file RAttrBase.hxx.

◆ fPrefix

const char* ROOT::Experimental::RAttrBase::fPrefix {nullptr}
privateinherited

! name prefix for all attributes values

Definition at line 45 of file RAttrBase.hxx.

◆ []

enum { ... } ROOT::Experimental::RAttrBase::kDrawable

! kind of data

◆ [union]

union { ... } ROOT::Experimental::RAttrBase::nullptr

! data

◆ ownattr

RAttrMap* ROOT::Experimental::RAttrBase::ownattr
inherited

Definition at line 42 of file RAttrBase.hxx.

◆ parent

RAttrBase* ROOT::Experimental::RAttrBase::parent
inherited

Definition at line 41 of file RAttrBase.hxx.

◆ style

RAttrValue<EStyle> ROOT::Experimental::RAttrFill::style {this, "style", kHollow}

! fill style

Definition at line 44 of file RAttrFill.hxx.


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