X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Flttvwindow%2Flttvwindow%2Flttvwindow.h;h=3078ed15a368f906e8fe3d67a0dca5a9db5cb053;hb=a7804dbc9bd7727d426e78c977511c36bfc6af1c;hp=d0a97c07d07cb02cec2dd3dc9f4c1e690675cfe4;hpb=6a4f1205696729eff6a0d06b789d2adaac0ce0e5;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h b/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h index d0a97c07..3078ed15 100644 --- a/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h +++ b/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h @@ -259,6 +259,7 @@ FIXME : explain other important events #include #include #include +#include /* Module Related API */ @@ -266,8 +267,11 @@ FIXME : explain other important events extern GQuark LTTV_VIEWER_CONSTRUCTORS; /* constructor a the viewer */ -typedef GtkWidget* (*lttvwindow_viewer_constructor)(Tab *tab); +typedef GtkWidget* (*lttvwindow_viewer_constructor)(LttvPlugin *plugin); +extern gint lttvwindow_preempt_count; + +#define CHECK_GDK_INTERVAL 50000 /** * Function to register a view constructor so that main window can generate @@ -486,6 +490,18 @@ void lttvwindow_unregister_filter_notify(Tab *tab, gpointer hook_data); +/** + * Function to get the current filter of the main window : useful at viewer + * instanciation. + * + * @param tab the tab the viewer belongs to. + * + * returns : the current filter. + */ + + +LttvFilter *lttvwindow_get_filter(Tab *tab); + /** * Function to register a hook function for a viewer to set/update its * current time. @@ -699,6 +715,22 @@ void lttvwindow_events_request_remove_all(Tab *tab, gconstpointer viewer); +/** + * Function to see if there are events request pending. + * + * It tells if events requests are pending. Useful for checks in some events, + * i.e. detailed event list scrolling. + * + * @param tab the tab the viewer belongs to. + * @param viewer a pointer to the viewer data structure + * @return : TRUE is events requests are pending, else FALSE. + */ + +gboolean lttvwindow_events_request_pending(Tab *tab); + + + + /** * Function to get the current time interval shown on the current tab. * It will be called by a viewer's hook function to update the @@ -794,17 +826,34 @@ void set_current_time(Tab *tab, const LttTime *current_time); void events_request_free(EventsRequest *events_request); -/* main_window_add_child_window +GtkWidget *main_window_get_widget(Tab *tab); + +void set_current_position(Tab *tab, const LttvTracesetContextPosition *pos); + + +/** + * Function to disable the EventsRequests scheduler, nestable. + * + */ +static inline void lttvwindow_events_request_disable(void) +{ + lttvwindow_preempt_count++; +} + +/** + * Function to restore the EventsRequests scheduler, nestable. * - * Add the widget as a data to the main window : it will close a floating window - * with its main window by calling the destroy_fct. */ +static inline void lttvwindow_events_request_enable(void) +{ + lttvwindow_preempt_count--; +} + + + + -void main_window_add_child_window(Tab *tab, gpointer data, - const gchar *name, GDestroyNotify descroy_fct); -void main_window_remove_child_window(Tab *tab, - const gchar *name); #endif //LTTVWINDOW_H