X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=README;h=1660f66eb9afa1a1e9e3f80c0bf11a02478dc07c;hb=0aad4d6094173fd3c10e435be05bde541062232d;hp=5947febb702cd072553b6a686121a2ff3cfb3b14;hpb=73013911af7e6b26535bbff20ef9834d3cbbc71d;p=ext%2Fsubsurface.git diff --git a/README b/README index 5947feb..1660f66 100644 --- a/README +++ b/README @@ -4,7 +4,9 @@ I'm tired of java programs that don't work etc. License: GPLv2 -You need libxml2-devel, gtk2-devel and GConf2-devel to build this. +You need libxml2-devel, gtk2-devel, glib-2.0 and GConf2-devel to build +this (and libusb-1.0 if you have libdivecomputer built with it, but then +you obviously already have it installed) You also need to have libdivecomputer installed, which goes something like this: @@ -15,10 +17,18 @@ You also need to have libdivecomputer installed, which goes something like this: make sudo make install +NOTE! You may need to tell the main Makefile where you installed +libdivecomputer if you didn't do it in the default /usr/local location. +I don't trust pkg-config for libdivecomputer, since pkg-config usually +doesn't work unless the project has been installed by the distro. + +Just edit the makefile directly. autoconf and friends are the devil's +tools. + Usage: make - ./divelog dives/*.xml + ./subsurface dives/*.xml to see my dives (with no notes or commentary). @@ -26,17 +36,36 @@ Or, if you have a dive computer supported by libdivecomputer (and connected to /dev/ttyUSB0), you can just do make - ./divelog + ./subsurface and select "Import" from the File menu, tell it what dive computer you have, and hit "OK". There's a lot of duplicates in the XML files that come as an example, -and divelog will de-duplicate the ones that are exactly the same (just -because they were imported multiple times). But at least two of the -dives have duplicates that were edited by Dirk in the Suunto Dive +and subsurface will de-duplicate the ones that are exactly the same +(just because they were imported multiple times). But at least two of +the dives have duplicates that were edited by Dirk in the Suunto Dive Manager, so they don't trigger the "exact duplicates" match. +Implementation details: + + main.c - program frame + dive.c - creates and maintaines the internal dive list structure + libdivecomputer.c + uemis.c + parse-xml.c + save-xml.c - interface with dive computers and the XML files + profile.c - creates the data for the profile and draws it using cairo + +A first UI has been implemented in gtk and an attempt has been made to +separate program logic from UI implementation. + + gtk-gui.c - overall layout, main window of the UI + divelist.c - list of dives subsurface maintains + equipment.c - equipment / tank information for each dive + info.c - detailed dive info + print.c - printing + WARNING! I wasn't kidding when I said that I've done this by reading gtk2 tutorials as I've gone along. If somebody is more comfortable with gtk, feel free to send me (signed-off) patches. @@ -46,11 +75,6 @@ bother connecting a signal for the "somebody edited the dive info" cases. I just save/restore the dive info every single time you switch dives. Christ! That's truly lame. -Also, I don't actually integrate directly with libdivecomputer, I just -read the XML files it can spit out. But I included my own raw dive -profile xml files for anybody who isn't a diver, but decides that they -want to educate me in gtk. - NOTE! Some of the dives are pretty pitiful. All the last dives are from my divemaster course, so they are from following open water students along (many of them the confined*water dives). There a lot of the