Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Very Simple Graphical library for Python shell script

Project description

VSGUI - Very Simple Graphic Interface Library for Python
========================================================

Description
-----------

It proides a simple functions to comuunicate with `zenity` which
is a program that will display GTK+ dialogs, and return
(either in the return code, or on standard output) the users input.
This allows you to present information, and ask for information from
the user, from all manner of shell scripts.

Requirement
-----------

* Python >=2.5
* Python UCLTIP module >= 0.6-1 (http://pypi.python.org/pypi/ucltip)
* Zenity

How To install
--------------

for Ubuntu Users

::

$ apt-get install python-ucltip

for Debian Users

::
$ apt-get install zenity
$ apt-get install python-ucltip

VSGUI is not in Debian/Ubuntu archive.
right now please use `setup.py` to install

How To Use
----------

The source code includes some examples which are in example directory, so you can take a qucik look before you
start coding, and thre are two part of this library as below

1. High Level API functions
---------------------------

Before start, you need to import api funcitons:

::
from vsgui.api import *

Dialogs

::
from vsgui.api import *

# information dialog
info(msg)

# warring dialog
warning(msg):

# error dialog
error(msg):

# error dialog and terminate script
die(msg):

# notice dialog (does not work in Unity)
notice(msg):

Input Text

::
# input text
ask_text(text, initial=None)

# input password,
ask_passwd(text)

# check password
#
# - 1234 is the password we except user to type
# - 5 means user can try to input 5 times if the password is wrong
# - password is wrong is just a error message shows in an error dialog
check_passwd('1234', 5, 'password is wrong')

Questions

::

# ask user the anwser is yes or no
ask_yesno(text, y=None, n=None):

# ask user select a or b
ask_ab(text, a, b):

# ask user passowrd, and check it
check_passwd(wanted, count=3, text='', errmsg='wrong password, try again!')

Progress
-------

::
# launch a progress bar and create a update function
update = progress('downloading files')

# update progress bar message ot 'md5sum checking' and progessive number to 90
update(90, 'md5sum checking')

# launch a progress bar
pulsate_progress('starting')

File
----

::

# ask user to select a file path
ask_filepath()

# ask user to select multiple file paths
ask_filepaths()

# ask user to select a directory path
ask_dirpath()

# ask user to select multiple directory paths
ask_dirpaths()

Other
-----

ask_scalevalue('label')

2. Zenity Class
---------------

if api functions is not enough, you can use Zenity class direcly to get
more powerful feature.

::
from vsgui.zenity import Zenity
z = Zenity()

# same as executing 'zenity --file-selection --filename=a.txt'
z.file_selection(filename='a.txt')

Get invlolved
=============

if you are interesting to help, please contact author,
Hychen, his email is <ossug.hychen at gmail.com>.

The VCS of code is avaliabl on http://github.com/hychen/vsgui

Project details


Release history Release notifications

This version
History Node

0.3.3

History Node

0.3.2

History Node

0.3.1

History Node

0.3

History Node

0.2

History Node

0.2rc1

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
vsgui-0.3.3.tar.gz (6.6 kB) Copy SHA256 hash SHA256 Source None Dec 27, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page