27namespace Experimental {
50 if (
src.IsUnzoom(ndim)) {
83 if (ndim*2 >
values.size()) {
85 flags.resize(ndim*2,
false);
108 flags[ndim*2+1] =
true;
113 if (ndim*2+1 <
flags.size())
116 if (ndim*2+1 <
values.size())
123 return (ndim*2+1 <
flags.size()) && (ndim*2+1 <
values.size()) &&
131 for (
auto fl :
flags)
157 void SetClientRanges(
unsigned connid,
const RUserRanges &ranges,
bool ismainconn);
172 std::unique_ptr<RDrawableReply>
Process()
override
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t src
All supported axes attributes for: line, ticks, labels, title, min/max, log, reverse,...
Drawing line attributes for different objects.
Drawing fill attributes for different objects.
A margins attributes. Only relative and pixel coordinates are allowed.
Template class to access single value from drawable or other attributes.
Base class for requests which can be submitted from the clients.
const RDrawable::RDisplayContext & GetContext() const
unsigned GetConnId() const
RDrawable * GetDrawable() const
Base class for drawable entities: objects that can be painted on a RPad.
bool IsUnzoom(unsigned ndim) const
Returns true if axis configured as unzoomed, can be specified from client.
bool HasMin(unsigned ndim) const
void Update(const RUserRanges &src)
void AssignMin(unsigned ndim, double value)
RUserRanges(double xmin, double xmax, double ymin, double ymax)
bool HasMax(unsigned ndim) const
std::vector< double > values
min/max values for all dimensions
void UpdateDim(unsigned ndim, const RUserRanges &src)
double GetMax(unsigned ndim) const
RUserRanges(double xmin, double xmax)
std::vector< bool > flags
flag if values available
double GetMin(unsigned ndim) const
void AssignMax(unsigned ndim, double value)
void Extend(unsigned ndim=3)
void ClearMinMax(unsigned ndim)
std::unique_ptr< RDrawableReply > Process() override
Holds an area where drawing on user coordinate-system can be performed.
RAttrValue< bool > drawAxes
! draw axes by frame
std::map< unsigned, RUserRanges > fClientRanges
! individual client ranges
RAttrAxis z
! drawing attributes for Z axis
RAttrValue< bool > swapY
! swap position of Y axis
RAttrValue< bool > gridY
! show grid for Y axis
RAttrAxis y
! drawing attributes for Y axis
RFrame(const RFrame &)=delete
RAttrFill fill
! frame fill attributes
void AssignZoomRange(unsigned ndim, RAttrAxis &axis, const RUserRanges &ranges)
Internal - assign client zoomed range to specified axis.
RAttrValue< bool > swapX
! swap position of X axis
void GetAxisRanges(unsigned ndim, const RAttrAxis &axis, RUserRanges &ranges) const
Internal - extract range for specified axis.
void GetClientRanges(unsigned connid, RUserRanges &ranges)
Return ranges configured for the client.
RAttrValue< bool > gridX
! show grid for X axis
RFrame & operator=(const RFrame &)=delete
RAttrBorder border
! frame border attributes
RAttrMargins margins
! frame margins relative to pad
RAttrAxis x2
! drawing attributes for X2 axis
RAttrValue< int > ticksY
! Y ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
RAttrAxis y2
! drawing attributes for Y2 axis
void SetClientRanges(unsigned connid, const RUserRanges &ranges, bool ismainconn)
Remember client range, can be used for drawing or stats box calculations.
RAttrAxis x
! drawing attributes for X axis
RAttrValue< int > ticksX
! X ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
void PopulateMenu(RMenuItems &) override
Provide context menu items.
Base class for graphic containers for RDrawable-s.
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.