Re: [Viking-devel] [PATCHv2] Fix GPX symbol names for Garmin Oregon 450

2012-09-15 Thread Robert Norris


 Casing of all symbols apart from 'custom placeholder' were modified into
 'Title Case'. The hash helper functions had to be changed to ignore the
 difference between lower and upper cases. The import had to be extended
 to convert lower case names in sym to the version in the table to work
 correctly.

Unfortunately not quite true :(

eg:

 - { us hwy, us_hwy, 8193, us hwy symbol, NULL, NULL, NULL },
 + { US hwy, us_hwy, 8193, us hwy symbol, NULL, NULL, NULL },

or 

 - { vor/tacan, vortac, 16396, VOR/TACAN symbol, NULL, NULL, NULL },
 + { VOR/TACAN, vortac, 16396, VOR/TACAN symbol, NULL, NULL, NULL },

+many more...

Admittedly most of these are types of waypoint the hardly anyone would use and 
we don't have symbols for them anyway...

Also I think Guilhem may have eluded to this in the past - with this patch it 
makes the symbol upload to *all* devices case sensitive. Thus if a (probably 
older) device only works with lower case symbol definitions then I think this 
patch would break it.

I'm not quite sure how GPSBabel itself copes with this situation - presumably 
devices should be case insensitive - but as you've found out the 450 is 
sensitive to it. I can't find out any further detail about this apart from 
http://gnss-info.blogspot.com/p/manual-eng.html 


Maybe we're overly worrying about inconveniencing other device owners, but we 
shouldn't have to rely on them to tell us that previously fully working devices 
now have some functional regression.



So I was thinking  of a slightly different approach - which makes it only 
affect devices explicitly when told to do so:

1. Have files .vik  .gpx of existing supported waypoints 
.vik:
https://github.com/rnorris/viking/commit/4335fd6d9d74a4e903980b9db16176f95bb8473b

Probably need to extend to include waypoints that have can symbols on the GPS 
device but not in Viking.

2. Confirm actual availability of all waypoint symbols on devices one may have 
with current code base

3. Th different approach: Have an option to set the waypoint symbol upload 
casing behaviour.
Then do a 'simple' automatic string Title Case conversion for the symbol
. Unfortunately no glib function to do so
. Use something like:
http://c-programming-free.blogspot.co.uk/2010/11/accept-string-and-convert-into-proper.html
But need to fix for after punctuation especially / + (
[Possibly in the global preferences for Export/External or better in the GPS 
layer options]

3 Test:
Especially Title Case 'oddities', eg:
 + { Skull and Crossbones, skull, 14, white skull and 
crossbones symbol, wp_skull_pixbuf, wp_skull_large_pixbuf, 
NULL },
 + { RV Park, rv_park, 8215, RV park symbol, wp_rv_park_pixbuf, 
 wp_rv_park_large_pixbuf, NULL },

Do we need to keep custom begin placeholder   custom end placeholder in 
lower case?

a. If auto conversion works then Hurrah!
b. Refine approach for any specific sting conversion / title case oddities.
- Extend the table with a new string / some kind of function to handle it / or 
just an explicit hard code exceptions if only a couple cases

Note other candidates with interesting casing - however these currently have no 
actual symbol in Viking but what happens on the device display:

 + { Circle with X, circle_x, 179, circle with x in the center, NULL, 
 NULL, NULL },
 + { Tide/Current PRediction Station, tide_pred_stn, 183, Tide/Current 
 Prediction Station, NULL, NULL, NULL },
 + { Bait and Tackle, bait_tackle, 192, U bait and tackle symbol, NULL, 
 NULL, NULL },
 + { US hwy, us_hwy, 8193, us hwy symbol, NULL, NULL, NULL },
 + { Intl freeway hwy, freeway, 8201, intl freeway hwy symbol, NULL, 
 NULL, NULL },
 + { Intl national hwy, ntl_hwy, 8202, intl national hwy symbol, NULL, 
 NULL, NULL },
 + { Ramp intersection, ramp_int, 8222, ramp intersection symbol, NULL, 
 NULL, NULL },
 + { Elevation point, elev_pt, 8228, elevation point symbol, NULL, NULL, 
 NULL },
 + { Exit without services, ex_no_srvc, 8229, exit without services 
 symbol, NULL, NULL, NULL },
 + { Geographic place name, Man-made, geo_place_mm, 8230, Geographic 
 place name, man-made, NULL, NULL, NULL },
 + { Geographic place name, water,geo_place_wtr, 8231, Geographic place 
 name, water, NULL, NULL, NULL },
 + { Geographic place name, Land, geo_place_lnd, 8232, Geographic place 
 name, land, NULL, NULL, NULL },
 + { Large Ramp intersection, lrg_ramp_int, 8247, large ramp intersection 
 symbol, NULL, NULL, NULL },
 + { Large exit without services, lrg_ex_no_srvc, 8248, large exit 
 without services smbl, NULL, NULL, NULL },
 + { Gambling/casino, cards, 8250, gambling/casino symbol, NULL, NULL, 
 NULL },
 + { Non-directional beacon, ndb, 16386, non-directional beacon symbol, 
 NULL, NULL, NULL },
 + { VHF Omni-range, vor, 16387, VHF omni-range symbol, NULL, NULL, NULL 
 },
 + { VOR/TACAN, vortac, 16396, VOR/TACAN symbol, NULL, NULL, NULL },
 + { VOR-DME, vordme, 16397, VOR-DME symbol, NULL, NULL, NULL },
 + { First approach fix, faf, 16398, first approach fix, NULL, NULL, 
 NULL },
 

Re: [Viking-devel] OSM License Attribution Change? (ODBL)

2012-09-15 Thread Greg Troxel
If we can make the attribution have a link to OSM's license page, then I
think we will have done reasonably at satisfying the intent.

--
How fast is your code?
3 out of 4 devs don\\\'t know how their code performs in production.
Find out how slow your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219672;13503038;z?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
Viking-devel mailing list
Viking-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/viking-devel
Viking home page: http://viking.sf.net/