Python
From Openmoko
(→See also) |
(add a simple example gtk python script) |
||
Line 25: | Line 25: | ||
* [[Pexpect]] a pure Python module for spawning child applications | * [[Pexpect]] a pure Python module for spawning child applications | ||
[[Category:Developer]] | [[Category:Developer]] | ||
+ | |||
+ | == Simple Example Scripts == | ||
+ | === Minimal GTK gui === | ||
+ | import gtk | ||
+ | |||
+ | #create a (nonvisible) window | ||
+ | w = gtk.Window() | ||
+ | |||
+ | #create a button (not yet on any window) | ||
+ | b = gtk.Button('Hello') | ||
+ | |||
+ | #put the button on the window | ||
+ | w.add(b) | ||
+ | |||
+ | #create a silly callback function | ||
+ | def hello(target): | ||
+ | print 'Hello world' | ||
+ | exit() | ||
+ | |||
+ | #make the button call the callback when pressed | ||
+ | b.connect('clicked', hello) | ||
+ | |||
+ | #make the window display | ||
+ | w.show_all() | ||
+ | |||
+ | #start processing screen events | ||
+ | gtk.main() |
Revision as of 06:57, 26 January 2008
Python is a programming language which is applicable to scripting phone functionalities and graphical user interfaces. Currently, at least SettingsGUI, SMSTool and MokoMenu use it. There is also Python ncurses for character user interfaces. Manually using Bluetooth is partially based on using Python.
Contents |
Environment
Source packages for Python contained in OpenEmbedded include:
python python-pygtk python-pycairo python-pygobject python-dbus
Binary packages for Python are not officially built yet but at least ScaredyCat's repositories provide them:
python-core python-misc python-lang python-subprocess python-threading etc.
Graphical applications need the following binary packages too:
python-pygtk python-pycairo python-pygobject
NOTE: These packages take up a considerable amout of space (several megabytes). Make sure that you have enough free space or install the packages to the media card as explained in package management. |
Missing
Parts of the OpenMoko platform are not available in python yet, including gconf and evolution data server. python-openmoko is in the works for gsmd access etc. A recipe for PyWebKitGtk is at OpenEmbedded bug #3028.
See also
- Application Development Crash Course#Adding Python scripts as applications
- Wishlist:BuiltInScriptingLanguage
- Pexpect a pure Python module for spawning child applications
Simple Example Scripts
Minimal GTK gui
import gtk #create a (nonvisible) window w = gtk.Window() #create a button (not yet on any window) b = gtk.Button('Hello') #put the button on the window w.add(b) #create a silly callback function def hello(target): print 'Hello world' exit() #make the button call the callback when pressed b.connect('clicked', hello) #make the window display w.show_all() #start processing screen events gtk.main()