Google Summer of Code: Week 8

This week I worked with libchamplain and added it to the GTG! geolocalized-tasks plugin that I’m making. I have a working version as planned. It’s now possible to add a location to a task or view a task (that has a defined location) on the map. It will have some more features in a few days. Some images of libchamplain + geoclue + GTG! in action:

geoplugin_1
geoplugin_2
geoplugin_3

geoplugin_4
geoplugin_5

A quick explanation (each point corresponds to a image):

  1. The button Set/View location is added to the task editor window;
  2. Viewing the task’s location on the map. This task (as you can see on the first image) has three tags, two of them with location and on of the tags that has a location doesn’t have a color set so that gray is the default color;
  3. A task with a tag named “CGE” with the color attribute defined to pink and with the location defined. Because the task has already a location defined, it only shows the location;
  4. A task that doesn’t have tags (so no location). Using geoclue (pygeoclue) the markers position is set to the current location. It’s also possible to move the marker around to the desired position. There is a gtk.entry to define the tag’s name;
  5. This task has tags but no location is defined. Again, using geoclue the markers position is set to the current location. Now it’s possible to create a new tag to associate with the location or to associate the location to a existing tag;

Some new features will be available in the next days along with a screencast.

Learning libchamplain was a challenge, I had some problems and spent allot of time figuring out how to solve them but the libchamplain team was wonderful and help me thru the problems, many thanks to Victor and Pierre-Luc!

So this week I:

  • added libchamplain to geolocalized-tasks plugin in GTG!
    • learned how clutter/libchamplain works
    • tested and experimented with the python bindings (view, layers and markers mostly)
    • coded an example (demo in python) of how to change a marker’s position on the map. The demo is available here: http://paulocabido.com/soc/libchamplain/move_marker.py
  • fixed several bugs in the plugin-engine

All the code (plugin + plugin-engine) is available at my plugin-engine branch: https://code.launchpad.net/~pcabido/gtg/plugin-engine


 
 
 
 
 
 

9 Comments

  1. paulocabido.com » Google Summer of Code: Week 8 | Technology News Update

    [...] Here is the original:  paulocabido.com » Google Summer of Code: Week 8 [...]

  2. Paulo Cabido: Google Summer of Code: Week 8 | Full-Linux.com

    [...] related to your search Paulo Cabido: Google Summer of Code: Week 8 is now available in this link…: News [...]

  3. Today’s icons: Getting things GNOME geolocalization « Kalle Persson

    [...] The geolocalization work that the Summer of Code student Paolo Cabido is doing for Getting Things GNOME is interesting, so I helped out with these two location-related icons: [...]

  4. matteo

    how do you install libchamplain python bindings on jaunty? I coulnd’t find any debs.

    So I added telepathy’s ppa (https://launchpad.net/~telepathy/+archive/ppa) and did:
    apt-get source libchamplain
    sudo apt-get build-dep libchamplain
    cd libchamplain-0.3.3
    ./configure –enable-python

    but it stops with:
    configure: error: Couldn’t find python.

    how is it possible? python is regularly installed here..

  5. pcabido

    do you have all the clutter dependencies (python-clutter, etc) or libgconf2?

  6. matteo

    I downloaded 0.3.5, installed pygtk-2.0-dev, python-clutter and libgconf2-dev and now it compiled fine, but now:

    $ python
    Python 2.6.2 (release26-maint, Apr 19 2009, 01:56:41)
    [GCC 4.3.3] on linux2
    Type “help”, “copyright”, “credits” or “license” for more information.
    >>> import champlain
    Traceback (most recent call last):
    File “”, line 1, in
    ImportError: /usr/lib/python2.6/dist-packages/champlain.so: undefined symbol: champlain_layer_add_marker
    >>>

  7. pcabido

    use configure with –prefix=/usr and be sure to do the make install

  8. matteo

    wow!! it worked! thank you very much!

  9. pcabido

    No problem ;)

Leave a Reply

*