Commit Graph

386 Commits

Author SHA1 Message Date
86414b37df Update UI to use country/city chooser 2014-08-19 00:40:26 +02:00
4e93781bb9 Read country/city list from geodata.xml into GtkListStores 2014-08-19 00:29:45 +02:00
8d82c48f5f Fix ag_db_get_chart_data_by_id() to recognise NULL values 2014-08-19 00:29:45 +02:00
1c2c2d0342 Bind signal callbacks with gtk_widget_class_bind_template_callback() 2014-08-18 22:49:19 +02:00
cdb856d8ed Create a DEFAULT_ALTITUDE macro
It is set to 280.0, which is roughly the average altitude of dry land
2014-08-18 22:49:19 +02:00
2d10273af8 Bind signal callbacks with gtk_widget_class_bind_template_callback() 2014-08-18 22:17:50 +02:00
512897cfd3 Create a DEFAULT_ALTITUDE macro
It is set to 280.0, which is roughly the average altitude of dry land
2014-08-17 09:36:30 +02:00
cb99af5a0d Add GtkListStore for city and country list 2014-08-17 00:53:48 +02:00
3169e8a587 Empty the Edit tab fields when creating a new chart 2014-08-16 21:27:49 +02:00
458c984034 Code beautification 2014-08-16 14:29:45 +02:00
6d9db1bc7d Reorder functions of ag-window.c to remove prototype need 2014-08-12 12:33:55 +02:00
a44da21306 Refine dist value so icons (hopefully) don’t get too far from the chart 2014-08-12 00:06:44 +02:00
bb38df71a7 Fix #46 2014-08-11 23:46:22 +02:00
085f2225ea Add debug messages to ag_db_save_identical() 2014-08-11 22:19:07 +02:00
5d028b5e17 Add notification for property setters 2014-08-11 22:19:07 +02:00
6e736c9b87 Add AgChart::note property 2014-08-11 22:19:07 +02:00
8b5f99d5b4 Rename chart_changed() to ag_window_chart_changed()
Just to follow naming conventions
2014-08-11 22:19:06 +02:00
1ae1972cd0 Remove chart name when going back to chart list
Fixes #47
2014-08-11 01:26:58 +02:00
142284dada Delete selected charts 2014-08-11 01:01:04 +02:00
4a42ae40b6 Implement view-selection-changed signal handler 2014-08-11 01:01:04 +02:00
f44c5b8c86 Add selection mode button and selection toolbar 2014-08-11 01:01:04 +02:00
e0b4d30b07 Implement chart deletion from database 2014-08-11 01:01:04 +02:00
88fb58a527 Import Placidus charts 2014-08-10 14:31:38 +02:00
fee23777f6 Add Placidus import to the app menu 2014-08-10 14:31:38 +02:00
6e847d83ed Create .hor filter for Placidus files 2014-08-10 14:31:38 +02:00
ea3389aadd Define gdouble endianness conversion macros
GLib doesn’t have these for some reason. These are protected in case a
later version of GLib defines them, too.
2014-08-10 14:31:38 +02:00
a30d19d1bb Generalize chart loading functions
* ag_app_import_chart() became ag_app_import_file(), and has the potential
  to load any file type
