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.
RAttrFontoperator= (const RAttrFont &src)
RAttrFontoperator= (EFont id)
 assign font id, setting all necessary properties
RAttrFontSetFont (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 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

Friends

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

#include <ROOT/RAttrFont.hxx>

Inheritance diagram for ROOT::Experimental::RAttrFont:
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.

◆ 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.

◆ 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.


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