summaryrefslogtreecommitdiffstats
path: root/grapher
Commit message (Collapse)AuthorAgeFilesLines
* hover text on the additional graphsTim Moore2009-12-042-2/+10
| | | | | | | | | * grapher/Graph.cxx (window2GraphCoords): Take the entire graph's position into account too. * grapher/GraphWidget.cxx (GraphWidget): Hook up the data dialog's OK button. (onDataDialogOpen): If a data set doesn't have a title, use it's name (key) instead.
* tweak multiline hover text to have proper interline spacingTim Moore2009-12-041-7/+13
| | | | | | | | * grapher/CairoWidget.cxx (CairoTextBox::draw): Use font information to caculate legible spacing. Also change the font to something more readable. * testsuite/systemtap.examples/general/grapher.stp: Put carriage returns in the right spots.
* support multiline data output from scripts run under the grapherTim Moore2009-12-044-15/+53
| | | | | | | | | | | | | | This is accompanied by support for multiline output in hover text. * grapher/StapParser.cxx (ioCallback): Read data 'til the end of line character, not just '\n'. Be careful to use I/O functions that don't treat '\n' specially. * grapher/StapParser.hxx: ditto * grapher/CairoWidget.cxx (CairoTextBox::draw): Perform line breaks for hover text. * testsuite/systemtap.examples/general/grapher.stp: Do multiline output of keyboard events. Also, fix longstanding breaking in the pty probe.
* Error check in hover text code for empty graphsTim Moore2009-12-031-2/+4
| | | | | * grapher/GraphStyle.cxx(GraphStyleEvent::dataIndexAtPoint, GraphStyleBar::dataIndexAtPoint): check for empty graph data
* Hover text for event-style graphsTim Moore2009-12-034-13/+47
| | | | | | | | | Don't draw the data value for an event; only display it in hover text. * grapher/Graph.hxx (window2GraphCoords): new function * grapher/Graph.cxx (window2GraphCoords): ditto * grapher/GraphStyle.cxx (GraphStyleEvent::dataIndexAtPoint): new function implementation.
* Make the hover text conform to data displayed.Tim Moore2009-12-027-26/+73
| | | | | | | | | Start of code to be more selective about the association between the hover text and the underling graph. Also, show the data set name in hover text. * grapher/GraphStyle.hxx (dataIndexAtPoint): New virtual function. * grapher/GraphStyle.cxx (dataIndexAtPoint): Implementation for bar graphs * grapher/GraphWidget.cxx (onHoverTimeout): Use dataIndexAtPoint.
* Refactor drawing of different styles of graph into classesTim Moore2009-12-027-78/+204
| | | | | | * grapher/GraphStyle.cxx: New file * grapher/GraphStyle.hxx: New file * grapher/Graph(draw): Move much drawing code to GraphStyle::draw
* Account for zoom factor when choosing hover textTim Moore2009-12-021-5/+5
| | | | * grapher/Graph.cxx (getTimeAtPoint): Divide by _zoomFactor too.
* Regenerate autotools files using autoreconf to pick up latest Makefile.am ↵Dave Brolley2009-12-011-124/+216
| | | | changes.
* some aesthetic tweaks to the grapherTim Moore2009-12-012-2/+2
| | | | | | * grapher/Graph.cxx (draw): Draw tick labels (times) below the graph. * grapher/grapher.cxx (main): Open main window with a size big enough to display an entire graph.
* Add hover text to the graph.Tim Moore2009-12-015-42/+114
| | | | | | | | | | | | | | When the graph display is paused, leaving the mouse stationary over the graph will display the data point under the pointer. * grapher/CairoWidget.hxx (CairoTextBox): new class (CairoWidget, CairoPlayButton): refector some play button-specific things from CairoWidget to CairoPlayButton. * grapher/CairoWidget.cxx (CairoTextBox::draw): new function. * grapher/GraphWidget.hxx (GraphWidget): new members for supporting hover text. * grapher/GraphWidget.cxx (on_motion_notify_event): Set up hover text box. (establishHoverTimeout, onHoverTimeout, getGraphUnderPoint): new functions.
* change time type from double to int64_tTim Moore2009-12-015-25/+44
| | | | | | | | | | | | | | * grapher/Graph.hxx (Graph): Change variables holding the time limits of the displayed graph from double to int64_t. * grapher/Graph.cxx (Graph::draw): Do calculations of time differences using int64_t. (Graph::getExtents, Graph::setExtents): Change left and right arguments to int64_t. * grapher/GraphData.hxx (GraphDataBase): Change time type to int64_t. (GraphDataBase::elementAsString): New function. (GraphData::elementAsString): Implementation of that function. * grapher/StapParser.cxx (parseData): Parse time values from the stap script as 64 bit values.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2009-11-231-1/+0
|\ | | | | | | | | | | Conflicts: configure
| * PR4037: 32-bit staprun vs. 64-bit kernels just works (tm)Frank Ch. Eigler2009-11-171-1/+0
| | | | | | | | | | * configure.ac (PROCFLAGS): Don't define it. * Makefile.am: Don't use it.
* | Ensure uprobes/Makefile never returns failure due to setting permissions.Dave Brolley2009-11-231-216/+124
|/ | | | | Ensure uprobes install directory has group 'stap-server'. Rename igid_in to in_group.
* Fix stapprobes.irq title and add to install listJosh Stone2009-11-101-124/+216
| | | | (And incidentally re-enable quiet builds at the same time...)
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2009-11-034-231/+318
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.in configure doc/Makefile.in doc/SystemTap_Tapset_Reference/Makefile.in grapher/Makefile.in testsuite/configure
| * * grapher/GraphData.hxx (GraphDataBase, GraphData): UseTim Moore2009-10-281-3/+10
| | | | | | | | boost::circular_buffer for time and data storage.
| * Fix regression of parsing grapher optionsTim Moore2009-10-281-28/+28
| | | | | | | | | | * grapher/StapParser.hxx (ioCallback): Test return value from findTaggedValue properly.
| * Merge branch 'master' of ssh://sourceware.org/git/systemtapTim Moore2009-10-271-25/+53
| |\
| | * Enable Kbuild-like quiet buildsJosh Stone2009-10-221-25/+53
| | | | | | | | | | | | | | | | | | | | | | | | This enables much cleaner build output from automake. To re-enable the verbose commands, pass --disable-silent-rules to configure, or use V=1 at make time. * configure.ac: Enable AM_SILENT_RULES by default.
| * | Kill off child processes correctly on exit.Tim Moore2009-10-271-30/+100
| | | | | | | | | | | | | | | | | | * grapher/grapher.cxx (ChildDeathReader::reap): New function. (StapLauncher): Keep a list of instantiated parsers. (StapLauncher::cleanup): Kill off all launched stap processes.
| * | More refactoring for multiple stap processes.Tim Moore2009-10-273-162/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | * grapher/StapParser.hxx (StapParser): Change _win and _widget from references to pointers. * grapher/StapParser.cxx (ioCallback): Ditto. * grapher/grapher.cxx (StapLauncher, GraphicalStapLauncher): Rewrite to make GraphicalStapLauncher a derived class of StapLauncher. (main): Accept graphing data from stdin with a "-" argument.
| * | Change stap parser to use an input file descriptor other than stdinTim Moore2009-10-273-16/+15
| |/ | | | | | | | | | | | | | | * grapher/StapParser.hxx (_inFd, getInFd, setInFd): new member and fuctions * grapher/StapParser.cxx (ioCallback): Use _inFd variable instead of stdin. * grapher/grapher.cxx (StapLauncher::launch): Don't read input from stap on stdin; use the the read end of the pipe.
* / Infrastructure for new stap-server initscript.Dave Brolley2009-10-201-175/+111
|/
* Updated checking for grapher dependencies.David Smith2009-10-152-5/+14
| | | | | | | | | | | | * configure.ac: Made sure nss includes will error even if only 1 header isn't usable. Added grapher dependencies gtkmm and boost headers. * Makefile.in: Regenerated. * config.in: Ditto. * configure: Ditto. * doc/Makefile.in: Ditto. * doc/SystemTap_Tapset_Reference/Makefile.in: Ditto. * grapher/Makefile.am: Use libglade CFLAGS/LIBS. * grapher/Makefile.in: Regenerated.
* cleanup of graph data parser, using Boost functions where usefulTim Moore2009-10-143-36/+34
| | | | | | * grapher/StapParser.cxx (commaSplit): Use Boost string split function (findTaggedValue): Return bool instead of position (ioCallback): Avoid using hard-coded string lengths
* Added man page for stapgraphTim Moore2009-10-073-11/+202
| | | | * grapher/stapgraph.1.in: new file
* dialog for choosing stap script and providing arguments to stap and the scriptTim Moore2009-09-305-7/+348
| | | | | | | | | * grapher/grapher.cxx (GraphicalStapLauncher): New class. (GrapherWindow constructor): Bind actions for graphical launcher buttons (GrapherWindow::setGraphicalLauncher): new method (GrapherWindow::on_menu_script_start): new method grapher/stap-start.glade, grapher/stap-start.gladep: new files grapher/Makefile.am: install stap-start.glade
* classes for launching stap and listening for its deathTim Moore2009-09-301-94/+221
| | | | | | | | | * grapher/grapher.cxx (ChildDeathReader): New class to handle I/O signalling death of a child. (GrapherWindow): Inherit from ChildDeathReader. (StapLauncher): New class for passing arguments to inferior stap process and checking for its demise. (main): Move launching logic to StapLauncher.
* Pass command line arguments on to stapTim Moore2009-09-301-3/+6
| | | | * grapher/grapher.cxx (main): Pass program arguments to stap
* cleanup of graph data dialogTim Moore2009-09-301-3/+16
| | | | | * grapher/GraphWidget.cxx (on_button_release_event, onDataAdd): tweaks for graph data dialog
* grapher: Handle the death of the child stap processTim Moore2009-09-303-11/+116
| | | | | | * grapher/grapher.c (main): Set up signal and i/o handlers to detect death of child. * grapher/StapParser.cxx (errIoCallback): New method
* Create lists of graph data to chooseTim Moore2009-09-302-0/+17
|
* Add graph data chooser window, based on gladeTim Moore2009-09-306-40/+342
| | | | | | | | | | | | | * configure.ac: Test for libglademm * grapher/GraphWidget.hxx (DataModelColumns): new class (onDataDialogCancel, void onDataAdd, onDataRemove, onDataDialogOpen): new methods * grapher/GraphWidget.cxx: ditto; methods for the graph data dialog. * grapher/graph-dialog.glade: New file. * grapher/graph-dialog.gladep: New file. * grapher/Makefile.am (dist_pkgdata_DATA): add graph-dialog.glade to installation. * grapher/GraphWidget.cxx (GraphWidget constructor): Use PKGDATADIR
* more multiple graph fixesTim Moore2009-09-302-3/+9
| | | | | | * grapher/Graph.cxx (Graph constructor): set _drawX, _drawY * grapher/GraphWidget.cxx (addGraph): Fix graph layout (on_button_press_event): Fix test of play button in multiple graphs
* Draw multiple graphsTim Moore2009-09-304-8/+39
| | | | | | | | | | | | | | * grapher/Graph.cxx (Graph constructor): Initialize graph dimensions. (draw): Don't clear the drawing area. * grapher/GraphWidget.hxx (GraphWidget): Add dimensions and on_size_request() method. * grapher/GraphWidget.cxx (GraphWidget constructor): Initialize dimensions. (addGraph): New method. (on_size_request): New method to pass widget's size to parent widgets * grapher/grapher.cxx (GrapherWindow constructor): add "add graph" action. (addGraph): New method.
* Fixed grapher build problem caused by configure update.David Smith2009-09-242-6/+6
| | | | | | | | * grapher/Makefile.am: Updated gtkmm CFLAGS/LIBS variable name. * grapher/Makefile.in: Regenerated. * Makefile.in: Ditto. * doc/Makefile.in * doc/SystemTap_Tapset_Reference/Makefile.in
* Version bumps for the 1.0 releaseJosh Stone2009-09-221-56/+97
|
* Initialize CairoWidget origin of graphTim Moore2009-09-163-4/+8
| | | | | | | * grapher/Graph.hxx (Graph constructor): add origin arguments * grapher/Graph.cxx: ditto * grapher/GraphWidget.cxx (on_expose_event): Use CairoWidget origin to position graphs.
* Fix graph attribute parsing bugletTim Moore2009-09-161-2/+2
| | | | | * grapher/StapParser.cxx (findTaggedValue): Extract value substring after tag.
* Draw graphs inside a scrolled windowTim Moore2009-09-161-2/+5
| | | | | * grapher/grapher.cxx (GrapherWindow, GrapherWindow constructor): Add ScrolledWindow object and display it. Make GraphWidget its child.
* 2009-09-14 Dave Brolley <brolley@redhat.com>Dave Brolley2009-09-141-97/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * modsign.cxx (init_cert_db_path): Use 'system' call. (sign_module): Renamed to 'main'. This is now an independant program. Check for arguments. Return 1 on error. * buildrun.cxx (modsign.h): Don't #include it. (compile_pass): Don't sign the module. * main.cxx (main): Don't copy the module signature. * cache.cxx (add_to_cache): Don't cache the module signature. * Makefile.am (bin_PROGRAMS): Add stap-sign-module. (stap_SOURCES): Remove modsign.cxx and nsscommon.c. (stap_sign_module_SOURCES): New variable. (stap_sign_module_CPPFLAGS): New variable. (stap_sign_module_LDFLAGS): New variable. (stap_sign_module_LDADD): New variable. * stap-server (initialization): Initialize unprivileged. (parse_options): Handle --unprivileged. (create_response): Call stap-sign-module if --unprivileged was specified. * systemtap.spec: Add stap-sign-module to stap-server. * Makefile.in: Regenerated. * doc/Makefile.in: Regenerated. * doc/SystemTap_Tapset_Reference/Makefile.in: Regenerated. * grapher/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * aclocal.m4: Likewise. * testsuite/aclocal.m4: Likewise. * configure: Likewise. * testsuite/configure: Likewise.
* elfutils build tweak: run nested configure with bash, add -fgnu89-inlineFrank Ch. Eigler2009-08-181-47/+87
| | | | | * configure.ac: Tweak --with-elfutils nested configure invocation. * rest of auto* files: regenerated with fedora-11 tools
* Do not use plain [] in help string in configure.acEugeniy Meshcheryakov2009-08-071-87/+47
| | | | This confuses Debian's automake.
* Fix missing strlen compile error.Stan Cox2009-08-061-0/+1
| | | | StapParser.cxx (#include cstring): New.
* Fix grapher compilation warnings from rpm buildJosh Stone2009-08-042-10/+3
| | | | | | * grapher/Graph.cxx (Graph::Graph): Initialize in declaration order. * grapher/GraphWidget.cxx (GraphWidget::on_expose_event): Remove several unused local variables.
* Rename and package the grapherJosh Stone2009-08-042-79/+80
| | | | | | * grapher/Makefile.am: Rename the binary to stapgraph. * grapher/Makefile.in: Regen. * systemtap.spec: Add a -grapher subpackage.
* Add #include and casting to allow compilations of grapher on RHEL5.William Cohen2009-08-042-2/+3
|
* Support for presenting multiple graphsTim Moore2009-07-289-432/+616
| | | | | | | | | | | | | | | | | | | | * grapher/Graph.hxx: New file; class for single graph display. * grapher/Graph.cxx: New file. * grapher/GraphData.hxx: Associate title and axis labels with graph data and not a graph display. * grapher/GraphWidget.hxx: Move graph-related members to Graph class. * grapher/GraphWidget.cxx (getExtents, setExtents): Move to Graph class (on_expose_event): Move graph rendering to Graph. (on_button_press_event): Delegate to Graph. (on_motion_notify_event, on_scroll_event): Modify "active" graph. * grapher/StapParser.cxx (findTaggedValue): New parsing helper function. (io_callback): Support new syntax where properties are attached to graph data and not the entire graph. * grapher/grapher.cxx (GrapherWindow): Don't set graph values. * grapher/Makefile.am: Add Graph.cxx. * testsuite/systemtap.examples/general/grapher.stp: New property syntax.