22namespace Experimental {
25 std::vector<std::string>
ids;
27 std::vector<std::unique_ptr<RAttrMap::Value_t>>
values;
35 std::unique_ptr<RDrawableReply>
Process()
override;
67 std::unique_ptr<Internal::RVirtualCanvasPainter>
fPainter;
85 static std::shared_ptr<RCanvas>
Create(
const std::string &title);
117 void Show(
const std::string &where =
"");
138 template <
class PANEL>
142 return fPainter->AddPanel(panel->GetWindow());
172 void Run(
double tm = 0.);
180 std::string
GetUID()
const;
196 static const std::vector<std::shared_ptr<RCanvas>>
GetCanvases();
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
Implementation of painter for ROOT::Experimental::RCanvas, using RWebWindow.
static const std::vector< std::shared_ptr< RCanvas > > GetCanvases()
Returns list of created canvases.
RCanvas(const RCanvas &)=delete
Disable copy construction for now.
static void ReleaseHeldCanvases()
Release list of held canvases pointers If no other shared pointers exists on the canvas,...
RCanvas * GetCanvas() override
Access to the top-most canvas, if any (non-const version).
const std::string & GetTitle() const
Get the canvas's title.
bool SaveAs(const std::string &filename)
Save canvas in image file.
void SetSize(int width, int height)
Set canvas pixel size - width and height.
RCanvas & SetTitle(const std::string &title)
Set the canvas's title.
Version_t fModified
Modify counter, incremented every time canvas is changed.
std::string GetWindowUrl(bool remote)
Returns window URL which can be used for connection.
int GetHeight() const
Get canvas height.
bool IsModified() const
Returns true is canvas was modified since last painting.
RCanvas & operator=(const RCanvas &)=delete
Disable assignment for now.
void Show(const std::string &where="")
Display the canvas.
bool fShown
indicate if Show() method was called before
std::string GetWindowAddr() const
Returns window name used to display canvas.
void Remove()
Remove canvas from global canvas lists, will be destroyed when shared_ptr will be removed.
void ResolveSharedPtrs()
To resolve problem with storing of shared pointers Call this method when reading canvas from the file...
void Run(double tm=0.)
Run canvas functionality for given time (in seconds)
uint64_t GetModified() const
Get modify counter.
int fHeight
Height of the canvas in pixels.
std::string fTitle
to apply attributes changes
bool IsUpdated() const
returns true if Update() method was called
std::string GetUID() const
Return unique identifier for the canvas Used in iPython display.
std::string CreateJSON()
Provide JSON which can be used for offline display.
void SetHeight(int height)
Set canvas height.
bool IsShown() const
returns true if Show() method was called
std::unique_ptr< Internal::RVirtualCanvasPainter > fPainter
The painter of this canvas, bootstrapping the graphics connection.
int fWidth
Width of the canvas in pixels.
bool fUpdated
indicate if Update() method was called before
static std::shared_ptr< RCanvas > Create(const std::string &title)
Create new canvas instance.
void ClearShown()
clear IsShown() flag
void ClearOnClose(const std::shared_ptr< void > &handle)
Set handle which will be cleared when connection is closed.
void SetWidth(int width)
Set canvas width.
const RCanvas * GetCanvas() const override
Access to the top-most canvas, if any (const version).
RCanvas()
Create a temporary RCanvas; for long-lived ones please use Create().
void Modified(std::shared_ptr< RDrawable > drawable)
Set newest version to specified drawable.
int GetWidth() const
Get canvas width.
bool AddPanel(std::shared_ptr< PANEL > &panel)
Insert panel into the canvas, canvas should be shown at this moment.
void ClearUpdated()
clear IsUpdated() flag
~RCanvas() override=default
void Hide()
Hide all canvas displays.
std::vector< std::unique_ptr< RAttrMap::Value_t > > values
array of values
std::vector< std::string > names
array of attribute names
std::vector< std::string > ids
array of ids
~RChangeAttrRequest() override=default
bool NeedCanvasUpdate() const override
RChangeAttrRequest()=default
bool fNeedUpdate
! is canvas update required
RChangeAttrRequest & operator=(const RChangeAttrRequest &)=delete
bool update
update canvas at the end
std::unique_ptr< RDrawableReply > Process() override
Apply attributes changes to the drawable Return mask with actions which were really applied.
RChangeAttrRequest(const RChangeAttrRequest &)=delete
Base class for requests which can be submitted from the clients.
Base class for graphic containers for RDrawable-s.
void SetDrawableVersion(Version_t vers) override
Assign drawable version - for pad itself and all primitives.
std::function< void(bool)> CanvasCallback_t
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...