pavi  0.0
Map Path Viewer
pavi.bas
Go to the documentation of this file.
1 
8 
9 #INCLUDE ONCE "Gir/OsmGpsMap-1.0.bi"
10 #INCLUDE ONCE "Gir/_GLibMacros-2.0.bi"
11 #INCLUDE ONCE "Gir/_GObjectMacros-2.0.bi"
12 #INCLUDE ONCE "track_store.bi"
13 #INCLUDE ONCE "track_layer.bi"
14 #INCLUDE ONCE "gui.bi"
15 #INCLUDE ONCE "debug.bi"
16 
17 TYPE AS GtkApplication Pavi
18 TYPE AS GtkApplicationClass PaviClass
19 
20 G_DEFINE_TYPE(Pavi, pavi, GTK_TYPE_APPLICATION)
21 
22 SUB pavi_init CDECL(BYVAL App AS Pavi PTR)
23 END SUB
24 
25 SUB pavi_startup CDECL(BYVAL App AS GApplication PTR)
26  G_APPLICATION_CLASS(pavi_parent_class)->startup(App)
27  PAR = NEW PARdata
28  GUI = NEW GUIdata("pavi.ui", App)
29 END SUB
30 
31 SUB pavi_activate CDECL(BYVAL App AS GApplication PTR)
32 END SUB
33 
34 SUB pavi_open CDECL( _
35  BYVAL App AS GApplication PTR _
36  , BYVAL Files AS GFile PTR PTR _
37  , BYVAL N_files AS gint _
38  , BYVAL Hint AS CONST gchar PTR)
39  DIM AS TrackLoader PTR last
40  FOR i AS gint = 0 TO N_files - 1
41  WITH TYPE<TS_add>(g_file_peek_path(Files[i]))
42  IF .Got THEN ?"old entry: ",.Nam,.Fol,.Loa
43  last = .Loa
44  END WITH
45  NEXT : TS_select(last->Path)
46  gtk_widget_queue_draw(GTK_WIDGET(GUI->TVT))
47 END SUB
48 
49 SUB pavi_finalize CDECL(BYVAL Obj AS GObject PTR)
50  G_OBJECT_CLASS(pavi_parent_class)->finalize(Obj)
51 END SUB
52 
53 SUB pavi_shutdown CDECL(BYVAL App AS GApplication PTR)
54  DELETE(GUI)
55  DELETE(PAR)
56  G_APPLICATION_CLASS(pavi_parent_class)->shutdown(App)
57 END SUB
58 
59 
60 SUB pavi_class_init CDECL(BYVAL Clas AS PaviClass PTR)
61 WITH *G_APPLICATION_CLASS(Clas)
62  .startup = @pavi_startup()
63  .activate = @pavi_activate()
64  .open = @pavi_open()
65  .shutdown = @pavi_shutdown()
66 END WITH
67  G_OBJECT_CLASS(Clas)->finalize = @pavi_finalize
68 END SUB
69 
70 
71 VAR pavi = g_object_new( _
72  pavi_get_type() _
73  , @"application-id", @"com.github.dtjf.pavi" _
74  , "flags", G_APPLICATION_HANDLES_OPEN _
75  , NULL)
76 VAR status = g_application_run(G_APPLICATION(pavi), __FB_ARGC__, __FB_ARGV__)
77 g_object_unref(pavi)
78 
79 END status
80 
PaviClass
GtkApplicationClass PaviClass
Definition: pavi.bas:18
track_store.bi
Header for tree store of tracks handling.
pavi_open
SUB_CDECL pavi_open(BYVAL_AS_GApplication_PTR App, BYVAL_AS_GFile_PTR_PTR Files, BYVAL_AS_gint N_files, BYVAL_AS_CONST_gchar_PTR Hint)
Definition: pavi.bas:35
pavi
VAR pavi
Definition: pavi.bas:72
pavi_finalize
SUB_CDECL pavi_finalize(BYVAL_AS_GObject_PTR Obj)
Definition: pavi.bas:50
pavi_shutdown
SUB_CDECL pavi_shutdown(BYVAL_AS_GApplication_PTR App)
Definition: pavi.bas:54
TS_select
SUB TS_select(BYVAL_AS_STRING Path)
Handle new selection.
Definition: track_store.bas:332
status
VAR status
Definition: pavi.bas:77
pavi_activate
SUB_CDECL pavi_activate(BYVAL_AS_GApplication_PTR App)
Definition: pavi.bas:32
pavi_class_init
SUB_CDECL pavi_class_init(BYVAL_AS_PaviClass_PTR Clas)
Definition: pavi.bas:61
pavi_startup
SUB_CDECL pavi_startup(BYVAL_AS_GApplication_PTR App)
Definition: pavi.bas:25
debug.bi
Pavi
GtkApplication Pavi
Definition: pavi.bas:17
track_layer.bi
Header for advanced tracks layer.
pavi_init
SUB_CDECL pavi_init(BYVAL_AS_Pavi_PTR App)
Definition: pavi.bas:22
gui.bi
Header containing Glade ui file pointers.