So I've been kicking this around in my mind for quite some time. Henrik has been asking for it "since the beginning of time". We clearly have a few more people here who'd love to have this, and I had a few conversations on my last dive trip that make me think this would be the right cornerstone feature for 4.5.
Here's the high level idea (and yes, this is pretty raw and needs a lot more work): Our "Location" text becomes the key for a dive site data base. How this key into this data base is structured is primarily up to the user. We will not enforce any schema on this. I am unclear how the UI for accessing this dive site data base should work. Possibly a button next to the Location field in the Dive Notes, but I'm not sure. Let's ignore this and say that we switched into "dive site mode". Every dive site has a number of items associated with it. GPS coordinates Site name (= (part of) our location string?) Description Local notes The first two are mandatory. If you don't have a name and GPS coordinates, you don't have an entry in this data base. Based on what some website do, we could add more items, but I'm not sure I want to do that; feedback welcome: Currents Hazards Water type Marinelife Maxdepth Mindepth This data base is connected with one or more online data bases. I am talking to a couple of web site maintainers already about this integration. My expectation is that anyone will be able to search the data bases, in order to add sites or edit the data for sites you'll have to have a login on that site. GPS location, Site name, and Description (and possibly the other items) come from / are shared with the web site(s), Local notes are just that, notes that the user locally makes about the dive site. The dive site view has three panes. The right side is a map (I'm thinking square, but of course the user can resize). The left side has a list of dive sites at the bottom, and above that the details of the one site that's selected in the list. How does the interaction work? Search mode: User enters a geographic region. If the user is looking up a site (i.e. they enter the dive site screen from a dive that has no location set), the region is pre-populated based on the location field of the trip, assuming the dive is part of a trip. Otherwise the region is derived from the IP address (if possible). Or it is unset and needs to be set by the user. I'm still trying to crisply define the semantic of "region". This could be something like a specific city (Hoodsport, WA, USA), or a body of water (Hood Canal), or a resort (Wananavu, Fiji), or a GPS location. Plus a radius around that. The user can then either see all known dive sites in this region. Or they can search for a dive site by name in this region. If the user picks a known site, that populates the GPS and site name accordingly. If the user doesn't pick a known site but adds a new site, they need to define a new name and some of the other data. GPS is required (either from companion app, manual input, or map input). If the user is authenticated against one or more of the web sites that we integrate with, they can send that new dive site to that web site. Or in the case of divelogs.de, uploading the dive to their site will include the location data. Browse mode: When the user enters the dive site data base from a dive that has its location / GPS set, then the data base shows the data for that site and a map with known dive sites around it (default radius 40km/25mls or something). The map is just a Marble map, so zoom and move are available, if the user zooms or moves then a list of sites that are visible in the map is updated accordingly. OK, as I said, all rather rought still, but an idea of the direction I want to take this. Let's take this as the start of a conversation and try to really pin down the UI and the interaction model - and then implement this for 4.5. /D _______________________________________________ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface