Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Purity Musyoki
On Mon, Mar 9, 2015 at 4:05 PM, Tommi Saviranta w...@iki.fi wrote:

 On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:
  In the ideas page, it is noted that there is some sample code of what
  has been done so far regarding the [native] bluetooth idea. I have
  gone through the source code for the Subsurface project, but I am
  unable to find the bluetooth downloader code.

 Perhaps you're looking for the following email and attached patches:

 http://libdivecomputer.org/pipermail/devel/2014-May/000285.html

 With those patches libdivecomputer works nicely with my Petrel.
 Subsurface GUI also works - even if it requires some persuation.


Thank you,

I was looking only at Subsurface's code. So this means that for this project
to be successful, we will have to modify both Subsurface and
Libdivecomputer.

--
Purity Musyoki
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Lubomir I. Ivanov
On 9 March 2015 at 15:36, Jef Driesen j...@libdivecomputer.org wrote:
 On 2015-03-09 14:05, Tommi Saviranta wrote:

 On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:

 In the ideas page, it is noted that there is some sample code of what
 has been done so far regarding the [native] bluetooth idea. I have
 gone through the source code for the Subsurface project, but I am
 unable to find the bluetooth downloader code.


 Perhaps you're looking for the following email and attached patches:

 http://libdivecomputer.org/pipermail/devel/2014-May/000285.html

 With those patches libdivecomputer works nicely with my Petrel.
 Subsurface GUI also works - even if it requires some persuation.


 I created a libdivecomputer ticket and attached the latest patches there.
 The last patch in the email (#0006) is completely outdated.

 http://trac.libdivecomputer.org/ticket/14

 Basically I have a working proof of concept (including the device
 discovery), for Linux and Windows. What's still missing is the Mac OS X
 support, and the proper integration in libdivecomputer. The latter is
 blocked on the libdivecomputer api redesign.


so this is an interesting situation,

if Jeff has a working POC in libdc for Linux and Windows, do we really
need to reinvent the wheel in Subsurface or should Subsurface use
libdc for the device discovery and should students contribute in both
libdc (backend) and Subsurface (frontend if needed) in that way?
Dirk, how should that be approached GSoC wise?

also, seems that we need someone with OSX knowledge on the subject.

lubomir
--
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Jef Driesen

On 2015-03-09 14:05, Tommi Saviranta wrote:

On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:

In the ideas page, it is noted that there is some sample code of what
has been done so far regarding the [native] bluetooth idea. I have
gone through the source code for the Subsurface project, but I am
unable to find the bluetooth downloader code.


Perhaps you're looking for the following email and attached patches:

http://libdivecomputer.org/pipermail/devel/2014-May/000285.html

With those patches libdivecomputer works nicely with my Petrel.
Subsurface GUI also works - even if it requires some persuation.


I created a libdivecomputer ticket and attached the latest patches 
there. The last patch in the email (#0006) is completely outdated.


http://trac.libdivecomputer.org/ticket/14

Basically I have a working proof of concept (including the device 
discovery), for Linux and Windows. What's still missing is the Mac OS X 
support, and the proper integration in libdivecomputer. The latter is 
blocked on the libdivecomputer api redesign.


Jef
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Purity Musyoki
Hi,

I am a potential Google Summer of Code student, interested in working on
the native bluetooth
support idea. I have some experience in working with the bluetooth stack
and BTLE.

In the ideas page, it is noted that there is some sample code of what has
been done so far
regarding the bluetooth idea. I have gone through the source code for the
Subsurface project,
but I am unable to find the bluetooth downloader code. Am I missing
something, or is this code
located somewhere else?

--
Purity Musyoki
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Tommi Saviranta
On Mon, Mar 09, 2015 at 15:18:59 +0200, Benjamin wrote:
 Could you perhaps elaborate on your statement that Subsurface needs
 some persuasion to work with the Petrel?

In short, when I select Shearwater/Petrel, I cannot (intuitively) enter
the device address until I try and fail to download the logs once.

If device discovery is supposed to do some magic here, it doesn't work
for me. For all I know, device discovery might depend on some desktop
environment stuff I'm unlikely to have installed.

Actual procedure using fresh sources, libdivecomputer,
134da18190b5ea1581d789564979e3e4c73cd243 (with new set of patches),
Subsurface, 2e6fcfc96971ff0fa6cb876b1ef7613ede495d24.

1. Open download dialog. Vendor, computer and device path are restored
   from my previous run: Suunto, Vyper, /dev/ttyUSB0. All three widgets
   are enabled.
2. Select Shearwater as vendor. Device widget gets disabled (with the
   old value (USB0) in it). Select Petrel as dive computer if needed.
3. Click Download. An error dialog is shown: Unable to open
   /dev/ttyUSB0 Shearwater (Petrel)
4. Click Ok to close the dialog. Device widget is now enabled again.
5. Enter device BT address.
6. Click Retry. Logs are downloaded.

This doesn't really bother me too much and with the WIP patches, I
didn't see much point in fixing the UI. Because the patches worked so
well, I never bothered to look any further in them. Also, yesterday was
the second time I had to go through this; the first time I went through
this was in October when I first tried the (old) patches.
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Lubomir I. Ivanov
On 9 March 2015 at 15:21, Purity Musyoki purity.sy...@gmail.com wrote:
 Hi

 On Mon, Mar 9, 2015 at 4:12 PM, Lubomir I. Ivanov neolit...@gmail.com
 wrote:



 i haven't seen any patches reach the mailing list; this could be
 located in a separate branch which i'm not aware of.
 perhaps someone else has an idea about this?



 As Tommi has posted above, these patches were submitted to libdivecomputer:
 http://libdivecomputer.org/pipermail/devel/2014-May/000285.html


just saw that,
still wondering what the GSoC idea implies.

lubomir
--
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Purity Musyoki
On Mon, Mar 9, 2015 at 4:27 PM, Lubomir I. Ivanov neolit...@gmail.com
wrote:

 just saw that,
 still wondering what the GSoC idea implies.


If I understand it well, it means that currently Subsurface connects to
bluetooth computers
using serial emulation, and the need of the GSoC idea is to expand the
current bluetooth
implementation to include device discovery and other features. To quote the
email on the
 libdivecomputer list:

 I have arrived at a point where I have a functional implementation
for windows
and linux.
With functional, I mean I'm able to connect to the dive computer and
successfully download
dives. What is still missing is device discovery, which means you have to
figure out the bluetooth
address of the device manually. Certainly not perfect yet, but it does work!



 lubomir
 --




-- 
--
Purity Musyoki
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Benjamin
Could you perhaps elaborate on your statement that Subsurface needs some
persuasion to work with the Petrel?
On 9 Mar 2015 15:05, Tommi Saviranta w...@iki.fi wrote:

 On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:
  In the ideas page, it is noted that there is some sample code of what
  has been done so far regarding the [native] bluetooth idea. I have
  gone through the source code for the Subsurface project, but I am
  unable to find the bluetooth downloader code.

 Perhaps you're looking for the following email and attached patches:

 http://libdivecomputer.org/pipermail/devel/2014-May/000285.html

 With those patches libdivecomputer works nicely with my Petrel.
 Subsurface GUI also works - even if it requires some persuation.
 ___
 subsurface mailing list
 subsurface@subsurface-divelog.org
 http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Tommi Saviranta
On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:
 In the ideas page, it is noted that there is some sample code of what
 has been done so far regarding the [native] bluetooth idea. I have
 gone through the source code for the Subsurface project, but I am
 unable to find the bluetooth downloader code.

Perhaps you're looking for the following email and attached patches:

http://libdivecomputer.org/pipermail/devel/2014-May/000285.html

With those patches libdivecomputer works nicely with my Petrel.
Subsurface GUI also works - even if it requires some persuation.
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Dirk Hohndel

 On Mar 9, 2015, at 7:10 AM, Lubomir I. Ivanov neolit...@gmail.com wrote:
 
 On 9 March 2015 at 15:36, Jef Driesen j...@libdivecomputer.org wrote:
 On 2015-03-09 14:05, Tommi Saviranta wrote:
 
 On Mon, Mar 09, 2015 at 15:33:24 +0300, Purity Musyoki wrote:
 
 In the ideas page, it is noted that there is some sample code of what
 has been done so far regarding the [native] bluetooth idea. I have
 gone through the source code for the Subsurface project, but I am
 unable to find the bluetooth downloader code.
 
 
 Perhaps you're looking for the following email and attached patches:
 
 http://libdivecomputer.org/pipermail/devel/2014-May/000285.html
 
 With those patches libdivecomputer works nicely with my Petrel.
 Subsurface GUI also works - even if it requires some persuation.
 
 
 I created a libdivecomputer ticket and attached the latest patches there.
 The last patch in the email (#0006) is completely outdated.
 
 http://trac.libdivecomputer.org/ticket/14
 
 Basically I have a working proof of concept (including the device
 discovery), for Linux and Windows. What's still missing is the Mac OS X
 support, and the proper integration in libdivecomputer. The latter is
 blocked on the libdivecomputer api redesign.
 
 
 so this is an interesting situation,
 
 if Jeff has a working POC in libdc for Linux and Windows, do we really
 need to reinvent the wheel in Subsurface or should Subsurface use
 libdc for the device discovery and should students contribute in both
 libdc (backend) and Subsurface (frontend if needed) in that way?
 Dirk, how should that be approached GSoC wise?

Definitely a combination of libdivecomputer and Subsurface work.
But it’s more complicated than just using Jeff’s code. It needs a different
user interaction on the Subsurface side - discovery and all that. And when
I last looked at Jef’s code it didn’t work for one of my use cases (but that
may no longer be true).

 also, seems that we need someone with OSX knowledge on the subject.

I am perfectly happy to have a Linux and Windows implementation the
first time around (that’s 80+% of our users). I know that Nick has Mac
Bluetooth code and he mentioned that he could be talked into donating
that to libdivecomputer, so let’s focus on the rest of what needs to be
done…

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 07:49:47AM +0200, Yosef Hamza wrote:
 Those 2 patches are actually one, But I think that the second patch needs
 some discussion.

As Robert already mentioned, the second patch (0003) is simply wrong. That
code was there for a reason :-)

 I think it's better this way because through trying and fixing the error
 there wasn't  a way -that I'm aware of at least- to cancel the added event
 @0:00.

There are different reasons why there would be an event at time 0:00
Some dive computers include a gas change event in the first sample (which
often is a few seconds into the dive and not at 0:00) to indicate the
first gas used. Those are valid and important events for the logic of how
we treat a dive, but they shouldn't be displayed as they make no sense to
the casual user.

The question to ask the bug submitter is why do you want to add a gas
change at 0'/0:00? -- is this to correct the first gas used?


The other patch (0002) I don't understand. At least in the function where
you added this code there is no unsigned comparison. Can you explain this
a bit more?

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Purity Musyoki
On Mon, Mar 9, 2015 at 5:44 PM, Dirk Hohndel d...@hohndel.org wrote:



 I am perfectly happy to have a Linux and Windows implementation the
 first time around (that’s 80+% of our users). I know that Nick has Mac
 Bluetooth code and he mentioned that he could be talked into donating
 that to libdivecomputer, so let’s focus on the rest of what needs to be
 done…


I have access to only Linux and Windows computers so I can work on
those platforms to start with.



 /D




-- 
--
Purity Musyoki
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: GSoC Project: Native Bluetooth support for Linux and/or Windows

2015-03-09 Thread Jef Driesen

On 2015-03-09 14:12, Lubomir I. Ivanov wrote:

i'm not very familiar with this GSoC idea and bluetooth in general.

Subsurface and the underlying libdivecomputer today use the rfcomm
emulation to communicate with Bluetooth enabled dive computers. We
should use native Bluetooth instead

https://msdn.microsoft.com/en-us/library/windows/desktop/aa362932(v=vs.85).aspx
you probably know that BTLE support is Win8 or newer, BT2.1 is since
Vista SP2, while we need to support Windows XP (SP1 first introduced
BT) in Subsurface which has to be done with things like the WinSock /
RFCOMM API, i'd say.

hmm, so i wonder what is native Bluetooth support, does that imply
writing a device driver for Windows that is installed by Subsurface.
for instance i don't think that BNEP and L2CAP are accessible from user 
space...


On the libdivecomputer side, native bluetooth support means using the 
operating system' native bluetooth api instead of relying on the serial 
emulation. My main motivation behind that (besides the improved 
user-experience of no longer having to setup the virtual serial ports) 
is that the serial emulation isn't always working very well. I have 
received several reports (including from personal experience) where 
downloading always fails for unknown reasons. Those problems disappear 
completely when switching to native bluetooth communication. I suspect 
this might be a driver problem, but I don't know for sure.


Linux and Windows provide a socket based api, which is exactly what I 
used in my prototype. Right now we only need SPP/RFCOMM (Serial Port 
Profile). That's what the bluetooth enabled dive computers (Shearwater 
Petrel, Heinrichs Weikamp OSTC Sport) use today. It's also the protocol 
used underneath the serial emulation.


I don't have any experience with Bluetooth Low Energy (BLE). But as far 
as I'm concerned that's not a priority. Let's go step by step and take 
care of normal bluetooth first :-)


