This just adds the "remember_tree_state()" and "restore_tree_state()"
calls around the divelist update when autogrouping is turned on: that
way existing expanded groups aren't blindly collapsed.
It makes it much easier to see what autogrouping does if it only groups
a few dives, because the overall state of the divelist isn't radically
changed.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
- Made tables of semi-formatted texts.
- Rewrote some of text because the screenshot and table are both
about the same thing. The screenshot is more important now, the
table is explanation of screenshot.
Signed-off-by: Reinout Hoornweg <reinout@xs4all.nl>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
The 'remember_tree_state()' thing is meant to remember if a dive trip is
expanded or not, but it missed the "or not" part. IOW, it never cleared
the expanded flag, it only ever set it.
As a result, if you were doing multiple operations on the divelist tree
(testing all the recent gtk-model removal, for example) the dive trips
would end up expanding more and more, even if you collapsed things by
hand in between operations.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This does the moving of dives into the trip above without the complexity
of the gtk data structures, and instead just recreates the whole
divelist afterwards. As usual, this simplifies things a lot, and the
less gtk-specific code we have, the better.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
.. use our own data structures instead, and regenerate the gtk ones
after having successfully created the new trip.
This simplifies the code enormously, and also makes it much more
generic. You can now create a new trip from any arbitrary set of
selected dives (it used to be that the "multiple selected dives" case
worked, but only for some very specific special cases of selected dives).
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Commit bcf1f8c4fe ("Don't do "remove_from_trip" by walking the gtk
data structures") made find_trip_by_idx() only work for negative indexes
(positive indexes are dives), but when it removed the unnecessary test
for negativity, the statement inside it should have been kept as
unconditional, rather than removed with the test.
Oops.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
They are complicated and confusing. Just use our own data structures
and re-generate the gtk ones from them.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
They are complicated and confusing. Just use our own data structures
and re-generate the gtk ones from them.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
All this can nowadays be done from the dive editing popup so a separate
chapter describing the editing on info tab is not necessary.
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We used to look up dive trips by their date, but these days we always
create a dynamic index for a dive trip when we insert it into the
divelist model, so we can use that to unambiguously match up dive trips
with the dive model entries.
That means that we don't get confused if we have two trips with the
exact same time, which happens when you load all the test-dives, for
example.
Reported-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Cleans up more files.
Got even an 'all' target :)
Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This all seems very strange forward.
The reason for the check whether the stats_w widget has been populated is
that at the very beginning, when the UI is still being assembled, a first
call to switch_page() happens as the notebook pages are assembled. At that
point the stats_w widget is still empty which tells us that we aren't
ready to display anything.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This does a final pass after all the selection logic, and notices if we
have dive trips that are selected, but that have no dives in them
selected. In that case, we assume that the user wanted to select all
dives in that trip.
NOTE! This still allows a range selection that selects the dive trip
entry and a few dives under the trip. If a trip has any dives selected
in it, we leave that manual selection alone. So this new logic really
only triggers on the case where somebody selected *just* the trip.
Note: unselecting the trip still leaves the dives under it selected,
because having a dive trip that isn't selected have all the dives under
it be selected is normal, and we can't recognize that as some kind of
special event.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
- Suunto Viper is actually Vyper.
I actually used to own both a Vyper and a Vyper Air, so I care. :-)
- Fixed a few other small typos.
Signed-off-by: Reinout Hoornweg <reinout@xs4all.nl>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Added headers, borders, etc. to the table in "Viewing and completing
your logs".
Signed-off-by: Reinout Hoornweg <reinout@xs4all.nl>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
- Added some more text to Miika's great start describing the planner.
- Tried doing something more with the formatting options asciidoc give us.
[Dirk Hohndel: merged with my earlier changes to the same section]
Signed-off-by: Reinout Hoornweg <reinout@xs4all.nl>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Most everything was a top level chapter - this tries to impose some
structure. It also moves the "finding the device" section closer to where
it should be in the logical flow.
This also made the header more "asciidoc compliant" and added the other
significant authors to the list.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This changes the capitalization of headings and aims to get a consistent
style of internal links. Linking to chapter numbers is very fragile as
asciidoc sadly doesn't support this in an automated fashion - so instead
we reference chapter titles (also manual, but at least less fragile when
chapters are inserted)
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
The attached patch is the ugly start for dive planning. Hopefully
someone will enhance it from and add whatever essential is missing.
miika
From 2d51a56489fde7086032fb5efeeea6e9032ec1ba Mon Sep 17 00:00:00 2001
From: Miika Turkia <miika.turkia@gmail.com>
Date: Mon, 18 Feb 2013 19:04:14 +0530
Subject: [PATCH] Instructions for basic dive planning
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We use "divecomputer" in many places and while that is a data structure in
Subsurface it apparently is not a word.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
We have this oddity in "fixup_dive()" that we fix up the dive water
temperates and durations by looking over all the dive computer data.
But we actually call that *before* we've fixed-up the dive computer data.
So the water temperature is there in the samples, but hasn't made it to
the generic dive computer water temperature yet, so then it doesn't make
it into the dive structure either.
Until the *second* time, when we have load the (partially fixed-up) data.
Acked-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
"Dive details" doesn't really capture what this is about and it got very
odd translations. So we just repeat the "Print type" text - this avoids
needing a new translation, too.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Writing an introductory chapter for the divelog import and moving
relevant content to it
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Use a single form when writing divelog (same syntax as in About box)
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
It is not an absolute requirement to download directly from the dive
computer but we also support importing logs from certain log formats.
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Added myself to the translators list and some little corrections.
Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Instead of a fixed number of dives per page we are now using the paginate
callback to dynamically figure out how many pages we need and which dive to
start each page with.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Instead of odd hard coded offsets we evaluate the height of a single line and
modify the height per row (and the vertical positioning of the text within that
row) by a fraction of that height.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>