summaryrefslogtreecommitdiffstats
path: root/grapher/GraphStyle.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'grapher/GraphStyle.hxx')
-rw-r--r--grapher/GraphStyle.hxx23
1 files changed, 17 insertions, 6 deletions
diff --git a/grapher/GraphStyle.hxx b/grapher/GraphStyle.hxx
index 4a0cd955..9625f451 100644
--- a/grapher/GraphStyle.hxx
+++ b/grapher/GraphStyle.hxx
@@ -14,29 +14,40 @@ namespace systemtap
public:
virtual void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
Graph* graph, Cairo::RefPtr<Cairo::Context> cr) = 0;
+ virtual ssize_t dataIndexAtPoint(double x, double y,
+ std::tr1::shared_ptr<GraphDataBase>
+ graphData,
+ std::tr1::shared_ptr<Graph> graph)
+ {
+ return -1;
+ }
};
class GraphStyleBar : public GraphStyle
{
public:
- virtual void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
- Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
+ void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
+ Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
+
static GraphStyleBar instance;
+ ssize_t dataIndexAtPoint(double x, double y,
+ std::tr1::shared_ptr<GraphDataBase> graphData,
+ std::tr1::shared_ptr<Graph> graph);
};
class GraphStyleDot : public GraphStyle
{
public:
- virtual void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
- Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
+ void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
+ Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
static GraphStyleDot instance;
};
class GraphStyleEvent : public GraphStyle
{
public:
- virtual void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
- Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
+ void draw(std::tr1::shared_ptr<GraphDataBase> graphData,
+ Graph* graph, Cairo::RefPtr<Cairo::Context> cr);
static GraphStyleEvent instance;
};
}