Jef
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 1/2] Ticket #837 Fix

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 07:45:31AM +0200, Yosef Hamza wrote:
 The fix is according to the comment on the ticket.

- your patch was attached as base64 encoded attachment. Nothing horribly
  wrong with that, but it's inconvenient as it makes it hard to comment on
  the code in a response.
- changing the names (and the order) of the buttons isn't exactly a fix
  for the issue -- what needs to happen is that the message bar is shown
  with actions that make sense:
  -- Add location / close (if the user hasn't made any changes)
  -- Save and close / Discard and close (if the user has made changes or
 selected to add a site)

For an easy fix ticket I'd be happy with a solution that ignores the
add part of this. So make the message bar show Close by default and
Save / Discard once the user starts editing.

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: Regarding understanding code

2015-03-09 Thread Tomaz Canabrava
On Sat, Mar 7, 2015 at 7:13 AM, Anton Lundin gla...@acc.umu.se wrote:

 On 06 March, 2015 - Raghu Ram Vadapalli wrote:

  Can you please tell me where the code for the styles such as scroll bars
 is located.


We don't use styles, so they aren't located in the code.
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: Galileo Sol dive log decoding.

2015-03-09 Thread Willem Ferguson

On 09/03/2015 17:19, Jef Driesen wrote:

On 2015-03-09 14:24, Willem Ferguson wrote:

I am currently working with dive logs of the Galileo. I am looking at
the events during the dive.


Are you talking about direct downloading from the dive computer, or 
importing from the Uwatec application?
I am talking of the directly downloaded files I presume: those saved as 
subsurface.bin. Am I right?
Certainly the links you refer to below are helpful in decoding these. I 
will do controlled dives with a
Galileo,  generating events in a planned way, then download the dives as 
subsurface.bin and decode them to
see the way the events were recorded. I have written software to do the 
decoding and I think it is quite
sufficient for these purposes. I have a reasonable understanding of the 
dive structure and the way flags and
events are implemented. I can read any arbitrary dive within the whole 
downloaded dive log.

At least, that is my general plan of action.



The following events are recorded:
a) Several alarms, e.g rapid acscent, MOD alarm, excessive workload,
CNS overload, missed deco stop, RBT exceeded. Some of these have a
second marker for resetting the alarm (e.g. MOD; ascent rate).
b) Events such as gas change and bookmarks.

