History log of /external/autotest/frontend/client/src/autotest/tko/Plot.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
fbdab0b28c8084441225523a68db7f0ef63f5ca0 29-Apr-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Support multiple embedded graph widgets on the same page. This required two changes to avoid collisions with shared global resources:
* Make each plot generate a unique drilldown callback name for itself. These need to be unique because they all get stuck into as global methods. This also required passing the callback name to the server and having the server use it when generating callback code.
* Make the server generate a unique name for the image map, when generating HTML to return to the client. These image maps all sit in the document and thus must have unique names. It generates the map name from the passed-in drilldown name.

Since this change required passing around yet another piece of information to describe a plot in graphing_utils.py, I gathered all the parameters describing a plot into new parameter object classes, MetricsPlot and QualificationHistogram, rather than just extending the method signature of a bunch of methods. As usual, the natural next step is to move functionality into the classes, which would make graphing_utils much cleaner I believe. But I'm leaving that for later.

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3061 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/frontend/client/src/autotest/tko/Plot.java
9f4500a294eea35dce003cee41c558fcde3eb09f 27-Apr-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> Last few changes necessary to make first embeddable graphs work
* add EmbeddedTkoClient GWT entry point + associated scripts, GWT XML, launch configuration, apache config
* added EmbeddedTkoClientTest.html, a simple demonstration/test of using embedded widgets
* modify TabView to no longer be a Composite, but instead have a getWidget element. this allows us to defer any DOM manipulation to initialize() and therefore avoid executing it at all in the embedded case. the introduction of code to TabView.initialize() (it was previous abstract) required adding a super.initalize() call to *all* subclasses, and there are a lot, hence the large number of files in this change.
* added Plot.getNativeProxy(), generating a native JS object that acts as a proxy to the GWT Plot object
* extend JsonRpcProxy to allow use of PaddedJsonRpcProxys
* remove debug prints from PaddedJsonRpcProxy
* fix a little bug where a return statement was missing from Plot.showDrilldown()

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3039 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/frontend/client/src/autotest/tko/Plot.java
3b2b93007ba7ca0a8ace90f2ac0c2263ccbcbdf8 15-Apr-2009 showard <showard@592f7852-d20e-0410-864c-8624ca9c26a4> * extract code for displaying graphs and managing graph drilldowns from *Frontend classes (which also manage the graph setup UI) into separate Plot classes (a Plot class and two subclasses, MetricsPlot and MachineQualHistogram). eventually, these plot classes will be usable as embedded widgets in other pages.
* made some changes to graphing_utils.py to support the new design, including encoding drilldown information with JSONEncoder
* extract GraphingDialog class to a generic, top-level SimpleDialog class, so that it'll be usable from embedded widgets without including all the frontend code
* fix a bug in FilterSelector.isEmpty() (it would always return false previously)
* fix a bug in TableView where no column would be sorted on in some cases

Signed-off-by: Steve Howard <showard@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@2990 592f7852-d20e-0410-864c-8624ca9c26a4
/external/autotest/frontend/client/src/autotest/tko/Plot.java