aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-06-03Different states for edit / add dive siteGravatar Tomaz Canabrava
When we start the dive site edit dialog, either for add or for edit, we don't save the state, so the reject state didn't know what to do with the dive site. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Remove unnecessary callsGravatar Tomaz Canabrava
All those calls are unnecessary: The first will be called when the QComboBox in the MainTab changes its index, and the other two calls shouldn't be called: the only thing that should change a dive site inside the LocationManagement is the LocationManagement. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03centerOnCurrentDive needs to be a slotGravatar Tomaz Canabrava
I'll connect this in the future with a few methods that will try to maintain state between dive changes. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Clear up editDiveGeoPosition for the new approachGravatar Tomaz Canabrava
We can only enter in editing state by opening the editing dialog, so the mainwindow check is now invalid. and also we shouldn't set the editingmode to false, since we will edit until the user clicks close. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Use for_each_dive_site to populate the dives in the globeGravatar Tomaz Canabrava
When we didn't have a proper dive_site_table, the dive sites where scattered across all dives and so we looped over all dives to find the dive sites and add them to the tree. Now this is a bit cleaner, a bit faster. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Rework the method to pick a dive site via the globeGravatar Tomaz Canabrava
The globe used to allow the user to pick a dive site if the dive didn't have coordinates, but this is now wrong since when in dive site editing mode we can select multiple times new coordinates for it, and it should only be marked as finished when the user actually finishes it. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Do not trigger a dive site change when setting a diveGravatar Tomaz Canabrava
When setting a dive, we fire the dive site change a few times after the index of the QComboBox is changed; we don't need that - fire just once. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Don't clear the underline model of the comboboxGravatar Tomaz Canabrava
Clear was the right method to call when we used a line edit, and the line edit didn't had a model to provide data. Calling clear() on a QComboBox will delete all itens inside of it, and what we wanted was to choose an invalid index - and that's -1 Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Remove commented out codeGravatar Tomaz Canabrava
This code was commented out when I started to port the locations to new code, and it's harmless to remove it now. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Don't rely on current_dive to get the dive site idGravatar Tomaz Canabrava
Since we are modifying the dive site inside of the dive, we can't ask the dive for the new one, and we also can't use the name of the dive site, as there's the possibility that two or more could have the same name, so rely only on the index of it to get the uuid. The index is variable since we will sort the dive_site_table alphabetically, but this doesn't matter since we are using it only temporarely to get the uuid, and this one never changes. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Update KMessageWidget to KF5Gravatar Tomaz Canabrava
The KMessageWidget that we used was from an ancient version of KDE4, KF5 is out for quite a while, so it's good that we also update our software that uses parts of KDE. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-03Two if's to prevent null pointer dereferencingGravatar Robert C. Helling
I need these to prevent subsurface from segfaulting when opening a new log. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-02Support for changed DM5 sample blobGravatar Miika Turkia
Block size for sample is now variable, so detect the version and parse proper blocks. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-02Build script: remove Subsurface.app before building on MacGravatar Dirk Hohndel (Intel)
The make install step otherwise will give some odd warnings as it tries to adjust things from build to deploy. Signed-off-by: Dirk Hohndel (Intel) <dhohndel@dhohndel-mac02.jf.intel.com>
2015-06-02Build script: use Subsurface-testing branches of marble and libdivecomputerGravatar Dirk Hohndel (Intel)
While in a release we'd want to use the corresponding release branches, it seems to make more sense to me to switch to the testing branches for Subsurface master. Signed-off-by: Dirk Hohndel (Intel) <dhohndel@dhohndel-mac02.jf.intel.com>
2015-06-02Build script: build libssh on MacGravatar Dirk Hohndel (Intel)
Signed-off-by: Dirk Hohndel (Intel) <dhohndel@dhohndel-mac02.jf.intel.com>
2015-06-02Build script: create log file by defaultGravatar Dirk Hohndel (Intel)
Signed-off-by: Dirk Hohndel (Intel) <dhohndel@dhohndel-mac02.jf.intel.com>
2015-06-01Simplify model handling and crashes fixesGravatar Tomaz Canabrava
So, there's only one crash left (that I put a big TODO: on the maintab.cpp about) and I'll fix it tomorrow as it's quite late here and I'm almost sleeping at the keyboard. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Remove unused methodGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Remove Combobox from LocationManagementGravatar Tomaz Canabrava
I tought about it a bit, and the combobox of the location management was a bit overkill - we already have another combobox to select the divesite and also the plus button to add one. If the user wanna edit the current divesite, he can go to menu and edit it. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Remove unused buttons on the ui.Gravatar Tomaz Canabrava
We are not going to use the add, edit, remove buttons. Removing will be automatical, addition will be triggered when clicking on the plus on the dive site. edit is automatically enabled as soon as you try to edit anything. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Correctly change the dive_site nameGravatar Tomaz Canabrava
Correctly change and update the dive_site, updating the name on the combobox or other attached views. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Fix dive site sortingGravatar Dirk Hohndel
std::sort sorts [first,last) so last is excluded. Also fix the mis-spelling of the compare function. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Fix cross build on WindowsGravatar Dirk Hohndel
int32_t is unknown otherwise. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Create a new DiveSite when user clicks on addGravatar Tomaz Canabrava
Also reorganized a bit of the code, and renamed a few misleading methods. [Dirk Hohndel: remove some C++11 code] Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Manage Dive Site from the MainMenuGravatar Tomaz Canabrava
Trigger the ManageDiveSite from the MainMenu. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Add a timeout (500ms) to GeoLoccation discoveryGravatar Tomaz Canabrava
GeoLocation discovery would hang if on an incorrectly configured proxy - this way we will finish as soon as it tries to get everything. I also need to see what to do with the dive sites if it fails to find any. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Move helper function to the appropriate fileGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Build script: use sufficiently new libgit2 and enable cloud storageGravatar Dirk Hohndel
Turns out that as of a day ago or so tip of libgit2 master appears broken (the in memory ssh key test in the cmake file fails). But the specific commit that I'm picking here appears to work and is also new enough that https and ssh based cloud storage works. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-06-01Cloud storage: only make this available with new enough libgit2Gravatar Dirk Hohndel
The credential callback doesn't appear to work (at least not the way I implemented it) with v0.22 and earlier. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Add strndup.h header so we can use this useful functionGravatar Dirk Hohndel
It's missing on Windows... we had this helper in liquivision.c but since I used the function in git-access.c I figured I should just turn it into a little helper. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Cloud storage: first stab at implementing cloud storageGravatar Dirk Hohndel
So far there is no mechanism to actually create a repository on the server, so this only works with the two test repositories. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Cloud storage: rethink the terminology usedGravatar Dirk Hohndel
Cloud storage makes more sense that remote storage - at least I assume that more people are used to thinking about "storing things in the cloud". Don't use PIN or passphrase, call it a password everywhere. Don't use copy_string() to copy the password - the git credentials routine asserts that password is not NULL, so make sure we at least have a pointer to an empty string here. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Cloud storage: add support for https based remoteGravatar Dirk Hohndel
This will make it easier to access the remote storage. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Fix crashGravatar Dirk Hohndel
With no dive sites we dereference a NULL pointer. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Don't ask for globe-coordinates for a diveGravatar Tomaz Canabrava
Only ask that for dive_site_management. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Don't ask for a GeoCoordinate when editing a diveGravatar Tomaz Canabrava
This should be asked when we are in dive_site_edit mode. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Organize the dive_sites alphabeticallyGravatar Tomaz Canabrava
run std::sort on the dive_site list inside of the model. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Don't calculate what we already haveGravatar Tomaz Canabrava
We already have the correct number of dive_sites, why use a loop to calculate it? Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Fix off-by-one errorGravatar Tomaz Canabrava
i is one greater than the number of dive_sites, use the correct nr. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31Fix crash when cancelling divesite edit with empty divesiteGravatar Tomaz Canabrava
Only happens if you dont't have any divesites in your list, but either way, it could happen. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-31We are not using a completer for location anymoreGravatar Tomaz Canabrava
So, remove it. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Correctly set the dive site id on the diveGravatar Tomaz Canabrava
When changing the index of the combobox we were discarting the dive_site_id. This fixes it. Now I need to understand what's happening to the globe. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Fix the connections for the Location EditGravatar Tomaz Canabrava
The LocationEdit now correctly connects to the QComboBox signals, not the QLineEdit signals. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Update DiveLocationModel when thread finishesGravatar Tomaz Canabrava
This patch updates the DiveLocationModel when the GeoLoockupInformationThread finishes, and also selects the correct index for the displayed dive. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Typo on the header guard. oops.Gravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29LocationInformationModel moved to qt-modelsGravatar Tomaz Canabrava
I forgot about this one, and we are going to use it in the mobile version too. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Change the Location from a LineEdit to a ComboBoxGravatar Tomaz Canabrava
And hook up every method that was changed. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Fix border glow on OSXGravatar Tomaz Canabrava
The border was just too small for the glow. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-05-29Move DivePlotDataModel to qt-modelsGravatar Tomaz Canabrava
I think with this one I'm finished. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>