1) Which of these are handled by libdivecomputer and can therefore be
handles in Subsurface? This will determine which ones I will
specifically look at.


Have a look at the libdivecomputer parser_sample_event_t enum. It 
lists all the events that are supported today. Note that the current 
events were modeled after the Suunto event model. This will be 
reworked significantly after the v0.5 release, and not all events will 
be kept (especially the Suunto specific ones).


Thanks. This is very helpful.



2) I would prefer just providing the dive log details for
implementation, for instance this is how gas changes are recorded
into the dive log Would this be workable for you at all?


Sure. If you're going to reverse engineer the data, you'll be 
interested in these pages:


http://diversity.sourceforge.net/uwatec_smart_format.html
http://diversity.sourceforge.net/uwatec_galileo_format.html



Thanks, I am in contact with Simon Naunton.
Assuming I uncover something useful, I will document this in the 
libdivecomputer wiki,

as well as on Simon's existing web page.

They are lacking in a few areas, but as a starting point they are 
still a good reference.


BTW, you can always document your findings on the libdivecomputer wiki.

Jef
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 1/2] Ticket #837 Fix

2015-03-09 Thread Yosef Hamza
If the user hasn't made any changes and now it displays Add location
close.

Is there anything special that should happen when the choose Add location?

If now why it has to change when the user make changes, we can keep Add
location
instead of Save and close?

