<feed xmlns='http://www.w3.org/2005/Atom'>
<title>subsurface.git/profile-widget, branch v4.9.0</title>
<subtitle>forked from https://github.com/subsurface/subsurface</subtitle>
<id>https://git.tsegers.com/subsurface.git/atom?h=v4.9.0</id>
<link rel='self' href='https://git.tsegers.com/subsurface.git/atom?h=v4.9.0'/>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/'/>
<updated>2019-07-12T07:59:28Z</updated>
<entry>
<title>Profile: stop animations on export</title>
<updated>2019-07-12T07:59:28Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-10T20:47:53Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=efe9bcce02fdf4eaad05ff27d8f3eb96d3958cc3'/>
<id>urn:sha1:efe9bcce02fdf4eaad05ff27d8f3eb96d3958cc3</id>
<content type='text'>
The plotDive() function had a flag to plot pictures asynchronously.
This was used on export. Rename this field to "instant" and disable
animations when set. This should make sure that the axes are properly
exported.

Fixes #2170

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Profile: store animation speed in profile object</title>
<updated>2019-07-12T07:59:28Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-10T20:40:06Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=f93e0aafd52be47b99132a0d38629e1dffaaaa9e'/>
<id>urn:sha1:f93e0aafd52be47b99132a0d38629e1dffaaaa9e</id>
<content type='text'>
When exporting dive pictures we don't want animations. Therefore,
store the animation speed in the profile object to avoid nasty
hacks with the preferences.

This actually removes such a hack. Pictures and tooltips for now
still use the values stored in the preferences, because their
animations happen only on user-interactions.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Profile: add speed parameter to Animation::* functions</title>
<updated>2019-07-12T07:59:28Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-10T20:23:25Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=2d9dc40171c261fc6c907badb871d6735d59787a'/>
<id>urn:sha1:2d9dc40171c261fc6c907badb871d6735d59787a</id>
<content type='text'>
For now always use the preferences value, so that this is a
no-op. This is a preparation for storing the speed in the
profile widget.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Profile: take int instead of bool in DiveEventItem::recalculatePos</title>
<updated>2019-07-12T07:59:28Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-10T19:57:51Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=74244b3cfebb08d60fd32e938b396e8fa90a4774'/>
<id>urn:sha1:74244b3cfebb08d60fd32e938b396e8fa90a4774</id>
<content type='text'>
The goal here is to slowly make animation speed a variable of the
profile widget, not of the global preferences. Currently the code
does some trickeries with setting / unsetting the global animation
speed.

Start by not taking a bool "instant" but a speed in
DiveEventItem::recalculatePos().

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: call calculate_max_limits_new() in create_plot_info_new()</title>
<updated>2019-07-06T18:23:35Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-06T13:34:31Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=ae60fdf815d1febe36b5f43642a28afbaf84362b'/>
<id>urn:sha1:ae60fdf815d1febe36b5f43642a28afbaf84362b</id>
<content type='text'>
All callers of create_plot_info_new() called calculate_max_limits_new()
a line before. Thus, simply call the latter in the former.

This allows us to automatically free the plot data in create_plot_info_new().
The old code overwrote the corresponding field with NULL.

As a side-effect, this removes a bogus static variable.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: fix memory management of the plot data</title>
<updated>2019-07-06T18:23:35Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-06T12:41:09Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=69be1e23f231081e6bad98903c10782faf5104a7'/>
<id>urn:sha1:69be1e23f231081e6bad98903c10782faf5104a7</id>
<content type='text'>
There was a global variable last_pi_entry_new, which stored the
recently allocated plot data. This was freed when new plot data
was generated.

A very scary proposition: You can never have two plot datas at
the same time! But exactly that happens when you export for
example subtitles.

The only reason why this didn't lead to very crazy behavior
is that at least on my Linux machine, the calloc() call would
just return the previously freed memory.

Fix this mess by removing the global variable and freeing the
data in the callers.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Cleanup: remove unnecessary display refresh</title>
<updated>2019-07-04T01:40:47Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-07-03T18:59:12Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=f451f7d9a5155be6ea1225a7414e5665656f8b42'/>
<id>urn:sha1:f451f7d9a5155be6ea1225a7414e5665656f8b42</id>
<content type='text'>
In ProfileWidget2::splitDive() updateDiveInfo was emitted, but the
UndoCommand does this by itself.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Core: let count_divecomputers() operate on an arbitrary dive</title>
<updated>2019-05-21T04:23:16Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-05-19T16:40:04Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=4fe9b39cdbb5839830281820621059cefc26a03a'/>
<id>urn:sha1:4fe9b39cdbb5839830281820621059cefc26a03a</id>
<content type='text'>
Currently, count_divecomputers only works on the current_dive.
Instead, let it take a pointer to an arbitrary dive. This is
in preparation for being smarter in the undo code concerning
which dive computer to show on deletion.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Undo: make "delete dive computer" undoable</title>
<updated>2019-05-21T04:23:16Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-05-19T12:27:10Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=0bc96905bf92de5e7bac88efde181d93d95998f1'/>
<id>urn:sha1:0bc96905bf92de5e7bac88efde181d93d95998f1</id>
<content type='text'>
Simply reuse the code for "move dive computer" by creating
a DiveComputerBase base class.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Undo: make "move dive computer to front" undoable</title>
<updated>2019-05-21T04:23:16Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2019-05-17T20:22:55Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=eba6e76b963115a77b5f8607bc6c3ea1040a466f'/>
<id>urn:sha1:eba6e76b963115a77b5f8607bc6c3ea1040a466f</id>
<content type='text'>
Instead of the elegant solution that just modifies the dive,
keep two copies and add either the old or the new copy. This
is primitive, but it trivially keeps the dives in the right order.
The order might change on renumbering the dive computers.

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