<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="http://git.reviewboard.kde.org/r/104015/">http://git.reviewboard.kde.org/r/104015/</a>
</td>
</tr>
</table>
<br />
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">aside from the memory leak you've already spotted and documented, i will need sometime to review this as it's not a small review request. buuut ... i like the idea. it's an "old school" monitor that i just know many of our desktop power users will love. :)
igve me a few days to play with it on my laptop, look over the code, etc and i'll post a thorough review then. cheers..</pre>
<br />
<div>
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="http://git.reviewboard.kde.org/r/104015/diff/1/?file=50402#file50402line11" style="color: black; font-weight: bold; text-decoration: underline;">applets/graphmon/plasma-applet-graphmon.desktop</a>
<span style="font-weight: normal;">
(Diff revision 1)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
<th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">11</font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">X-KDE-PluginInfo-Name=graphmon</pre></td>
</tr>
</tbody>
</table>
<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">this needs to be properly namespaced. going into plasmaaddons, it can use the org.kde prefix: org.kde.graphmon</pre>
</div>
<br />
<p>- Aaron J.</p>
<br />
<p>On February 18th, 2012, 6:16 p.m., rhn rhn wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Plasma.</div>
<div>By rhn rhn.</div>
<p style="color: grey;"><i>Updated Feb. 18, 2012, 6:16 p.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">A plasmoid intended to be used on a panel. Inspired by gnome-multiload-applet and gkrellm.
Before I decided to write this plasmoid, I considered other monitors. Here's what I found:
- system-monitor:
* not pixel-perfect: it uses antialiasing and Bezier curves
* in stacking mode, it adds a few pixels to all values, so a 0 network throughput still shows 2 belts.
* impossible to read at a glance due to low contrast and no custom colors
* shows only basic properties
* graphs change features depending on size
* deal-breaker: impossible to set custom height or width
- system-load-viewer: almost there, but no history display
- The Only Right RAM Monitor: too slow and RAM only
This plasmoid attempts to solve all those problems while introducing new ones :)
What's fixed in this one:
- many graphs in one applet
- graphs laid out on a grid
- forces graph width or height (depending on mode)
- can force row or column number (depending on mode)
- arbitrary colors for all graph types
- pixel-perfect
- handles runtime CPU/network addition/removal (CPU untested)
Other stuff:
- labels only for network interfaces
- resizable labels
- network transmit graph stacks on top
- C++, a monitor should measure resources, not use them
- no way to disable graphs :)
- no way to reorder graphs
- network interfaces are not sorted
- all CPUs are displayed
- can't change colors for a distinct graph
- will not fit in container if the wrong layout params are selected (forcing a dimension to be more than available)
- the original idea was to synchronize all readings, but it seems impossible with plasma data engines
It's my first project in Qt, so the code will not be as nice as it could be. I rewrote the plotter and the layout, so those are the most likely to contain errors/memory leaks. Also, I don't know which of the above problems need to be solved and which decisions are acceptable, but I'll happily apply all fixes to make this accepted.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Display, layout, configuration, persistence.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>applets/CMakeLists.txt <span style="color: grey">(1e1ef75)</span></li>
<li>applets/graphmon/CMakeLists.txt <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/color-config.ui <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/cpuload.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/cpuload.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/general-config.ui <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/graphmon.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/graphmon.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/netthroughput.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/netthroughput.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/plasma-applet-graphmon.desktop <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/ramusage.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/ramusage.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/rigidgridlayout.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/rigidgridlayout.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/simpleplotter.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/simpleplotter.cpp <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/swapusage.h <span style="color: grey">(PRE-CREATION)</span></li>
<li>applets/graphmon/swapusage.cpp <span style="color: grey">(PRE-CREATION)</span></li>
</ul>
<p><a href="http://git.reviewboard.kde.org/r/104015/diff/" style="margin-left: 3em;">View Diff</a></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Screenshots </h1>
<div>
<a href="http://git.reviewboard.kde.org/r/104015/s/437/"><img src="http://git.reviewboard.kde.org/media/uploaded/images/2012/02/18/snapshot3_400x100.png" style="border: 1px black solid;" alt="Graph on panel and general config section" /></a>
</div>
</td>
</tr>
</table>
</div>
</body>
</html>