<feed xmlns='http://www.w3.org/2005/Atom'>
<title>subsurface.git/core/subsurface-qt, branch v4.9.2</title>
<subtitle>forked from https://github.com/subsurface/subsurface</subtitle>
<id>https://git.tsegers.com/subsurface.git/atom?h=v4.9.2</id>
<link rel='self' href='https://git.tsegers.com/subsurface.git/atom?h=v4.9.2'/>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/'/>
<updated>2019-08-22T17:13:40Z</updated>
<entry>
<title>Grantlee: generate vector of cylinder data on-demand</title>
<updated>2019-08-22T17:13:40Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-12T16:43:21Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=e6cd4f8ae5d8b0bbc8e517b88d4ddc6045657227'/>
<id>urn:sha1:e6cd4f8ae5d8b0bbc8e517b88d4ddc6045657227</id>
<content type='text'>
Instead of generating cylinder data in the form of
CylinderObjectHelper objects for every DiveObjectHelper,
generate it only if needed. DiveObjectHelper is used extensively
in the mobile interface, which doesn't use the cylinder data.
Let's not generate unnecessary CylinderObjectHelpers in this
case!

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: turn CylinderObjectHelper into value type</title>
<updated>2019-08-22T17:13:40Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-12T16:26:42Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=f25fa2adc5dd37aca17335d8278fd00e39e9b733'/>
<id>urn:sha1:f25fa2adc5dd37aca17335d8278fd00e39e9b733</id>
<content type='text'>
CylinderObjectHelper is used for structured formatting of cylinder
values in grantlee types. Instead of keeping a reference to a
cylinder, turn it into a value type containing the formatted strings.

This should be distinctly safer, as we don't risk having stale
references flying around. Moreover, we don't have to use pointers
but can use containers containing plain CylinderObjectHelper. Thus,
no explicit memory management is needed, making the code distinctly
easier to understand.

Sadly, currently grantlee does not support Q_GADGET based Q_PROPERTY.
Therefore a GRANTLEE_*_LOOKUP block has to be added. This can be
removed in due course, as a patch to remedy this issue is in current
grantlee master.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: don't include dive.h in CylinderObjectHelper.hpp</title>
<updated>2019-08-22T17:13:40Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-12T16:14:14Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=0d045f8c1470e011e0beff0ff0b0ec85975272e6'/>
<id>urn:sha1:0d045f8c1470e011e0beff0ff0b0ec85975272e6</id>
<content type='text'>
This only needs the declaration of cylinder_t, which is
found in equipment.h

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>DiveObjectHelper: warn if object is generated from the null pointer</title>
<updated>2019-08-12T23:28:49Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-12T22:00:35Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=62cbfc332542b09dc4d7d82f7b1ee61bdde6d800'/>
<id>urn:sha1:62cbfc332542b09dc4d7d82f7b1ee61bdde6d800</id>
<content type='text'>
Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>DiveObjectHelper: remove default argument</title>
<updated>2019-08-12T23:28:49Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-12T21:51:44Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=88119b356df1dcb2f97064d213f439b636276544'/>
<id>urn:sha1:88119b356df1dcb2f97064d213f439b636276544</id>
<content type='text'>
We don't support null-dives in DiveObjectHelper. Defaulting the
dive parameter to NULL seems to send the wrong message.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Mobile: properly recognize single-weightsystem dives</title>
<updated>2019-08-11T19:23:33Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-08-10T15:53:11Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=75be9e727d12ebd122f5dc96737248067afc9629'/>
<id>urn:sha1:75be9e727d12ebd122f5dc96737248067afc9629</id>
<content type='text'>
When removing the max-weightsystem restriction, the semantics of
the DiveObjectHelper::singleWeightSystem() function changed:
it now returned false for "no weightsystem". Change it back,
to 0 or 1 weightsystems, because the mobile frontend uses this
to check whether it can edit dive systems.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Core: dynamically resize weight table</title>
<updated>2019-07-18T13:01:07Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-06-26T15:21:03Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=a5e7f4253ac98ad18354973fda7049e9daaea8eb'/>
<id>urn:sha1:a5e7f4253ac98ad18354973fda7049e9daaea8eb</id>
<content type='text'>
Replace the fixed-size weightsystem table by a dynamically
relocated table. Reuse the table-macros used in other parts
of the code.

The table stores weightsystem entries, not pointers to
weightsystems. Thus, ownership of the description string is
taken when adding a weightsystem. An extra function adds
a cloned weightsystem at the end of the table.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: unify selection signals</title>
<updated>2019-06-23T18:08:46Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-06-23T10:46:42Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=2e230da3610dd1fc61badaf328a084512895fb90'/>
<id>urn:sha1:2e230da3610dd1fc61badaf328a084512895fb90</id>
<content type='text'>
For historic reasons, there where three distinct signals concerning
dive-selection from the undo-machinery:
1) divesSelected: sent newly selected dives
2) currentDiveChanged: sent if the current dive changed
3) selectionChanged: sent at the end of a command if either the selection
   or the current dive changed

Since now the undo-commands do a full reset of the selection, merge these
three signals into a single signal.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Undo: unify selection behavior in dive-list commands</title>
<updated>2019-06-23T18:08:46Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-06-23T09:13:41Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=e1abf9485cf59f1b8cb79d827fa386af48f095a4'/>
<id>urn:sha1:e1abf9485cf59f1b8cb79d827fa386af48f095a4</id>
<content type='text'>
Some commands tried to retain the current selection on undo/redo,
others set the selection to the modified dives.

The latter was introduced because it was easier in some cases, but
it is probably more user-friendly because the user gets feedback
on the change.

Therefore, unify to always select the affected dives on undo()/redo().

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Undo: don't send signals batched by trip</title>
<updated>2019-06-23T18:08:46Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-06-23T07:22:26Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=27944a52b1c2a1c68ccfe88c4a84d3f74fb8b512'/>
<id>urn:sha1:27944a52b1c2a1c68ccfe88c4a84d3f74fb8b512</id>
<content type='text'>
Since the default view is batched by trips, signals were sent trip-wise.
This seemed like a good idea at first, but when more and more parts used
these signals, it became a burden. Therefore push the batching to the
part of the code where it is needed: the trip view.

The divesAdded and divesDeleted are not yet converted, because these
are combined with trip addition/deletion. This should also be detangled,
but not now.

Since the dive-lists were sorted in the processByTrip function, the
dive-list model now does its own sorting. This will have to be
audited.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
</feed>