Let me know what you think.

§Yousef


On Mon, Mar 9, 2015 at 5:57 PM, Dirk Hohndel d...@hohndel.org wrote:

 On Mon, Mar 09, 2015 at 07:45:31AM +0200, Yosef Hamza wrote:
  The fix is according to the comment on the ticket.

 - your patch was attached as base64 encoded attachment. Nothing horribly
   wrong with that, but it's inconvenient as it makes it hard to comment on
   the code in a response.
 - changing the names (and the order) of the buttons isn't exactly a fix
   for the issue -- what needs to happen is that the message bar is shown
   with actions that make sense:
   -- Add location / close (if the user hasn't made any changes)
   -- Save and close / Discard and close (if the user has made changes or
  selected to add a site)

 For an easy fix ticket I'd be happy with a solution that ignores the
 add part of this. So make the message bar show Close by default and
 Save / Discard once the user starts editing.

 /D

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Davide DB
Il 09/mar/2015 18:36 Dirk Hohndel d...@hohndel.org ha scritto:

 That's a strange edge case.
 Here are some assumptions that we tend to make
 a) most people get the data into Subsurface via a download from their dive
 computer (or, initially, importing from other software).
 b) if there are errors with the tanks, it is unlikely that it is a tank
 with relevant data that is at the wrong position (i.e., if you have air
 integration or start and end pressures, if the gas is wrong you actually
 WANT to change the gas settings for that tank and not switch to a
 different tank
 So basically it seems rather unlikely that the user really has the wrong
 order of tanks and needs to switch to a different tank.


Dirk, does this means that Subsurface does not support Bottom Timer tech
diving anymore?

I was the reporter of this bug that along with 832 and 834 makes really
hard to use it anymore.
The copy and paste breaks all manual gas changes.

Thanks
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Henrik Brautaset Aronsen
On 09 Mar 2015, at 19:24, Davide DB dbdav...@gmail.com wrote:
 
 Il 09/mar/2015 18:36 Dirk Hohndel d...@hohndel.org ha scritto:
  So basically it seems rather unlikely that the user really has the wrong
  order of tanks and needs to switch to a different tank.
 
 
 Dirk, does this means that Subsurface does not support Bottom Timer tech 
 diving anymore?
 
 I was the reporter of this bug that along with 832 and 834 makes really hard 
 to use it anymore.
 The copy and paste breaks all manual gas changes.

I’m experiencing the same problem.

Henrik
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Yosef Hamza
About patch -0002-

The thing is timeAxis-valueAt(scenePos) can return a negative value if the
cursor was pointing to the negative part of the axis to the left, which is
the case
here.

The unsigned assigning happens at the very end of assigning series when
assigned
finally to duration_t of event which is uint32_t.

About -0003-

I coded the solution mentioned by Robert and will submit it tonight after
making sure
It's safe.

It just looked like a hack to me though I made the patch and posted here
for exactly this
discussion
Adding gas change at @0:00 can be handy, I'm not a diver myself but as of
this moment
there's not a way -at least that I'm ware of- to sort Cylinders so If the
user entered them
in the wrong order and wanted to change the initial one instead of sorting
them manually
he can add that gas change @0:00

§Yousef

On Mon, Mar 9, 2015 at 6:05 PM, Dirk Hohndel d...@hohndel.org wrote:

 On Mon, Mar 09, 2015 at 07:49:47AM +0200, Yosef Hamza wrote:
  Those 2 patches are actually one, But I think that the second patch needs
  some discussion.

 As Robert already mentioned, the second patch (0003) is simply wrong. That
 code was there for a reason :-)

  I think it's better this way because through trying and fixing the error
  there wasn't  a way -that I'm aware of at least- to cancel the added
 event
  @0:00.

 There are different reasons why there would be an event at time 0:00
 Some dive computers include a gas change event in the first sample (which
 often is a few seconds into the dive and not at 0:00) to indicate the
 first gas used. Those are valid and important events for the logic of how
 we treat a dive, but they shouldn't be displayed as they make no sense to
 the casual user.

 The question to ask the bug submitter is why do you want to add a gas
 change at 0'/0:00? -- is this to correct the first gas used?


 The other patch (0002) I don't understand. At least in the function where
 you added this code there is no unsigned comparison. Can you explain this
 a bit more?

 /D

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 06:48:52PM +0200, Yosef Hamza wrote:
 About patch -0002-
 
 The thing is timeAxis-valueAt(scenePos) can return a negative value if the
 cursor was pointing to the negative part of the axis to the left, which is
 the case
 here.
 
 The unsigned assigning happens at the very end of assigning series when
 assigned
 finally to duration_t of event which is uint32_t.

That is correct, but the commit message talks about unsigned comparison,
right? It's a good practice to try to have clear and precise commit
messages. So point out WHERE this is assigned to an unsigned integer.

 About -0003-
 
 I coded the solution mentioned by Robert and will submit it tonight after
 making sure
 It's safe.