* ag_app_import_cb() so it can open multiple file types
* ag_chart_load_from_file() is now called ag_chart_load_from_agc()
2014-08-10 14:31:38 +02:00
a3927458b4 Make ag_app_buttoned_dialog()'s first parameter nullable 2014-08-10 09:46:14 +02:00
49c41ca7d7 Refactor ag_window_recalculate_chart() to recalc if edit tab has changed 2014-08-06 00:04:59 +02:00
ffde691aef Rename recalculate_chart() to ag_window_recalculate_chart()
This is simply to follow naming conventions
2014-08-06 00:04:59 +02:00
5e97af76ea Fix tab_edit widget’s name in .ui file 2014-08-06 00:04:34 +02:00
aefbb8e4fa ag_db_save_identical can now compare based only on chart-related data
This way the chart won’t get recalculated on a name change.
2014-08-05 23:45:16 +02:00
881b58080a Add ag_house_system_id_to_nick() and ag_house_system_nick_to_id()
This is to convert between house system ID (required for chart generating)
and GEnum nick (required for saving).
2014-08-04 00:31:25 +02:00
3ad29b3f2d Moved to gtk_application_set_accels_for_action() API
... and with that, to a GTK+ 3.12 requirement.
2014-08-03 23:32:17 +02:00
e3b109819e Merge branch 'master' into chart-db 2014-08-03 11:15:29 +02:00
803b0211dd Using g_clear_object() instead of g_object_unref() in ag_window_set_chart 2014-08-03 11:12:29 +02:00
0d1358303a ag_app_import_chart() now saves the chart immediately after importing 2014-08-03 11:03:23 +02:00
35c7d32636 ag_window_save_chart() now creates an AgDbSave struct for a new chart
Its db_id is -1, thus considered unsaved.
2014-08-03 11:02:52 +02:00
069ce4574f ag_window_can_close() now checks for unsaved (db_id == -1) charts, too 2014-08-03 10:58:19 +02:00
b0e7daeec8 ag_db_save_chart() now sets save_data->db_id after a successful INSERT 2014-08-03 10:57:05 +02:00
c871246d58 Add refresh button to chart list 2014-08-02 21:55:17 +02:00
2f9637e698 Add error checking to ag_window_can_close() 2014-08-02 21:41:30 +02:00
1049b933e8 ag_window_back_action() goes to list only if the chart is saved
The user is prompted if they actually want to save or discard
2014-08-02 20:00:56 +02:00
8d76bdf1ef ag_window_new_chart_action() goes to chart tab if chart was not correctly closed 2014-08-02 20:00:24 +02:00
f1fba37d0d ag_window_save_action() now only saves if needed 2014-08-02 19:59:21 +02:00
d2d67534b3 Change return type of ag_window_list_item_activated_cb() to void
The signal itself defines its return type as GTK_TYPE_VOID
2014-08-02 19:58:33 +02:00
e2701396cc Check if chart needs to be saved upon close action 2014-08-02 19:54:30 +02:00
1c84845fa2 Add delete-event handler to AgWindow 2014-08-02 19:53:50 +02:00
6e35a98cd5 Add ag_app_buttoned_dialog() to ag-app.h 2014-08-02 19:52:47 +02:00
367a91cb51 Show error message if DB chart could not be loaded 2014-08-02 10:28:22 +02:00
377a2e1e8a Rename Open functionality to Import 2014-08-02 01:41:33 +02:00
ab12922d8a Rework chart save procedure
* Fixed some design flows: AgDb should not know about the window
* AgChart now only creates an AgDbSave structure, saving is done through
  AgWindow
2014-08-02 01:37:11 +02:00
860638ed98 Add function ag_app_buttoned_dialog()
This is required to create dialogs with more than one buttons, like Yes/No
dialogs.
2014-08-02 00:34:07 +02:00
defdc75eb0 Add missing va_end() to ag_db_select() 2014-08-02 00:26:49 +02:00
c2241e622a Add New/Back buttons to the header bar
New opens the Edit tab immediately, back goes back to the chart list
2014-08-01 23:55:26 +02:00
d30b31ce7e Merge branch 'master' into chart-db
Conflicts:
        src/ag-chart.h
        src/ag-window.c

