View Single Post
Old 01-19-2012, 06:05 AM   #9
Mackx
Guru
Mackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to beholdMackx is a splendid one to behold
 
Posts: 998
Karma: 19985
Join Date: Dec 2008
Location: Netherlands
Device: iRex DR1000S
I wanted to get some more hands on experience with Python so I decided to continue where Iņigo and Mr.X stopped. What was missing is a way to control the local-libraries so that the application is added to the taskbar, menus can be added and toolbar icons can be added.
Iņigo did add this functionality in vala (which he uses to write his current additions to the DR) so I used that as a basis for Python. Since I also wanted to get some experience with the ctypes-module, I used that module to access the DR-libraries need for taskbar, menus, etc.

I uses a simple application as a 'vehicle' to use the new functionality. The application currently allows to show csv-files (comma separated values) in a spreadsheet-like UI. I intend to add more functionality when I find time.
I also modified the mines game that was part of the original port to use the new functionality (it now has a menu and appears in the taskbar).

This is only a first experiment, I did not solve all refresh issues and certainly did not test all functionality that is available in Python and its modules. I also do not understand the garbage-collection of Python that well, so there might be some memory leaks.

I created 3 new modules: eripc.py, erapp.py and erutils.py, they are located in _python26\lib\python2.6\site-packages. The applications are in _python26\apps. Note that to get the apps shown in the taskbar they had to be named 'python' else the firmware would not accept them. I added some desktop-files in Programs, so they can be started with the stylus.

Like vala this creates an easy platform for creating applications for the DR. I hope this will inspire more people to create DR applications.

What should be added/changed so that more people can use python (or vala)?
What kind of new application are people waiting/hoping for on the DR?
Attached Files
File Type: zip python26-dr-v2.tar.zip (11.86 MB, 73 views)
Mackx is offline   Reply With Quote