Excellent.

 It just looked like a hack to me though I made the patch and posted here
 for exactly this discussion Adding gas change at @0:00 can be handy, I'm
 not a diver myself but as of this moment there's not a way -at least
 that I'm ware of- to sort Cylinders so If the user entered them in the
 wrong order and wanted to change the initial one instead of sorting them
 manually he can add that gas change @0:00

That's a strange edge case.
Here are some assumptions that we tend to make
a) most people get the data into Subsurface via a download from their dive
computer (or, initially, importing from other software).
b) if there are errors with the tanks, it is unlikely that it is a tank
with relevant data that is at the wrong position (i.e., if you have air
integration or start and end pressures, if the gas is wrong you actually
WANT to change the gas settings for that tank and not switch to a
different tank
So basically it seems rather unlikely that the user really has the wrong
order of tanks and needs to switch to a different tank.

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Fix #795

2015-03-09 Thread Joakim Bygdell



0001-Fixes-795.patch
Description: Binary data


/Jocke

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


GSOC 2015 proposal

2015-03-09 Thread Yash Kumar
Hello,
I am a college student who has an idea for android app. I will get straight
to my app.
I propose an idea of bus tracking using the GPS receiver in our
smartphones. We can simply use google maps to pin point the location of
that particular bus the user wants.
So, I am thinking of proposing this idea in GSOC 2015. But wanted to
contact you guys to know if this proposal is acceptable or not. Please
reply asap.
Thank you,
Yash Gadle
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: some patches regarding the location edit.

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 04:01:12PM -0300, Tomaz Canabrava wrote:
 From 7e89b79afbefd508015841a667cc68a73865754b Mon Sep 17 00:00:00 2001
 From: Tomaz Canabrava tomaz.canabr...@intel.com
 Date: Mon, 9 Mar 2015 15:12:48 -0300
 Subject: [PATCH 3/6] Remove redundant code
 
 Another bit of piece of software that shouldn't exist.
 
 Signed-off-by: Tomaz Canabrava tomaz.canabr...@intel.com
 ---
  qt-ui/maintab.cpp | 6 ++
  1 file changed, 2 insertions(+), 4 deletions(-)
 
 diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
 index 956a1bc..dff49d8 100644
 --- a/qt-ui/maintab.cpp
 +++ b/qt-ui/maintab.cpp
 @@ -71,6 +71,7 @@ MainTab::MainTab(QWidget *parent) : QTabWidget(parent),
   // filled from a dive, they are made writeable
   setEnabled(false);
  
 +

Really?

 @@ -955,10 +956,7 @@ void MainTab::markChangedWidget(QWidget *w)
   qApp-palette().color(QPalette::Text).getHslF(h, s, l, a);
   p.setBrush(QPalette::Base, (l = 0.3) ? QColor(Qt::yellow).lighter() : 
 (l = 0.6) ? QColor(Qt::yellow).light() : /* else */ 
 QColor(Qt::yellow).darker(300));
   w-setPalette(p);
 - if (!modified) {
 - modified = true;
 - enableEdition();
 - }
 + modified = true;

Are you sure this is correct? I thought the first time something changes
we do have to call enableEdition() - or is this taken care of somewhere
else?

/D

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 07:26:05PM +0100, Henrik Brautaset Aronsen wrote:
 On 09 Mar 2015, at 19:24, Davide DB dbdav...@gmail.com wrote:
  
  Il 09/mar/2015 18:36 Dirk Hohndel d...@hohndel.org ha scritto:
   So basically it seems rather unlikely that the user really has the wrong
   order of tanks and needs to switch to a different tank.
  
  
  Dirk, does this means that Subsurface does not support Bottom Timer tech 
  diving anymore?
  
  I was the reporter of this bug that along with 832 and 834 makes really 
  hard to use it anymore.
  The copy and paste breaks all manual gas changes.
 
 I’m experiencing the same problem.

So just to make sure... I'm aware of the bug. I know what causes it... I
even have a vague idea how to address it. But I'm completely under water
and way behind on many of the Subsurface things that I want to be working
on...

If this is actually a show stopper for you guys, then I'll try to get in a
hack so you can use the software, but a real solution will likely take a
little longer.

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 1/2] Ticket #837 Fix

2015-03-09 Thread Dirk Hohndel
Yosef,

please try to figure out how to answer inline. This is a technical mailing
list where top posting is considered quite annoying. The occasional email
from a phone may be acceptable, but in general we expect people to use in
line responses...

On Mon, Mar 09, 2015 at 07:01:09PM +0200, Yosef Hamza wrote:
 If the user hasn't made any changes and now it displays Add location
 close.
 
 Is there anything special that should happen when the choose Add location?

As I said, that exceeds the easy fix part of this. Yes, we should add
the code that allows people to create a new location. But that's a bit
more complicated. For the first patch I'll be happy with something that
just has a close button there by default.

 If now why it has to change when the user make changes, we can keep Add
 location
 instead of Save and close?

I can't parse that sentence. Can you try again

