Top | ![]() |
![]() |
![]() |
![]() |
gpointer | (*VikDataSourceInitFunc) () |
gchar * | (*VikDataSourceCheckExistenceFunc) () |
void | (*VikDataSourceAddSetupWidgetsFunc) () |
void | (*VikDataSourceGetProcessOptionsFunc) () |
gboolean | (*VikDataSourceProcessFunc) () |
void | (*VikDataSourceProgressFunc) () |
void | (*VikDataSourceAddProgressWidgetsFunc) () |
void | (*VikDataSourceCleanupFunc) () |
void | (*VikDataSourceOffFunc) () |
void | a_acquire () |
GtkWidget * | a_acquire_trwlayer_menu () |
GtkWidget * | a_acquire_trwlayer_track_menu () |
GtkWidget * | a_acquire_track_menu () |
void | a_acquire_set_filter_track () |
void (*VikDataSourceAddSetupWidgetsFunc) (GtkWidget *dialog
,VikViewport *vvp
,gpointer user_data
);
Create widgets to show in a setup dialog, set up state via user_data.
void (*VikDataSourceGetProcessOptionsFunc) (gpointer user_data
,ProcessOptions *process_options
,gpointer download_options
,const gchar *input_file_name
,const gchar *input_track_file_name
);
set both to NULL
to signal refusal (ie already downloading).
gboolean (*VikDataSourceProcessFunc) (gpointer vtl
,ProcessOptions *process_options
,BabelStatusFunc Param3
,acq_dialog_widgets_t *adw
,gpointer download_options
);
The actual function to do stuff - must report success/failure.
process_options |
options to control the behaviour of this function (see ProcessOptions) |
|
status_cb |
the VikDataSourceInterface.progress_func |
|
adw |
the widgets and data used by VikDataSourceInterface.progress_func |
|
download_options |
Optional options used if downloads from URLs is used. |
void (*VikDataSourceProgressFunc) (BabelProgressCode c
,gpointer data
,acq_dialog_widgets_t *w
);
void (*VikDataSourceAddProgressWidgetsFunc) (GtkWidget *dialog
,gpointer user_data
);
Creates widgets to show in a progress dialog, may set up state via user_data.
void
(*VikDataSourceCleanupFunc) (gpointer user_data
);
Frees any widgets created for the setup or progress dialogs, any allocated state, etc.
void (*VikDataSourceOffFunc) (gpointer user_data
,gchar **babelargs
,gchar **file_descriptor
);
void a_acquire (VikWindow *vw
,VikLayersPanel *vlp
,VikViewport *vvp
,vik_datasource_mode_t mode
,VikDataSourceInterface *source_interface
,gpointer userdata
,VikDataSourceCleanupFunc cleanup_function
);
Process the given VikDataSourceInterface for sources with no input data.
vw |
The VikWindow to work with |
|
vlp |
The VikLayersPanel in which a VikTrwLayer layer may be created/appended |
|
vvp |
The VikViewport defining the current view |
|
mode |
How layers should be managed |
|
source_interface |
The VikDataSourceInterface determining how and what actions to take |
|
userdata |
External data to be passed into the VikDataSourceInterface |
|
cleanup_function |
The function to dispose the VikDataSourceInterface if necessary |
GtkWidget * a_acquire_trwlayer_menu (VikWindow *vw
,VikLayersPanel *vlp
,VikViewport *vvp
,VikTrwLayer *vtl
);
Create a sub menu intended for rightclicking on a TRWLayer's menu called "Filter".
GtkWidget * a_acquire_trwlayer_track_menu (VikWindow *vw
,VikLayersPanel *vlp
,VikViewport *vvp
,VikTrwLayer *vtl
);
Create a sub menu intended for rightclicking on a TRWLayer's menu called "Filter with Track "TRACKNAME"...".
GtkWidget * a_acquire_track_menu (VikWindow *vw
,VikLayersPanel *vlp
,VikViewport *vvp
,VikTrack *tr
);
Create a sub menu intended for rightclicking on a track's menu called "Filter".
void
a_acquire_set_filter_track (VikTrack *tr
);
Sets application-wide track to use with filter. references the track.
typedef struct { VikWindow *vw; VikLayersPanel *vlp; VikViewport *vvp; gpointer userdata; } acq_vik_t;
typedef struct { GtkWidget *status; VikWindow *vw; VikLayersPanel *vlp; VikViewport *vvp; GtkWidget *dialog; gboolean running; VikDataSourceInterface *source_interface; gpointer user_data; } acq_dialog_widgets_t;
global data structure used to expose the progress dialog to the worker thread.
struct VikDataSourceInterface { const gchar *window_title; const gchar *layer_title; vik_datasource_mode_t mode; vik_datasource_inputtype_t inputtype; gboolean autoview; gboolean keep_dialog_open; /* when done */ gboolean is_thread; /*** Manual UI Building ***/ VikDataSourceInitFunc init_func; VikDataSourceCheckExistenceFunc check_existence_func; VikDataSourceAddSetupWidgetsFunc add_setup_widgets_func; /*** ***/ VikDataSourceGetProcessOptionsFunc get_process_options_func; VikDataSourceProcessFunc process_func; VikDataSourceProgressFunc progress_func; VikDataSourceAddProgressWidgetsFunc add_progress_widgets_func; VikDataSourceCleanupFunc cleanup_func; VikDataSourceOffFunc off_func; /*** UI Building ***/ VikLayerParam * params; guint16 params_count; VikLayerParamData * params_defaults; gchar ** params_groups; guint8 params_groups_count; };
Main interface.