Conflicts fixed without problems.
2014-08-01 18:03:27 +02:00
c79e24c709 Annotated AgDb functions 2014-08-01 10:51:15 +02:00
c22fc02a2a Add missing (but actually unnecessary) gtk.h include 2014-08-01 01:09:34 +02:00
c22c81cc61 Move away from popover
GtkPopover cannot display accels, which is not ideal for the gear/view
menu. Switching to normal menus instead.
2014-08-01 01:09:12 +02:00
12e088b452 Add function ag_chart_save_to_db() to save the chart to the db 2014-07-31 21:23:23 +02:00
2e34b71f69 Add function ag_db_save_identical()
It compares two AgDbSave structs and returns TRUE if they are equal or
identical.
2014-07-31 21:22:53 +02:00
1628a71f8b Remove URI from AgWindowPrivate 2014-07-31 21:22:44 +02:00
41098fd2c0 Rename Save as function to Export 2014-07-31 18:12:23 +02:00
8533b2f887 Load chart list when opening a new window 2014-07-31 01:06:24 +02:00
36e89f3fe4 Create the GdMainView for the chart list
GdMainView doesn’t implement GtkBuildable yet, thus, it cannot be added
via the UI file.
2014-07-31 01:06:10 +02:00
809a1b215f Add libgd as a dependency and git submodule
libgd is required for GdMainView until MainView gets into Gtk (which I hope
will happen)
2014-07-31 01:05:23 +02:00
47fa484875 Add function ag_window_load_chart_list()
It loads all charts from the database and fills the main view’s list
store with it
2014-07-31 01:05:19 +02:00
e2606ea5eb Add list store model for the GdMainView 2014-07-31 01:03:49 +02:00
310caa9292 Add function ag_chart_new_from_db_save()
It constructs an AgChart from an AgDbSave struct
2014-07-31 01:00:22 +02:00
bee9ae363f Fix ag_db_select()
Using parameter @err for error collection was a bad idea. Creating
local_err instead.
2014-07-31 01:00:16 +02:00
ea9e4a73a5 Add function ag_db_get_chart_data_by_id()
It loads one single chart from the database and fills an AgDbSave
struct with its data
2014-07-31 01:00:03 +02:00
bfa4cf8cca Add AgDbError error type 2014-07-31 00:59:53 +02:00
8a654e9c0f Add function ag_db_get_chart_list() 2014-07-31 00:49:55 +02:00
e8d9386916 Add function ag_db_save_chart() to add/update charts in the database 2014-07-22 00:11:08 +02:00
98d08893ef Add struct AgDbSave together with the function ag_db_save_data_free() 2014-07-22 00:11:08 +02:00
749a253f18 Code beautification in ag-chart.h 2014-07-21 23:46:20 +02:00
0fc41ba545 Add missing closing bracket in ag_db_non_select() 2014-07-21 23:46:09 +02:00
89e5f5c4dc Code beautification in ag-chart.h 2014-07-21 23:38:22 +02:00
4d64e707bc Add AgDb class 2014-07-20 23:18:45 +02:00
fe25f5ce9d Remove unneeded UI_FILE #define
All UI code is now stored in GResources
2014-07-20 23:18:28 +02:00
d671500a1a Code beautification in xml_open_gresource() 2014-07-20 23:15:58 +02:00
cad657c1b1 Move AgChartPrivate to ag-chart.c completely 2014-07-19 10:46:41 +02:00
bc81187e8b Set month and day to 1, so warnings disappear
This is somewhat cosmetic, a better approach should be found.
Fixes #23
2014-07-18 23:05:40 +02:00
d23c7c42c4 Unset house system is now a critical error
Fixes #38
2014-07-18 22:33:58 +02:00
46cb2b24a5 Add default house system to preferences dialog 2014-07-18 22:27:00 +02:00
69bc58495c Set Edit tab’s house system to the default on startup 2014-07-18 20:49:35 +02:00
0ead40813b Rename ag_window_find_house_system() to ag_window_set_house_system() 2014-07-18 20:49:02 +02:00
bd277de1bc Add house system save functionality
This was missing from #37
2014-07-18 18:32:53 +02:00
427f915f62 Use enum nick instead of name in house system saving
This is easier to do, and the save file has that value already
2014-07-18 18:31:56 +02:00
74e8373dad Add missing g_free() call for house_system_enum_name in chart loading 2014-07-18 18:30:11 +02:00
71cc129e95 Now considering house system setting on the Edit tab 2014-07-18 00:15:20 +02:00
023b179457 House system GtkComboBox now indicates the loaded house system 2014-07-18 00:02:56 +02:00
fa6a850331 Add house system loading to chart load code 2014-07-18 00:02:56 +02:00
09d1fe352a Add the house system configuration widgets to the Edit tab
It is already filled with data, but it is not functional yet!
2014-07-18 00:02:56 +02:00
4e5b649173 Code beautification in ag_chart_load_from_file() 2014-07-17 23:11:24 +02:00
e745312ffe Remove err when checking for note in save file
Note is not required to be present in any save file. However,
get_by_xpath() sets err if it is not, which will never be checked for.
2014-07-17 23:11:24 +02:00
5671a751a9 Fix error messages in AgChart’s get_by_xpath() 2014-07-17 23:08:34 +02:00
183c0a00dc Remove unnecessary upper bound for year_adjust 2014-07-16 22:20:34 +02:00
39881908b7 Remove unnecessary lines from ag_window_init()
* priv->settings assignment is already done in that function
* gtk_window_set_hide_titlebar_when_maximized() is somewhat deprecated
  with HeaderBars
2014-07-15 16:43:56 +02:00
2656df25cb Code beautification in ag_chart_create_svg() 2014-07-13 23:01:23 +02:00