10#define ROOT7_RAttrBase 
   20namespace Experimental {
 
   73      std::string fullname = 
name;
 
   75         if (
prnt->IsAggregation() && 
prnt->fPrefix) {
 
   76            fullname.insert(0, 
"_");        
 
   77            fullname.insert(0, 
prnt->fPrefix);
 
   79         if (
auto dr = 
prnt->GetDrawable())
 
   80            return { &
dr->fAttr, fullname, 
dr };
 
   82            return { 
attr, fullname, 
nullptr };
 
   85      return {
nullptr, fullname, 
nullptr};
 
 
   98         if (
auto rec = access.attr->Find(access.fullname))
 
   99            return {rec, 
nullptr};
 
  101            if (
auto observe = access.drawable->fStyle.lock()) {
 
  102               if (
auto rec = 
observe->Eval(access.fullname, *access.drawable))
 
  107      return {
nullptr, 
nullptr};
 
 
  115      std::string fullname = 
name;
 
  117         if (
prnt->IsAggregation() && 
prnt->fPrefix) {
 
  118            fullname.insert(0, 
"_");        
 
  119            fullname.insert(0, 
prnt->fPrefix);
 
  121         if (
auto dr = 
prnt->GetDrawable())
 
  122            return { &
dr->fAttr, fullname, 
dr };
 
  124            return { 
prnt->CreateOwnAttr(), fullname, 
nullptr };
 
  127      return {
nullptr, fullname, 
nullptr};
 
 
  133      fD.ownattr = 
nullptr;
 
 
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t attr
 
Base class for all attributes, used with RDrawable.
 
RAttrBase(RAttrBase *parent, const char *prefix=nullptr)
 
RAttrMap * GetOwnAttr() const
 
void ClearValue(const std::string &name)
Clear value if any with specified name.
 
const Rec_t AccessAttr(const std::string &name) const
Find attributes container and full-qualified name for value.
 
RDrawable * GetDrawable() const
 
const Val_t AccessValue(const std::string &name, bool use_style=true) const
Search value with given name in attributes.
 
const char * GetPrefix() const
 
void MoveTo(RAttrBase &tgt)
Move all fields into target object.
 
const char * fPrefix
! name prefix for all attributes values
 
Rec_t EnsureAttr(const std::string &name)
Ensure attribute with give name exists - creates container for attributes if required.
 
virtual bool IsAggregation() const
 
RAttrMap * CreateOwnAttr()
Creates own attribute - only if no drawable and no parent are assigned.
 
void ClearData()
Clear internal data.
 
RAttrBase(const char *prefix)
 
enum ROOT::Experimental::RAttrBase::@40 kDrawable
! kind of data
 
RAttrBase(RDrawable *drawable, const char *prefix=nullptr)
 
virtual RAttrMap CollectDefaults() const =0
 
void SetNoValue(const std::string &name)
Set <NoValue> for attribute.
 
RAttrBase * GetParent() const
 
Base class for drawable entities: objects that can be painted on a RPad.
 
A log configuration for a channel, e.g.
 
ROOT::RLogChannel & GPadLog()
Log channel for GPad diagnostics.
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
 
const RAttrMap::Value_t * value
 
std::shared_ptr< RStyle > style