Thanks

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Dirk Hohndel
On Mon, Mar 09, 2015 at 07:24:15PM +0100, Davide DB wrote:
 Il 09/mar/2015 18:36 Dirk Hohndel d...@hohndel.org ha scritto:
 
  That's a strange edge case.
  Here are some assumptions that we tend to make
  a) most people get the data into Subsurface via a download from their dive
  computer (or, initially, importing from other software).
  b) if there are errors with the tanks, it is unlikely that it is a tank
  with relevant data that is at the wrong position (i.e., if you have air
  integration or start and end pressures, if the gas is wrong you actually
  WANT to change the gas settings for that tank and not switch to a
  different tank
  So basically it seems rather unlikely that the user really has the wrong
  order of tanks and needs to switch to a different tank.
 
 Dirk, does this means that Subsurface does not support Bottom Timer tech
 diving anymore?

Not at all. I was talking about the assumptions that we make.

 I was the reporter of this bug that along with 832 and 834 makes really
 hard to use it anymore.

Why? Enter your first gas as first tank. Voila.

 The copy and paste breaks all manual gas changes.

Known issue. Non-trivial to fix.

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: Customizable Print Formats GSoC 2015

2015-03-09 Thread Long, Martin
I've only really scanned this thread, so please excuse me if I'm
raising something that's already been covered.

It seems we're talking about rendering using HTML along with a few
other things. Have we considered pagination? I know this is something
that HTML isn't great at. You can, of course, print html, and it will
paginate it, but is controlling how this happens easy? I understand
there is support for pagination in CSS - is this enough for us to do
reasonable looking 1 dive per page, 2 dives per page, etc?

Or, are we considering rendering each dive as an individual HTML
document, and then have the framework code assemble that into a
pdf/print commands, etc?

One of the reasons i raised this as a possible GSoC project was the
poor experience when you have any more than a few lines of 'prose' in
the notes for a dive - I tend to waffle a bit in some of my dive logs.

Martin
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: Customizable Print Formats GSoC 2015

2015-03-09 Thread Gehad Elrobey
On Tue, Mar 10, 2015 at 1:20 AM, Long, Martin mar...@longhome.co.uk wrote:

 I've only really scanned this thread, so please excuse me if I'm
 raising something that's already been covered.

 It seems we're talking about rendering using HTML along with a few
 other things. Have we considered pagination? I know this is something
 that HTML isn't great at. You can, of course, print html, and it will
 paginate it, but is controlling how this happens easy? I understand
 there is support for pagination in CSS - is this enough for us to do
 reasonable looking 1 dive per page, 2 dives per page, etc?


CSS supports 'page-break-inside' property which define whether a page break
is allowed inside a specified element or not, also max/min height can be
used for pagination, but taking into consideration that the overflow of
long notes will either be trimmed or will expand the dive to more printing
area and in this case we can't ensure to have N dives per page (this can be
something like flow layout).
So as I expect yes we can control this easily.


-- 
regards,
Gehad
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Yosef Hamza
On Tue, Mar 10, 2015 at 1:18 AM, Dirk Hohndel d...@hohndel.org wrote:



 @@ -1392,6 +1395,23 @@ void ProfileWidget2::changeGas()
 qDebug()  failed to parse tank number;
 tank = get_gasidx(displayed_dive, gasmix);
 }
 +
 +   struct event **events = get_dive_dc(displayed_dive,
 dc_number)-events;
 +   while (*events) {
 +   if ((*events)-time.seconds == 0) {
 +   remove_event(*events);

 You cannot use remove_event() on events from displayed_dive. It only
 removes events from current_dive


So I should figure out a way to remove it from the displayed_dive or don't
do anything about it?

§Yousef
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Yosef Hamza
Here's the proposed change by Robert fixes the problem for all.

It doesn't show the gas change icon @0:00, But you can still change gases
@0:00.

§Yousef

On Mon, Mar 9, 2015 at 10:42 PM, Dirk Hohndel d...@hohndel.org wrote:

 On Mon, Mar 09, 2015 at 07:26:05PM +0100, Henrik Brautaset Aronsen wrote:
  On 09 Mar 2015, at 19:24, Davide DB dbdav...@gmail.com wrote:
  
   Il 09/mar/2015 18:36 Dirk Hohndel d...@hohndel.org ha scritto:
So basically it seems rather unlikely that the user really has the
 wrong
order of tanks and needs to switch to a different tank.
   
  
   Dirk, does this means that Subsurface does not support Bottom Timer
 tech diving anymore?
  
   I was the reporter of this bug that along with 832 and 834 makes
 really hard to use it anymore.
   The copy and paste breaks all manual gas changes.
 
  I’m experiencing the same problem.

 So just to make sure... I'm aware of the bug. I know what causes it... I
 even have a vague idea how to address it. But I'm completely under water
 and way behind on many of the Subsurface things that I want to be working
 on...

 If this is actually a show stopper for you guys, then I'll try to get in a
 hack so you can use the software, but a real solution will likely take a
 little longer.

 /D
 ___
 subsurface mailing list
 subsurface@subsurface-divelog.org
 http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface



0003-Preventing-more-than-one-events-0-00.patch
Description: Binary data
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Dirk Hohndel
On Tue, Mar 10, 2015 at 12:52:16AM +0200, Yosef Hamza wrote:
 Here's the proposed change by Robert fixes the problem for all.

Well, it may fix one problem, but using that patch would create a lot of
others...

This whole two patch rule is about making sure you understand how to
submit changes and how to deal with feedback... so here we go :-)

From ac8291f5f71e4bf17a80f0e82758066174808c9c Mon Sep 17 00:00:00 2001
From: Yousef Hamza jo.adam...@gmail.com
Date: Tue, 10 Mar 2015 00:44:46 +0200
Subject: [PATCH] Preventing more than one events @0:00

Removing existing gas change events @0:00 when
new one is added.

Signed-off-by: Yousef Hamza jo.adam...@gmail.com
---
 qt-ui/profile/profilewidget2.cpp | 20 
 1 file changed, 20 insertions(+)

diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp
index cfcd25d..ab59330 100644
--- a/qt-ui/profile/profilewidget2.cpp
+++ b/qt-ui/profile/profilewidget2.cpp
@@ -1382,6 +1382,9 @@ void ProfileWidget2::changeGas()
// backup the things on the dataModel, since we will clear that out.
struct gasmix gasmix;
int seconds = timeAxis-valueAt(scenePos);
+   if (seconds  0) {
+   seconds = 0;
+   }

So this SHOULD be its own commit. I simply disagreed with your commit
message. Please submit as a separate change with an appropriate message.

 
@@ -1392,6 +1395,23 @@ void ProfileWidget2::changeGas()
qDebug()  failed to parse tank number;
tank = get_gasidx(displayed_dive, gasmix);
}
+
+   struct event **events = get_dive_dc(displayed_dive, 
dc_number)-events;
+   while (*events) {
+   if ((*events)-time.seconds == 0) {
+   remove_event(*events);

You cannot use remove_event() on events from displayed_dive. It only
removes events from current_dive

+   }
+   events = (*events)-next;

so you remove *events and THEN use *events-next ?
That's called accessing freed memory...

+   }
+
+   events = current_dc-events;
+   while (*events) {
+   if ((*events)-time.seconds == 0) {
+   remove_event(*events);
+   }
+   events = (*events)-next;

Same as abive.

But regardless of the issues oiubted iytm this whole bit of code is flat
out wrong. You unconditionally delete ALL events at time stamp zero. And
that is not what you should be doing here.

What you should do is that IFF the user adds a gas change at time 0 and
IFF there already is a gas change at time 0, THEN remove that existing gas
change.

Look around the sources... there's a helper function that you can use to
search for the next gas change event. Use that on the events pointer and
check if it returns a gas change at time 0...

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 1/2] Ticket #837 Fix

