summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2013-04-24Split report_dives into UI and logic and move to divelist filesGravatar Dirk Hohndel
Functionality is unchanged, except we now have a nice process_dives function that deals with all the logic and that gets called from report_dives from the Gtk code. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-24Merge branch 'useStarWidgets' of git://github.com/tcanabrava/subsurface into QtGravatar Dirk Hohndel
2013-04-24Correctly format depth and timeGravatar Dirk Hohndel
We really need those leading 0s. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-24Fix column headings for divelistGravatar Dirk Hohndel
This looks better and is consistent with the Gtk version. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-24Fix the order of the DiveInformation tab bar.Gravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2013-04-24Remove the use of this->Gravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2013-04-24Use the star widget in it's right placeGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2013-04-24Amend divetrip model to use int unitsGravatar Amit Chaudhuri
Amend the DiveItem class to avoid float in favour of int. Add getters which return display friendly QStrings reflecting user preferences for (e.g.) depth. Modify DiveTripModel to support controlled alignment by column; right align for depth and duration. Fix problems with utf8 encoding on rating stars, degree symbols and O2 subscript. Signed-off-by: Amit Chaudhuri <amit.k.chaudhuri@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23A hook for DM4 XML importGravatar Miika Turkia
This will take the DM4 XSLT into use. In the future it is quite likely that we will have to start using something more specific on top of the root element name to identify dive log formats. But as "Dive" is currently a unique root element name for us, this suffices for now. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23XSLT for importing individual DM4 divesGravatar Miika Turkia
This XSLT can be used when exporting single dives from DM4 and importing them to Subsurface. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Retain event sort order on restartGravatar Miika Turkia
The events that had same time stamp were reversed in order on every new load of the log file. This patch will keep the order static. (Changing order is annoying when using version control to store the logs.) Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Add a simple table-based cns calculationsGravatar Anton Lundin
For dives where divecomputers haven't provided us with a cns, we calculate our cns accumulated during that dive based on a simple table. We also check if we did a dive in the prior 12 ours and grab the cns from it and calculate how much of that still affects us. [Dirk Hohndel: a couple of small changes: remove unnecessary check of cns values in the samples of the first dive computer, changed the way we determine the 'previous dive' and used the end time of that previous dive for the decay calculation] Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Switch to UTF-8 on .DLD exportGravatar Miika Turkia
Let's use the shiny new UTF-8 encoding on divelogs.de export. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Merge branch 'StarWidgetResource' of git://github.com/tcanabrava/subsurface ↵Gravatar Dirk Hohndel
into Qt
2013-04-23Fix missing gtk-mac-integration includesGravatar Henrik Brautaset Aronsen
GTKCFLAGS were overwritten. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Remove trailing spaces from config.cache fileGravatar Henrik Brautaset Aronsen
Things like «ifeq ($(UNAME), darwin)» would not trigger, since variables in the config.cache files had trailing spaces. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Use the star from the resource file instead of hardcoding it's patchGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2013-04-23Fix config.cache creation on a MacGravatar Henrik Brautaset Aronsen
Mac uses BSD sed by default, which doesn't support \n substition by default. Replacing sed with tr. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Set the window icon in QtGravatar Dirk Hohndel
And even use the resource file to allow me to use an alias for it in the actual code. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Consolidate the two .qrc filesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Merge branch 'buildsystem-for-dirk' of ↵Gravatar Dirk Hohndel
http://github.com/thiagomacieira/subsurface into Qt
2013-04-23Fix compilation: in C++, enums don't have operator++Gravatar Thiago Macieira
To use ++, we need to declare the variable as int. But then we need to cast to the enum type. This is using C-style casts because this is still C-like code. Signed-off-by: Thiago Macieira <thiago@macieira.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-23Clean up the moc intermediates too in make cleanGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Don't hardcode the paths for mkdir: just get them from the targetGravatar Thiago Macieira
The $(@D) (equivalent to $(dir $@)) tells us what the directory the target is in. We could also have used the one for the source. They're equivalent there. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Add support for Qt resources in SubsurfaceGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Prettify the msgfmt and linking argumentsGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Make the "silent mode" compilation be optional only.Gravatar Thiago Macieira
If you run make V=1 Then we'll output the full command-line. It's useful for debugging problems with the build. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Generate the C++ dependencies at configure-timeGravatar Thiago Macieira
We use the -MG preprocessor option to the compiler to ask it to check all #includes and tell us what's missing. Then our own rules will generate the moc and uic files that the .cpp #include. Unfortunately, our rules make uic generate output in qt-ui/ for qt-ui/*.ui, while the compiler generates rules for no directory. We need to fake it by forcing the generation. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Get the list of dependency includes from the SOURCES listGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Add a SOURCES variable to the Makefile, replacing OBJSGravatar Thiago Macieira
Instead of listing objects, let's list sources. This matches also what qmake and most other buildsystems do. The notable exception is the kernel. The reason that listing the sources will be interesting is because I'm about to add rules to create the dependency files. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Add a HEADERS variable to the MakefileGravatar Thiago Macieira
Similar to the qmake variable of the same name, this lists (at least) the headers that may need moc to be run on. Adding more headers is not a problem. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Cache the Qt tools detected (and detect RCC)Gravatar Thiago Macieira
Since we're caching the include flags and linker flags, we should also cache the exact helper binaries we're running. This avoids getting errors because the environment changed. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Introduce a cache of the configurationGravatar Thiago Macieira
You may have noticed that running make is a little slow. Every time that it is loaded, it will try to detect everything again. So, instead, save the output and reload it the next time. This is implemented by adding a rule that (re-)creates the config.cache file, which is included by make. If the file doesn't exist yet, make will first run the rule which creates it, then reload itself. You can also cause it to reconfigure by running "make configure". Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Trim Makefile, Configure.mk and Rules.mkGravatar Thiago Macieira
Configure.mk contains the detection rules, whereas Rules.mk contains the rules to actually build Subsurface. This simplifies Makefile greatly, which is the file that should be actually modified during regular updates to the codebase. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Create Rules.mk and Configure.mk by copying the MakefileGravatar Thiago Macieira
This is to help Git know that the two files are the same content as the Makefile. The next commit will trim the files to what they need to be.
2013-04-23Reorder the MakefileGravatar Thiago Macieira
Create three sections: 1) the detection rules 2) the main rules, what we usually edit 3) the build rules, which we usually don't change Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Move the MSGOBJS variable definition a little further downGravatar Thiago Macieira
Move it closer to the actual rules. This is not a variable that we'll usually modify. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Remove the unused OSSUPPORT_CFLAGS variableGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Move the list of objects a little further upGravatar Thiago Macieira
This also implies we don't need the OSSUPPORT variable anymore. We simply add to OBJS. Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Split the SQLite3, libzip, libxslt and osmgpsmap detection from useGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-23Move some of the checks a little bit upGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org>
2013-04-22Initial version of the Star Picker Widget.Gravatar Tomaz Canabrava
A very simple to use widget: StarWidget *stars = new StarWidget( windowParent); stars->setMaximumStars(10); stars->setCurrentStars( rand()%10); stars->show(); connect(stars, SIGNAL(valueChanged(int)), someObj, SLOT(starsChangedValue(int))); It currently uses a 'star.svg' file on the same folder as the binary. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-22Move model related code from MainWindow and adjustments.Gravatar Tomaz Canabrava
Moves the DiveTrip model related code to models.h The DiveTripModel was implemented in three parts: DiveTripModel.h DiveTripModel.cpp MainWindow.cpp (the code to populate the model) This patch changes the DiveTripModel from it's original implementation to the file models.h, wich should store all models (Dirk requested the Qt developers to not create 2 files per class, but instead to use a file for functionality, and data-models are one functionality.) Besides that, this code cleans up a bit the style: removed operator<< for .push_back, const references where they apply, moved the internal DiveItem class to the .cpp since it should be visible only to the DiveTripModel class, and redesigned the current interface of the model to be identical of the GTK one (used the UTF8-star and 2 subscribed, for instance). Amit (the creator of the original code) should comment here if it's ok with my changes. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-22Fix crash with some setupsGravatar Dirk Hohndel
Initialize Qt earlier, before Gtk gets its hands on argc / argv. Suggested-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-18Use helper function to get dive date stringGravatar Dirk Hohndel
Correct order of arguments in the DiveItem constructor call. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-18Move creation of dive and dive trip date string into helper functionsGravatar Dirk Hohndel
This allows this code to easily be shared by Gtk and Qt UI. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-18Use get_dive to populate divelistview with divesGravatar Amit Chaudhuri
Add dives from dive_table to the model/view using the functions provided to extract the dives. We do not yet handle trips. Formatting of date/time, depth and duration need attention. Relies on earlier patch to delay Qt ui construction. We should look at the signals we publish to link to other widgets etc.. [Dirk Hohndel: use for_each_dive -- clean up some white space] Signed-off-by: Amit Chaudhuri <amit.k.chaudhuri@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-18Delay Qt ui constructionGravatar Amit Chaudhuri
The Qt ui will need to read the dive_table to populate widgets with dives. Gtk functionality in init_ui is required to parse the dives. Split init_ui to allow parsing to proceed and complete before Qt ui mainwindow constructor is called. Play with qDebug()'s printf style (Thiago!) Signed-off-by: Amit Chaudhuri <amit.k.chaudhuri@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-15Added the code that will load and populate the Tank InfoGravatar Tomaz Canabrava
Added the code that will load and populate the Tank Info ComboBox that`s used by the user to select the Cylinder description. Code curerntly implements more than the GTK version since the GTK version of it was a plain-list, this one is a table based model that can be used in ListViews ( like we use now in the ComboBox ) but also in TableViews ( if there`s a need in the future to see everything that`s catalogued in the Tank Info struct. ) Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-04-15Remove second dive_trip_list definition and douplicate helper functionGravatar Dirk Hohndel
dive_trip_list is simply a global variable, declared in dive.h. The clear_trip_indexes() helper is purely logic and was moved to divetrip.c - but then not deleted in divetrip-gtk.c Signed-off-by: Dirk Hohndel <dirk@hohndel.org>