domingo, 22 de dezembro de 2013

And the intership started!

First steps inside the project "Geolocalized Tasks in GTG" 

My first steps into the GTG were aiming to recognize, study and understand how the plugin works. Thus, in order to familiarize myself with GTK3, I have done:
- create a dummy plugin, that prints "Hello World!" to the terminal, when enabled
- add the plugin icon to the Task's toolbar
- show a map inside the dummy plugin
- get the location (using a Parin's code sample) and show the map with the location centered in
- implement zoom-in/zoom-out buttons

Since the internship period started

- I'm using github on the project now :-) For me it's easier to work with something that I already have used before. Here is the link of my repo and the branch I've been working on is geolocalized-tasks.
- The next step were to use (and to reuse the previous existing) UI files to handle with the widgets. Fortunately, they already had a considerable number of reusable "code".
-  I'm basing myself on Gnome Music to work with Python and Gtk Instrospection and Gnome Maps to work with geolocation. Like those projects, I split the Ui file in one file per widget.
I took this decision because when I tried to open one widget, the whole set of widgets were shown, for some reason I didn't understand.
- I had difficulties to show the map, it didn't appear inside the dialog (actually, it appeared, but only as single line), then Glade helped me: through it I could set the minimum height and width that the map would take inside the widget, only by setting properties. It also allowed me to modify/develop interfaces, just by clicking buttons, modifying the widgets properties, without touch the code. Highly recommend to everyone!
- I have discussed, with Parin, some changes about the dialog to assign Task/Tag locations. That was good, because it gave me much to think about. However the changes are still not done. it's simpler than the previous one. It took some time, I had to draw and make use cases, until understand what we need (and let's hope I have it clear now).
- I also have studied ChamplainMarkerLayer to understand how to add tags on the map. This week I've been working on integrate to give to the user the possibility to add/delete a location to/from the map.
- I was having some problems with GTG on my system (I was using Fedora 19). One of the problems was zooming-in with a single mouse click (the system was understanding 2 clicks for a single one). But the worst was related with the geocode-glib, the package is not build to Fedora 19, then, I decided to update my system ... what took me a long time (fedup doesn't work as expected) :-(