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

A font attributes, used together with text attributes.

Author
Sergey Linev s.lin.nosp@m.ev@g.nosp@m.si.de
Date
2021-06-28
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 RAttrFont.hxx.

Public Types

enum  EFont {
  kTimesItalic = 1 , kTimesBold = 2 , kTimesBoldItalic = 3 , kArial = 4 ,
  kArialOblique = 5 , kArialBold = 6 , kArialBoldOblique = 7 , kCourier = 8 ,
  kCourierOblique = 9 , kCourierBold = 10 , kCourierBoldOblique = 11 , kTimes = 13 ,
  kVerdana = 16 , kVerdanaItalic = 17 , kVerdanaBold = 18 , kVerdanaBoldItalic = 19
}
 

Public Member Functions

 RAttrFont ()=default
 
 RAttrFont (const RAttrFont &src)
 
 RAttrFont (RAttrBase *parent, const char *prefix="font")
 
 RAttrFont (RDrawable *drawable, const char *prefix="font")
 
void Clear () override
 Clear all respective values from drawable. Only defaults can be used.
 
std::string GetFullName () const
 Returns full font name including weight and style.
 
RAttrFont & operator= (const RAttrFont &src)
 
RAttrFont & operator= (EFont id)
 assign font id, setting all necessary properties
 
RAttrFont & SetFont (EFont font)
 Set text font by id as usually handled in the ROOT (without precision), number should be between 1 and 15.
 

Public Attributes

RAttrValue< std::string > family {this, "family"}
 ! font family, corresponds to css font-familty attribute
 
RAttrValue< std::string > style {this, "style"}
 ! font style, corresponds to css font-style attribute
 
RAttrValue< std::string > weight {this, "weight"}
 ! font weight, corresponds to css font-weight attribute
 

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 RAttrMap & GetDefaults () const override
 Return default values for attributes, empty for base class.
 
RDrawable * GetDrawable () const
 
RAttrMap * GetOwnAttr () const
 
RAttrBase * GetParent () 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.
 
RAttrMap * CreateOwnAttr ()
 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
 

Friends

bool operator== (const RAttrFont &font, EFont id)
 

#include <ROOT/RAttrFont.hxx>

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

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
privateinherited
Enumerator
kDrawable 
kParent 
kOwnAttr 

Definition at line 37 of file RAttrBase.hxx.

◆ EFont

Enumerator
kTimesItalic 
kTimesBold 
kTimesBoldItalic 
kArial 
kArialOblique 
kArialBold 
kArialBoldOblique 
kCourier 
kCourierOblique 
kCourierBold 
kCourierBoldOblique 
kTimes 
kVerdana 
kVerdanaItalic 
kVerdanaBold 
kVerdanaBoldItalic 

Definition at line 36 of file RAttrFont.hxx.

Constructor & Destructor Documentation

◆ RAttrFont() [1/4]

ROOT::Experimental::RAttrFont::RAttrFont ( )
default

◆ RAttrFont() [2/4]

ROOT::Experimental::RAttrFont::RAttrFont ( RDrawable * drawable,
const char * prefix = "font" )
inline

Definition at line 28 of file RAttrFont.hxx.

◆ RAttrFont() [3/4]

ROOT::Experimental::RAttrFont::RAttrFont ( RAttrBase * parent,
const char * prefix = "font" )
inline

Definition at line 28 of file RAttrFont.hxx.

◆ RAttrFont() [4/4]

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

Definition at line 28 of file RAttrFont.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::RAttrFont::GetDefaults ( ) const
inlineoverrideprotectedvirtual

Return default values for attributes, empty for base class.

Reimplemented from ROOT::Experimental::RAttrAggregation.

Definition at line 28 of file RAttrFont.hxx.

◆ GetDrawable()

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

Definition at line 52 of file RAttrBase.hxx.

◆ GetFullName()

std::string ROOT::Experimental::RAttrFont::GetFullName ( ) const
inline

Returns full font name including weight and style.

Definition at line 91 of file RAttrFont.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=() [1/2]

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

Definition at line 28 of file RAttrFont.hxx.

◆ operator=() [2/2]

RAttrFont & ROOT::Experimental::RAttrFont::operator= ( EFont id)
inline

assign font id, setting all necessary properties

Definition at line 86 of file RAttrFont.hxx.

◆ SetFont()

RAttrFont & ROOT::Experimental::RAttrFont::SetFont ( EFont font)
inline

Set text font by id as usually handled in the ROOT (without precision), number should be between 1 and 15.

Definition at line 59 of file RAttrFont.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.

Friends And Related Symbol Documentation

◆ operator==

bool operator== ( const RAttrFont & font,
EFont id )
friend

Definition at line 88 of file RAttrFont.hxx.

Member Data Documentation

◆ drawable

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

Definition at line 40 of file RAttrBase.hxx.

◆ family

RAttrValue<std::string> ROOT::Experimental::RAttrFont::family {this, "family"}

! font family, corresponds to css font-familty attribute

Definition at line 32 of file RAttrFont.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<std::string> ROOT::Experimental::RAttrFont::style {this, "style"}

! font style, corresponds to css font-style attribute

Definition at line 33 of file RAttrFont.hxx.

◆ weight

RAttrValue<std::string> ROOT::Experimental::RAttrFont::weight {this, "weight"}

! font weight, corresponds to css font-weight attribute

Definition at line 34 of file RAttrFont.hxx.

Libraries for ROOT::Experimental::RAttrFont:

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