Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:22:38

0001 /*************************************************************************
0002  * Copyright (C) 1995-2021, Rene Brun and Fons Rademakers.               *
0003  * All rights reserved.                                                  *
0004  *                                                                       *
0005  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0006  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0007  *************************************************************************/
0008 
0009 #ifndef ROOT7_ROnFrameDrawable
0010 #define ROOT7_ROnFrameDrawable
0011 
0012 #include <ROOT/RDrawable.hxx>
0013 #include <ROOT/RAttrValue.hxx>
0014 
0015 namespace ROOT {
0016 namespace Experimental {
0017 
0018 /** \class ROnFrameDrawable
0019 \ingroup GpadROOT7
0020 \brief Base class for drawable which can be drawn on frame or on pad. Introduces "onFrame" and "clipping" attributes. If onFrame = true, one can enable clipping of such drawables.
0021 Dedicated for classes like RLine, RText, RBox and similar
0022 \author Sergey Linev <s.linev@gsi.de>
0023 \date 2021-06-29
0024 \warning This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!
0025 */
0026 
0027 class ROnFrameDrawable : public RDrawable {
0028 protected:
0029    ROnFrameDrawable(const ROnFrameDrawable &) = delete;
0030    ROnFrameDrawable &operator=(const ROnFrameDrawable &) = delete;
0031 
0032    explicit ROnFrameDrawable(const char *type) : RDrawable(type) {}
0033 
0034 public:
0035    ~ROnFrameDrawable() override = default;
0036 
0037    RAttrValue<bool> onFrame{this, "onFrame", false};  ///<! is drawn on the frame or not
0038    RAttrValue<bool> clipping{this, "clipping", false}; ///<! is clipping on when drawn on the frame
0039 };
0040 
0041 } // namespace Experimental
0042 } // namespace ROOT
0043 
0044 #endif