summaryrefslogtreecommitdiffstats
path: root/qt-ui/mainwindow.cpp
AgeCommit message (Collapse)Author
2014-03-02Set the prefs-value alongside the button statusGravatar Anton Lundin
Previous code just set the button-"status" based on what we stored on the settings. This sets the corresponding value in our prefs-struct. This fixes the same issue as in 63f7f3, without the side effect of magically hiding the mean depth line. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-03-02Spelling fix, Its called NdlGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-03-02Revert "Switch profile button events, clicked to toggled"Gravatar Dirk Hohndel
This reverts commit 63f7f37e4617b15af9bbd1894d529da2c22a34f1. For odd reasons this appears to make the mean depth line disappear. This will require some further analysis, but for now I'll just revert it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-28Remove failed parses from recent files menuGravatar Joshua Wambua
This patch will remove all files that fail to parse from the recent files menu. Signed-off-by: Joshua Wambua <joshua@megvel.me.ke> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-27Switch profile button events, clicked to toggledGravatar Anton Lundin
This is needed so the underlaying struct preferences prefs, will be updated when we set the buttons to there previous state after we loaded the settings. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-27Store zoomed plot in preferencesGravatar Tomaz Canabrava
This patch makes the 'Zoomed Plot' a preference that can be stored and retrieved, this way if the user sets the plot to be 'zoomed', this information will persist even if they closed or opened subsurface again. Also, added the 'Scale' button on the new profile, but didn't did the glue code yet. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-26Adding a polite "Please" in front of the warning message.Gravatar Giuseppe 'ferdy' Miceli
Signed-off-by: Giuseppe 'ferdy' Miceli <ferdy@ferdy.it> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-18Add an assertion to prevent MainWindow from being recreatedGravatar Thiago Macieira
Signed-off-by: Thiago Macieira <thiago@macieira.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-13Automated whitespace / coding style correctionGravatar Dirk Hohndel
First attempt to use the tools on one of our source files. So far so good. Not perfect, but a HUGE improvement. Most importantly it effortlessly fixed the Allman style braces introduced in commit 51220f26ef71 ("Add recent files to main menu."). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-13Add recent files to main menu.Gravatar Boris Barbulovski
Add(up to four) recent files to File main menu. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-12Replace mainWindow() with MainWindow::instance()Gravatar Boris Barbulovski
C++ style of accessing single instance class object. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-11Give the widget for the new profile a better nameGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-11New profile: enable switching between dive computersGravatar Dirk Hohndel
This was mostly in place, just needed to be hooked up. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-10Clear the data when the model resets.Gravatar Tomaz Canabrava
This patch does a few things: 1 - reset the model when user closes the dive file 2 - connects the 'rowsAboutToBeRemoved' in a way that the graphics can remove their polygons too 3 - adds a 'clear' virtual method so items that don't follow the rules can clean themseves up. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-10Enable the dive planning under a compile flagGravatar Danilo Cesar Lemes de Paula
Allow subsurface to show the dive planner in case a compile flag is given. qmake CONFIG+=planner Signed-off-by: Danilo Cesar Lemes de Paula <danilo.eu@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-09mainwindow.cpp improvementsGravatar Boris Barbulovski
* Add missing variable members to the initializer lists. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-09Cleanup SubsurfaceWebServices classGravatar Boris Barbulovski
* Remove statuic SubsurfaceWebServices::instance() member. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-09DownloadFromDCWidget class cleanupGravatar Boris Barbulovski
Remove static DownloadFromDCWidget::instance() method Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-09PrintDialog class cleanup.Gravatar Boris Barbulovski
* Remove static PrintDialog::instance() method * Remove void PrintDialog::runDialog() method * construct/destruct print dialog on demand Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-08SubsurfaceAbout class cleanup.Gravatar Boris Barbulovski
Main change is that now SubsurfaceAbout doesn't have instance object, but it constructs and destructs dynamically. * Remove the static SubsurfaceAbout::instance() class member * construct/destruct about dialog on demand * Other small aboutbox cleanups. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> ACK-ed-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-06Load options as soon as the progrm startsGravatar Tomaz Canabrava
Populate the status of the profile tool box as soon as the program starts. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-06Save the old pref system when changing the new oneGravatar Tomaz Canabrava
Since we have now a mix of old / new prefs, remember to change both when we alter something. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-06Move save of preferences to the preferences dialog.Gravatar Tomaz Canabrava
I had a few very strange bugs regarding to preferences (like clicking on apply twice so things worked), because the code that moved from "QSettings" to 'Internal Settings Struct' was being triggered on the mainwindow, *after* the settingsChanged signal was emmited. This should fix the problem. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-02-06Create a toolbox on the left side of the new profileGravatar Tomaz Canabrava
For quick acess of preferences the show / hide stuff from the Settings dialog is now in that toolbox and in the future we can put a few more, like 'Show Notifications Panel' and 'Enable Legend' Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-17The plot-profile method was being called too many times.Gravatar Tomaz Canabrava
There was a bug in the old implementation where we needed to trigger a repaint of the profile almost everywhere. this isn't needed anymore on the new one, so do not use the same method that will be killed when I finish this.e Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-16Fix some memory leaks.Gravatar Boris Barbulovski
Memory leaks were caused by broken parent/child relations. Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-16Whitespace and coding style updatesGravatar Dirk Hohndel
Another futile attempt to cleanup the code and make coding style and whitespace consistent. I tried to add a file that describes the key points of our coding style. I have no illusions that this will help the least bit... This commit should ONLY change whitespace Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-16Added debug code to help understand the ProfileGravatar Tomaz Canabrava
This commit adds a QTableView if built in debug mode. This is very userful to understand the Profile that will be drawn by the graphics classes and fix the possible errors. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-16Pass the current selected dive to the new Profile Widget.Gravatar Tomaz Canabrava
This call just passes the selected dive to the new profile widget. No drawing is performed, I still have to setup the constructors and the rest of the initialization of the new Profile. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-15Convert to TRUE/FALSE to stdbools true/falseGravatar Anton Lundin
I had problems with this one on Qt5. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-15Remove unused importGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-15Add-main-window-full-screen-featureGravatar Boris Barbulovski
This patch enables main window full screen mode by menu toggle or pressing F11. [Dirk Hohndel: whitespace cleanup] Signed-off-by: Boris Barbulovski <bbarbulovski@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-11Don't show tanks that aren't used during a diveGravatar Dirk Hohndel
Some dive computers will always download all tanks that they store, not just the ones used in a dive. Most people only want to see the tanks that they actually used during the dive (and for the others there's an option to go back to the old behavior, just in case). All this is only in memory / during runtime. If the dive computer provided the extra data we will not throw it away. Fixes #373 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-11Fix app icon and title for yearly statisticsGravatar Sergey Starosek
Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-10Switch to new UserManual implementationGravatar Sergey Starosek
This enables search within user manual by pressing Ctrl-F. Esc key closes search panel. Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-08Show import dialog only when needed for CSV configGravatar Miika Turkia
We do not need any import dialog when importing normal XML based divelogs. With this they are imported directly after file selection dialog. However, when CSV files are detected in the import list, the configuration dialog is displayed and applied for them. (CSV files are detected by file extension.) Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2014-01-03Refactoring import to DiveLogImportDialogGravatar Miika Turkia
Changing the import stuff to DiveLogImport. Now we should have one import function/dialog for importing divelogs instead of multiple menu entries. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-28Update tank model with custom tanks used in XML filesGravatar Dirk Hohndel
Fixes #377 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-20Use QFile::{encode,decode}Name for file namesGravatar Thiago Macieira
And make them use UTF-8 on Windows instead of the local 8 bit encoding. This will also get us the proper NFD encoding on OS X. Signed-off-by: Thiago Macieira <thiago@macieira.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-19Files: prefer toUtf8() over toLocal8Bit()Gravatar Lubomir I. Ivanov
We may want to use toUtf8() for win32 considerations. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-18Make default font setting actually workGravatar Tomaz Canabrava
We were asking the widget.font() which returned the font that the QFontSelector uses to display it's contents, instead of using currentFont() that's the correctly selected font. duh. :)) Fixes #368 Fixes #375 (for #375 the solution is to select a different font that a) looks better and b) has the missing characters) Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-17Don't enter edit profile mode when already editing the diveGravatar Dirk Hohndel
This is not the ideal solution. Ideally we might want to simply enter the profile edit mode if we edit a dive that was manually added. But right now the code contains lots of assumptions about being in one mode or the other and as we are redoing the profile / planner classes for 4.1 anyway, I'd rather err on the safe side for 4.0.1 Fixes #374 (well, it fixes the second bug reported in 374 which is quite different from the original bug) Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-16Don't quit while dive is editedGravatar Dirk Hohndel
If the user edits a dive and then quits we try to ask them to finish editing, first. If the user did this by either clicking the little 'x' in the window decoration or by hitting Alt-F4 (or similar), we didn't have that question (only the 'save changes' question in case the dive list had already been modified. Fixes #374 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-09Implement a settingsChanged in DivePlannerWidgetGravatar Anton Lundin
This is so we can default to the GF's from the preferences. We need the bail handler in createTemporaryPlan, because its triggered when we change GF's, and if we don't have a stagingDive there, we will access a NULL-pointer. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-07Add support to edit a planned diveGravatar Anton Lundin
Left to do is to remove all the auto-added deco-points, aka the ones that had entered==FALSE before we created a dive from the plan. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-07redraw profile (actually clean it) if no dive is selectedGravatar Martin Gysel
otherwise the previous selected dive is still visible in the profile view. clicking on edit crashs subsurface: null pointer dereference in editCurrentDive as it uses 'current_dive' which is null. Signed-off-by: Martin Gysel <me@bearsh.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-06Add icon and title for User Manual windowGravatar Sergey Starosek
Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-05MainWindow: fix setTitle() callsGravatar Lubomir I. Ivanov
setTitle() works with an enum that can be fed different values, and other we may have eventually. For example not only "app title", or "app title: filename", but others, like dates, certain app status and so on. Patch fixes an issue where deleting a single dive in the divelist resets the title to "Subsurface" only. clearUpEmpty() should only call setTitle(MWTF_DEFAULT) if no file is currently open. It also adds a safe-guard to revert back to MWTF_DEFAULT if no file is open but setTitle is called with MWTF_FILENAME. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-05Open external links in default browserGravatar Sergey Starosek
Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-12-04Merge branch 'improve-subsurfaceweb' of ↵Gravatar Dirk Hohndel
git://github.com/thiagomacieira/subsurface