2015-03-09 Thread Dirk Hohndel
On Tue, Mar 10, 2015 at 01:08:19AM +0200, Yosef Hamza wrote:
   Is there anything special that should happen when the choose Add
  location?
 
  As I said, that exceeds the easy fix part of this. Yes, we should add
  the code that allows people to create a new location. But that's a bit
  more complicated. For the first patch I'll be happy with something that
  just has a close button there by default.
 
 
 I don't quite get it, Should I create a new location with some default
 values since the form is empty (user hasn't made any changes to it)?

I think Tomaz is working on this as well... I worry that you might both
address the same issues.

But this part of the UI needs to allow the user to add a new location.
Imagine you start with an empty dive log. You manually add a new dive. Now
you want to assign a location to it. How do you do that?

/D
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 2/2] Ticket #831 Fix

2015-03-09 Thread Davide DB
On Mon, Mar 9, 2015 at 9:42 PM, Dirk Hohndel d...@hohndel.org wrote:


 If this is actually a show stopper for you guys, then I'll try to get in a
 hack so you can use the software, but a real solution will likely take a
 little longer.

No problem at all, I can live with them.

In the last few weeks I read so many times that usually people get
everything right (mixes, tanks, gas changes) from their dive computers
that I'm becoming feeling a bit outlier. Hence I'm trying to
understand if, regardless of each his own convictions, there is still
room for DIR/GUE/UTD Subsurface users :)

Regarding the gas change 0@0 it's a common scenario in advanced dives
or dive locations having to switch to a particular mix on the surface:

* I dive with a pscr rebreather and a hypoxic back gas so I have to
reach a safe depth prior to change to back gas.
* I dive oc/pscr with a hypoxic mix and my dive location (cave or even
reef) doesn't permit to reach immediately a safe depth.
* I dive in a cave where gas mixes are chosen on the cave profile:
first part on mix1 then mix2 and again mix2...

 The question to ask the bug submitter is why do you want to add a gas
 change at 0'/0:00? -- is this to correct the first gas used?
 Why? Enter your first gas as first tank. Voila.

What is the main gas and the main tank in the above examples?
By default we tend to consider our main gas the back gas and I set it
as default tank into Subsurface preference dialog then I describe my
dive through the gas change events.
In my above example:

I made a formal gas change at the surface switching to a 35/25
At 30m I switched to my bottom mix: 16/60 on a AL80 [**]
Deco was performed on 35/25, 50/20 and 100%
My backgas was a D8,5L on 16/60 (that is set as default tank in
Subsurface). It's my bailout reserve, my main tank.

[**] I could have more f this.

Should I remove the default cylinder to be able to switch at 0@0?
If I had a proper DC managing all of this and I forget to press a
button, could I fix all of this later? Hummm

PS
My crappy XDeep BT adds its own oddity: it exports via UDDF an unknown
cylinder with real air...

Thank you in advance

-- 
Davide
https://vimeo.com/bocio/videos
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: [PATCH 1/2] Ticket #837 Fix

2015-03-09 Thread Yosef Hamza
On Mon, Mar 9, 2015 at 9:05 PM, Dirk Hohndel d...@hohndel.org wrote:

 Yosef,

 please try to figure out how to answer inline. This is a technical mailing
 list where top posting is considered quite annoying. The occasional email
 from a phone may be acceptable, but in general we expect people to use in
 line responses...

