Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TWebPadOptions.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // Author:  Sergey Linev, GSI  29/06/2017
0002 
0003 /*************************************************************************
0004  * Copyright (C) 1995-2021, Rene Brun and Fons Rademakers.               *
0005  * All rights reserved.                                                  *
0006  *                                                                       *
0007  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0008  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0009  *************************************************************************/
0010 
0011 #ifndef ROOT_TWebPadOptions
0012 #define ROOT_TWebPadOptions
0013 
0014 #include <string>
0015 #include <vector>
0016 
0017 /** \class TWebObjectOptions
0018 \ingroup webgui6
0019 
0020 Class used to transport drawing options from the client
0021 
0022 */
0023 
0024 class TWebObjectOptions {
0025 public:
0026    std::string snapid;       ///< id of the object
0027    std::string opt;          ///< drawing options
0028    std::string fcust;        ///< custom string
0029    std::vector<double> fopt; ///< custom float array
0030 };
0031 
0032 /// Class used to transport ranges from JSROOT canvas
0033 class TWebPadOptions {
0034 public:
0035    std::string snapid;                        ///< id of pad
0036    bool active{false};                        ///< if pad selected as active
0037    int cw{0}, ch{0};                          ///< canvas width and height in pixels
0038    std::vector<int> w;                        ///< window position and size in pixels, set only for canvas
0039    int logx{0}, logy{0}, logz{0};             ///< pad log properties
0040    int gridx{0}, gridy{0};                    ///< pad grid properties
0041    int tickx{0}, ticky{0};                    ///< pad ticks properties
0042    float mleft{0}, mright{0}, mtop{0}, mbottom{0}; ///< frame margins
0043    float xlow{0}, ylow{0}, xup{0}, yup{0};    ///< pad coordinate in ndex
0044    bool ranges{false};                        ///< if true, pad has ranges
0045    double px1{0}, py1{0}, px2{0}, py2{0};     ///< pad range
0046    double ux1{0}, ux2{0}, uy1{0}, uy2{0}, uz1{0}, uz2{0};  ///< frame axis range - real ranges
0047    unsigned bits{0};                          ///< canvas status bits like tool editor
0048    double zx1{0}, zx2{0}, zy1{0}, zy2{0}, zz1{0}, zz2{0}; ///< zooming ranges
0049    std::vector<TWebObjectOptions> primitives; ///< drawing options for primitives
0050 };
0051 
0052 /// Class used to transport pad click events
0053 class TWebPadClick {
0054 public:
0055    std::string padid;                         ///< id of pad
0056    std::string objid;                         ///< id of clicked object, "null" when not defined
0057    int x{-1};                                 ///< x coordinate of click event
0058    int y{-1};                                 ///< y coordinate of click event
0059    bool dbl{false};                           ///< when double-click was performed
0060 };
0061 
0062 #endif