Changeset 97267a4


Ignore:
Timestamp:
Oct 25, 2017 9:29:49 AM (3 years ago)
Author:
str4d <str4d@…>
Branches:
master
Children:
0e5b46e7
Parents:
3f4df231
Message:

/graphs:

  • Add option to hide legends
  • Adjust size of up/down bw graph to match other graphs (ticket #1996)
  • Modify image font color to better blend with themes
  • Tweak spacing of elements for non-Debian installs
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • apps/jrobin/java/src/org/jrobin/graph/RrdGraphConstants.java

    r3f4df231 r97267a4  
    287287         * Used internally
    288288         */
    289         int PADDING_LEFT = 5; // pix
    290         /**
    291          * Used internally
    292          */
    293         int PADDING_TOP = 9; // pix
     289        int PADDING_LEFT = 0; // pix - absent vertical label provides padding here
     290        /**
     291         * Used internally
     292         */
     293        int PADDING_TOP = 5; // pix -- additional top pixels added by frame border
    294294        /**
    295295         * Used internally
     
    315315         * Used internally
    316316         */
    317         int PADDING_VLABEL = 7; // pix
     317        int PADDING_VLABEL = 8; // pix
    318318
    319319        /**
  • apps/routerconsole/java/src/net/i2p/router/web/GraphHelper.java

    r3f4df231 r97267a4  
    2525    private int _refreshDelaySeconds;
    2626    private boolean _persistent;
     27    private boolean _graphHideLegend;
    2728    private String _stat;
    2829    private int _end;
     
    3334    private static final String PROP_PERIODS = "routerconsole.graphPeriods";
    3435    private static final String PROP_EVENTS = "routerconsole.graphEvents";
     36    private static final String PROP_LEGEND = "routerconsole.graphHideLegend";
    3537    public static final int DEFAULT_X = 400;
    3638    public static final int DEFAULT_Y = 100;
     
    4446    private static final int MAX_C = SummaryListener.MAX_ROWS;
    4547    private static final int MIN_REFRESH = 15;
    46    
     48
    4749    /** set the defaults after we have a context */
    4850    @Override
     
    5456        _refreshDelaySeconds = _context.getProperty(PROP_REFRESH, DEFAULT_REFRESH);
    5557        _showEvents = _context.getBooleanProperty(PROP_EVENTS);
    56     }
    57    
     58        _graphHideLegend = _context.getBooleanProperty(PROP_LEGEND);
     59    }
     60
    5861    /**
    5962     *  This must be output in the jsp since *lt;meta&gt; must be in the &lt;head&gt;
     
    7982
    8083    /** @since 0.9 */
    81     public void setE(String str) { 
     84    public void setE(String str) {
    8285        try {
    8386            _end = Math.max(0, Integer.parseInt(str));
     
    8689
    8790    /** @since 0.9 shorter parameter */
    88     public void setC(String str) { 
     91    public void setC(String str) {
    8992        try {
    9093            _periodCount = Math.max(MIN_C, Math.min(Integer.parseInt(str), MAX_C));
     
    99102
    100103    /** @since 0.9 shorter parameter */
    101     public void setH(String str) { 
     104    public void setH(String str) {
    102105        try {
    103106            _height = Math.max(MIN_Y, Math.min(Integer.parseInt(str), MAX_Y));
     
    110113
    111114    /** @since 0.9 shorter parameter */
    112     public void setW(String str) { 
     115    public void setW(String str) {
    113116        try {
    114117            _width = Math.max(MIN_X, Math.min(Integer.parseInt(str), MAX_X));
     
    129132    public void setPersistent(String foo) { _persistent = true; }
    130133
     134    /** @since 0.9.32 */
     135    public void setHideLegend(String foo) { _graphHideLegend = true; }
     136
    131137    /**
    132138     *  For single stat page
     
    136142        _stat = stat;
    137143    }
    138    
     144
    139145    public String getImages() {
    140146        if (StatSummarizer.isDisabled())
     
    163169                _out.write("<img class=\"statimage\""
    164170                           + " src=\"viewstat.jsp?stat=bw.combined"
    165                            + "&amp;periodCount=" + _periodCount
    166                            + "&amp;width=" + _width
    167                            + "&amp;height=" + (_height - 13)
     171                           + "&amp;periodCount=" + _periodCount
     172                           + "&amp;width=" + _width);
     173                if (!_graphHideLegend) {
     174                    // bw.combined graph has two entries in its legend
     175                    // -26 pixels equalizes its height with the other images
     176                    _out.write("&amp;height=" + (_height - 26));
     177                } else {
     178                    // no legend, no height difference needed
     179                    _out.write("&amp;height=" + (_height));
     180                }
     181                _out.write("&amp;hideLegend=" + _graphHideLegend
    168182                           + "\" alt=\"" + title + "\" title=\"" + title + "\"></a>\n");
    169183            }
    170            
     184
    171185            for (SummaryListener lsnr : ordered) {
    172186                Rate r = lsnr.getRate();
     
    185199                           + r.getRateStat().getName()
    186200                           + "&amp;showEvents=" + _showEvents
    187                            + "&amp;period=" + r.getPeriod() 
    188                            + "&amp;periodCount=" + _periodCount 
     201                           + "&amp;period=" + r.getPeriod()
     202                           + "&amp;periodCount=" + _periodCount
    189203                           + "&amp;width=" + _width
    190204                           + "&amp;height=" + _height
    191                            + "\" alt=\"" + title
     205                           + "&amp;hideLegend=" + _graphHideLegend
     206                           + "\" alt=\"" + title
    192207                           + "\" title=\"" + title + "\"></a>\n");
    193208            }
     
    244259                       + "&amp;showEvents=" + _showEvents
    245260                       + "&amp;period=" + period
    246                        + "&amp;periodCount=" + _periodCount 
    247                        + "&amp;end=" + _end 
     261                       + "&amp;periodCount=" + _periodCount
     262                       + "&amp;end=" + _end
    248263                       + "&amp;width=" + _width
    249264                       + "&amp;height=" + _height
     265                       + "&amp;hideLegend=" + _graphHideLegend
    250266                       + "\"></div><p id=\"graphopts\">\n");
    251267
     
    364380            _out.write ("<label><input type=\"radio\" class=\"optbox\" name=\"showEvents\" value=\"true\" "+ (_showEvents ? HelperBase.CHECKED : "") + ">" + _t("Events") + "</label></td></tr><tr><td>\n");
    365381            _out.write(_t("Graph size") + ":</td><td><input size=\"4\" style=\"text-align: right;\" type=\"text\" name=\"width\" value=\"" + _width
    366                        + "\">" + _t("pixels wide") + "&nbsp;&nbsp;&nbsp;<input size=\"4\" style=\"text-align: right;\" type=\"text\" name=\"height\" value=\"" + _height 
     382                       + "\">" + _t("pixels wide") + "&nbsp;&nbsp;&nbsp;<input size=\"4\" style=\"text-align: right;\" type=\"text\" name=\"height\" value=\"" + _height
    367383                       + "\">" + _t("pixels high") + "</td><td class=\"infohelp\">" + _t("Note: Dimensions are for graph only (excludes title, labels and legend).") + "</td></tr><tr><td>\n");
     384            _out.write(_t("Hide legend") + ":</td><td colspan=\"2\">");
     385            _out.write("<label><input type=\"checkbox\" class=\"optbox\" value=\"true\" name=\"hideLegend\"");
     386            if (_graphHideLegend)
     387                _out.write(HelperBase.CHECKED);
     388            _out.write(">" + _t("Do not show legend on graphs") + "</label></td></tr><tr><td>\n");
    368389            _out.write(_t("Refresh delay") + ":</td><td colspan=\"2\"><select name=\"refreshDelay\">");
    369390            for (int i = 0; i < times.length; i++) {
     
    433454            _refreshDelaySeconds != _context.getProperty(PROP_REFRESH, DEFAULT_REFRESH) ||
    434455            _showEvents != _context.getBooleanProperty(PROP_EVENTS) ||
     456            _graphHideLegend != _context.getBooleanProperty(PROP_LEGEND) ||
    435457            _persistent != _context.getBooleanPropertyDefaultTrue(SummaryListener.PROP_PERSISTENT)) {
    436458            Map<String, String> changes = new HashMap<String, String>();
     
    440462            changes.put(PROP_REFRESH, "" + _refreshDelaySeconds);
    441463            changes.put(PROP_EVENTS, "" + _showEvents);
     464            changes.put(PROP_LEGEND, "" + _graphHideLegend);
    442465            changes.put(SummaryListener.PROP_PERSISTENT, "" + _persistent);
    443466            _context.router().saveConfig(changes, null);
  • apps/routerconsole/java/src/net/i2p/router/web/SummaryRenderer.java

    r3f4df231 r97267a4  
    4141    private static final Color GRID_COLOR = new Color(100, 100, 100, 75);
    4242    private static final Color MGRID_COLOR = new Color(255, 91, 91, 110);
     43    private static final Color FONT_COLOR = new Color(51, 51, 63);
     44    private static final Color FRAME_COLOR = new Color(51, 51, 63);
    4345    private static final Color AREA_COLOR = new Color(100, 160, 200, 200);
    4446    private static final Color LINE_COLOR = new Color(0, 30, 110, 255);
     
    140142            def.setColor(RrdGraphDef.COLOR_GRID,   GRID_COLOR);
    141143            def.setColor(RrdGraphDef.COLOR_MGRID,  MGRID_COLOR);
     144            def.setColor(RrdGraphDef.COLOR_FONT,   FONT_COLOR);
     145            def.setColor(RrdGraphDef.COLOR_FRAME,  FRAME_COLOR);
    142146            def.setFont(RrdGraphDef.FONTTAG_DEFAULT, new Font(DEFAULT_FONT_NAME, Font.PLAIN, 10));
    143147            def.setFont(RrdGraphDef.FONTTAG_TITLE,   new Font(DEFAULT_FONT_NAME, Font.PLAIN, 10));
  • history.txt

    r3f4df231 r97267a4  
     12017-10-25 str4d
     2 * Console:
     3   - /graphs:
     4     - Add option to hide legends
     5     - Adjust size of up/down bw graph to match other graphs (ticket #1996)
     6     - Modify image font color to better blend with themes
     7     - Tweak spacing of elements for non-Debian installs
     8
    192017-10-11 zzz
    210 * Console: Validate host header (thx Kevin Froman)
Note: See TracChangeset for help on using the changeset viewer.