Sorry about that...


 On Mon, Mar 09, 2015 at 07:01:09PM +0200, Yosef Hamza wrote:
  If the user hasn't made any changes and now it displays Add location
  close.
 
  Is there anything special that should happen when the choose Add
 location?

 As I said, that exceeds the easy fix part of this. Yes, we should add
 the code that allows people to create a new location. But that's a bit
 more complicated. For the first patch I'll be happy with something that
 just has a close button there by default.


I don't quite get it, Should I create a new location with some default
values
since the form is empty (user hasn't made any changes to it)?



 If now why it has to change when the user make changes, we can keep Add
  location
  instead of Save and close?

 I can't parse that sentence. Can you try again

 I meant we can just keep the action text to Add location instead of
changing it to
Save and close and only change Close to Discard and close when the
user
make some changes.

§Yousef
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


[PATCH 2/2] HTML: Report start cylinder pressure correctly.

2015-03-09 Thread Gehad Elrobey
Fix start pressure cylinder values.

-- 
regards,
Gehad
From 8a211da68dabdbccb856f60b68d96558d81d Mon Sep 17 00:00:00 2001
From: Gehad elrobey gehadelro...@gmail.com
Date: Tue, 10 Mar 2015 02:05:28 +0200
Subject: [PATCH 2/2] HTML: Report start cylinder pressure correctly.

Report start cylinder pressure from the samples with empty value.
Must search for the first nonzero value.

Signed-off-by: Gehad elrobey gehadelro...@gmail.com
---
 theme/list_lib.js | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/theme/list_lib.js b/theme/list_lib.js
index ceaa9c9..986833a 100644
--- a/theme/list_lib.js
+++ b/theme/list_lib.js
@@ -805,6 +805,14 @@ var points;  //reference to the samples array of the shown dive.
 var ZERO_C_IN_MKELVIN = 273150;
 var plot1;
 
+function firstNonZero()
+{
+	for(var i = 0; i = items[dive_id].samples.length-1; i++){
+		if(items[dive_id].samples[i][2] !== 0)
+			return items[dive_id].samples[i][2];
+	}
+}
+
 function lastNonZero()
 {
 	for(var i = items[dive_id].samples.length-1; i = 0; i--){
@@ -847,7 +855,8 @@ function get_cylinder_HTML(cylinder)
 	var cEPressure = cylinder.EPressure;
 
 	if (cSPressure === --) {
-		cSPressure = Math.round(put_pressure_unit(items[dive_id].samples[0][2])).toFixed(1) +   + pressure_unit;
+		var nonZeroCSPressure = firstNonZero();
+		cSPressure = Math.round(put_pressure_unit(nonZeroCSPressure)).toFixed(1) +   + pressure_unit;
 	}
 
 	if (cEPressure === --) {
-- 
2.1.0

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


[PATCH v2] Fix building with NO_PRINTING for Android

2015-03-09 Thread Anton Lundin
Back in 4867ee8ad87399f34a399f30def700b2fc045309 (Move the Profile out
of the mainwindow.ui) the way to access the PlannerDetails object
changed.

This does the corresponding change to the NO_PRINTING block, making it
build on Android again.

Signed-off-by: Anton Lundin gla...@acc.umu.se
---
 qt-ui/mainwindow.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index 6ec4a35..aa708d0 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -134,7 +134,7 @@ MainWindow::MainWindow() : QMainWindow(),
connect(locationInformation, SIGNAL(informationManagementEnded()), 
information(), SLOT(showLocation()));
 
 #ifdef NO_PRINTING
-   ui.printPlan-hide();
+   plannerDetails-printPlan()-hide();
ui.menuFile-removeAction(ui.actionPrint);
 #endif
 
-- 
2.1.0

___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface


Re: Off Topic -- slightly. Dive Computers

2015-03-09 Thread Anton Lundin
On 07 March, 2015 - Steve Butler wrote:

 On 03/07/2015 03:36 AM, Anton Lundin wrote:

...
 It got great readability and i love how compact it is. I also like the
 mecanical push-buttons better than the piezoelectric ones in the OSTC2
 and predator/petrel. It doesn't do air-integration. It would be fun to
 have the pressure-sensor data in subsurface for analysis but i don't
 care for it during my dive. I don't mind unclipping my spg from my left
 hip and looking at it to verify my mental model of what pressure I'm at.
 I like it all in one spot.  Anybody have information about Liquid Vision?
 My instructor said it was just a BT.
 

Then your instructor was wrong.

Liquivision has one older trimix computer, the X1. Awesome computer that
I've heard a lot of good things about, but its a quite old design, a
fixed re-chargeable battery, and its ridiculous expensive. One Swedish
webshop lists it at 12500 sek, about $1500. Liquivisions own webshop
doesn't list it anylonger.

Then they got a newer series of computers. Xeo, Lynx, Xen and Kaon.
You can read more about them here:
http://www.liquivision.com/estore/page3.html

I haven't dived any of there computers my self but I've heard lot of
good things about the Xen. One team i spent a week diving with had
exclusively Xen computers, and all of them where quite happy with them.

I haven't tested their tap-based interface in real life, but the concept
is quite cool. 



Btw. When looking around i found this:

Alternate Dive Loggers

Following 3rd party dive loggers also work with Liquivision dive logs:
Divelogs 
Diving Log 
MacDive 
Subsurface

http://www.liquivision.com/downloads/ES_SoftwareDownloads.php


Isn't our importer of Liquivision logs a reverse-engineering job? =)


Anyhow, awesome that they link to us.


//Anton


-- 
Anton Lundin+46702-161604
___
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface