14 #ifndef GTKSTATSGRAPH_H    15 #define GTKSTATSGRAPH_H    45   virtual void new_data(
int thread_index, 
int frame_number);
    58   GdkGC *get_collector_gc(
int collector_index);
    60   virtual void additional_graph_window_paint();
    61   virtual DragMode consider_drag_start(
int graph_x, 
int graph_y);
    62   virtual void set_drag_mode(DragMode drag_mode);
    64   virtual gboolean handle_button_press(GtkWidget *widget, 
int graph_x, 
int graph_y,
    66   virtual gboolean handle_button_release(GtkWidget *widget, 
int graph_x, 
int graph_y);
    67   virtual gboolean handle_motion(GtkWidget *widget, 
int graph_x, 
int graph_y);
    75   GtkWidget *_parent_window;
    77   GtkWidget *_graph_window;
    78   GtkWidget *_graph_hbox;
    79   GtkWidget *_graph_vbox;
    81   GtkWidget *_scale_area;
    84   GdkCursor *_hand_cursor;
    88   int _pixmap_xsize, _pixmap_ysize;
   100   DragMode _potential_drag_mode;
   101   int _drag_start_x, _drag_start_y;
   102   double _drag_scale_start;
   107   static const GdkColor rgb_white;
   108   static const GdkColor rgb_light_gray;
   109   static const GdkColor rgb_dark_gray;
   110   static const GdkColor rgb_black;
   111   static const GdkColor rgb_user_guide_bar;
   114   void setup_pixmap(
int xsize, 
int ysize);
   115   void release_pixmap();
   117   static gboolean window_delete_event(GtkWidget *widget, GdkEvent *event,
   119   static void window_destroy(GtkWidget *widget, gpointer data);
   120   static gboolean graph_expose_callback(GtkWidget *widget,
   121           GdkEventExpose *event, gpointer data);
   122   static gboolean configure_graph_callback(GtkWidget *widget,
   123              GdkEventConfigure *event, gpointer data);
   126   static gboolean button_press_event_callback(GtkWidget *widget,
   127                 GdkEventButton *event,
   129   static gboolean button_release_event_callback(GtkWidget *widget,
   130             GdkEventButton *event,
   132   static gboolean motion_notify_event_callback(GtkWidget *widget,
   133                  GdkEventMotion *event,
 PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void new_data(int thread_index, int frame_number)
Called whenever new data arrives.
void user_guide_bars_changed()
Called when the user guide bars have been changed.
void set_pause(bool pause)
Changes the pause flag for the graph.
virtual void new_collector(int collector_index)
Called whenever a new Collector definition is received from the client.
virtual void force_redraw()
Called when it is necessary to redraw the entire graph.
virtual void clicked_label(int collector_index)
Called when the user single-clicks on a label.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A widget that contains a stack of labels from bottom to top.
virtual void set_scroll_speed(double scroll_speed)
Called when the user selects a new scroll speed from the monitor pulldown menu, this should adjust th...
This is just an abstract base class to provide a common pointer type for the various kinds of graphs ...
This class represents a connection to a PStatsClient and manages the data exchange with the client.
virtual void set_time_units(int unit_mask)
Called when the user selects a new time units from the monitor pulldown menu, this should adjust the ...
virtual void changed_graph_size(int graph_xsize, int graph_ysize)
Called when the user has resized the window, forcing a resize of the graph.