> Hello list, > > the last patch was based on 1.5.1 so it's probably hard to apply it to trunk, > esp. since work on timestamps already had been done in the repo. Please find > attached patch that has been rebased on current trunk, stripped of the custom > date time picker in favor of what's been commited to trunk.. > > The patch adds menu entries and functions to > > - interpolate timestamps of a track between first and last trackpoint > - have some more external program calls for a selected trackpoint > -> remote control josm, either loading and zooming or just zooming > -> browse geohack or osm.org > > It also fixes a bug concerning > static menu_array_sublayer pass_along > > The MA_MISC field of this static was modified more than once, but > g_signal_connect_swapped() will not make a copy of this struct. Essentially > this means, all menu item callbacks would be called with the same MA_MISC > value - i.e. the one assigned last. This bug was fixed by copying the struct > to a dedicated one for each g_signal_connect_swapped taking a > modified-from-default pass_along value. > > > Cheers, > Christian
First thank you very much for taking the time to write this code and share it here. I will include the label alignment at least ;) But hopefully here is some constructive feedback about the other code. I'm debating about whether to include the interpolate times code: I wonder if you could describe the usage of the 'Interpolate Times' a bit more, as I'd also like to include a short description in the Help manual of why one may want to equalize the speeds across a track. Note on a related theme to manipulating timestamps, that I have some code that 'fakes' missing timestamps in tracklog that I have *not* included in any published version of Viking (yet...) I use this for (re)creating tracks - normally for occasions of when I have forgotten to turn on my GPS. So I draw the route I took, edit start + finish trackpoints to set the approximate time I started/finished and then apply the 'Missing Timestamps' function which gives an equal speed across the track. So at least I then get a representative timestamp on all the trackpoints. If anyone wants me to include this code in Viking - now is the chance to say so!! Regarding the issue of the 'static menu_array_sublayer pass_along', note that at present the MA_MISC field has two paths to it being modified - it never happens at same time - either it set once for a waypoint selection or set once for track selection. Obviously if this code is extended in a manner where one wants to put differing values into MA_MISC at the same time (as you have done), then yes it needs to use differing pass_along structures. Secondly - much of the functionality you added is already available via the main menu Tools->Webtools->Bing/Google/OSM etc... This uses the current view (center or bounds) in opening an external service. Further the Webtools methods is extendible via an XML configuration file 'external_tools.xml', rather than the set of options you have provided. E.g. You can add this into your personal ~/.viking/external_tools.xml (or your system's) file: <objects> <object class="VikWebtoolBounds"> <property name="label">JOSM (Zoom only)</property> <property name="url">http://localhost:8111/zoom?left=%s&right=%s&bottom=%s&top=%s"</property> </object> </objects> Thus I won't be adding your Code for this extra external services as it's already there. However it prompted me to do several things: . Fix the changed Wikimedia Tools URL . Add the relatively new OSM (Query) URL in code as a first class supported item This OSM Query can be easily added to existing versions of Viking by putting this into the external_tools.xml config file: <objects> <object class="VikWebtoolCenter"> <property name="label">OSM (Query)</property> <property name="url">http://www.openstreetmap.org/query?lat=%1$s&lon=%2$s#map=%3$d/%1$s/%2$s</property> </object> </objects> . Add the existing Webtools entries into the 'External' menu for a Trackpoint [or Waypoint (which is not covered in your code)]. Since this an obvious place to access it - I assume this is mostly why you wrote the code in your patch Thanks for bringing up these issues. ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Viking-devel mailing list Viking-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/viking-devel Viking home page: http://viking.sf.net/