Recently, I have been helping out many, many people in #ubuntu-app-devel on Freenode with getting a their application indicator to use a custom icon. I recently went through a lot of hassle trying to figure this out, so I thought I would post about it.
So normally to initialize your application indicator, you would have something like this:
ind = appindicator.Indicator("MyApp", "my-app-icon", appindicator.CATEGORY_APPLICATION_STATUS)
But that will only allow you to use icons in the current icon theme, not your own, so to fix this you just need to specify the path like so:
ind = appindicator.Indicator("MyApp", "/usr/share/myapp/media/my-app-icon.png", appindicator.CATEGORY_APPLICATION_STATUS)
The above code assumes that your app is a Quickly application (/usr/share/myapp/ is where Quickly applications install themselves to). If your application is not a Quickly application then you just need to point the path where your icon is when the application is installed.
About a week ago I released a new version of Pytask, this was a great achievement for me since I have been working on the 0.3 branch for nearly 9 months. This is just a little follow-up to tell you what’s new and what is in the works for Pytask 0.4.
Some of the new features in 0.3 are:
The use of desktop-couch
Its mostly a back-end non-user-visible change, but basically it allows the tasks you create and manage with Pytask to be synced over multiple computers. The good news is that this is all done by Pytask so you dont have to worry about a thing.
Quickly Widgets and Quickly
This is also a fairly back-end change, although some of you may notice that Pytask now has a really powerful filter and search widget above the task list. You can apply a whole bunch of different filters to just show the tasks that you think are relevant, it’s also possible to apply multiple filters at once.
Quickly Widgets is a great little project started and maintained by the awesome Rick Spencer and is great if you just want your app to work with minimal fuss and very little code.
One of the things I really wanted to do was to get rid of the Add/Edit Task dialog, I did this using a great little feature of CouchGrid (which you can also use if you use gtk.TreeViews) which makes the rows in the grid editable so there is not need for any dialog boxes. CouchGrid is part of Quickly Widgets and is what Pytask uses to display your tasks.
I have also added (with the help of Rick Spencer) two new column types to Pytask, one is a little calendar widget that allows you to select any date easily instead of typing it in manually. The other is a priority rating, which allows you to set a priority number for each task, however this setup is not ideal and one of the features i want in 0.4 is to have a drop-down list of values that you can choose from.
As an added bonus from all this hard work, these two new column types are now in the trunk code for Quickly Widgets and will soon be available for you to use from the official repositories.
Also keep an eye out during the next week or two, i will be creating some getting started documentation for Pytask and chucking it up here on my blog.
Be sure to go grab Pytask from my PPA and have fun using it!
Pytask, is a project i have been working on for the past 9 months or so, it is a simple todo-list management app and originally it started off as an experiment for when i was first venturing into the world of python. Now though, my days are spent either writing and helping out with the Ubuntu Manual Project or getting serious with Pytask.
In any case, my wish for this year is to completely revamp Pytask and to extend its feature set to something i never imagined would ever happen with such a small hobby project. I am currently porting it over to the Quickly app, which i see as a great and easy way to manage any small projects, especially ones that scratch an itch. Another little app i frequently use is called Acire, which is a great app if your fairly new to pygtk programming and just want to get started easily and without having to first get confused by all those really old tutorials sprinkled all over the internet.
Stay tuned for more news and progress on Pytask!