view examples/file_dialog.py @ 105:20be00928875

Lower default setuptools version From 0d607b6ed49eab758fd9b272e148f032e65fb2e2 Mon Sep 17 00:00:00 2001 python-setuptools 5.7 is not yet in Debian, so we need to set the default version to 5.5 (the current version in sid) to avoid the newer version to be downloaded from pypi.
author Matteo Cypriani <mcy@lm7.fr>
date Tue, 09 Sep 2014 22:09:51 -0400
parents 287ff3e1edd1
children
line wrap: on
line source

#!/usr/bin/python
# -*- coding: utf-8 -*-

import urwid
from urwid_satext.files_management import FileDialog
import time


#These palette is optional, but it's easier to use with some colors :)

const_PALETTE = [('title', 'black', 'light gray', 'standout,underline'),
                 ('default', 'default', 'default'),
                 ('default_focus', 'default,bold', 'default'),
                 ('directory', 'dark cyan, bold', 'default'),
                 ('directory_focus', 'dark cyan, bold', 'dark green'),
                 ('separator', 'brown', 'default'),
                 ]

def ok_cb(filename):
    """This callback is called when a file is choosen"""

    #We print the filename in the middle of the screen
    new_widget = urwid.Filler(urwid.Text(filename,align='center'))
    loop.widget = new_widget
    loop.draw_screen()
    #5 seconds pause
    time.sleep(5)
    #see you
    raise urwid.ExitMainLoop()

def cancel_cb(control):
    """This callback is called when user cancelled the dialog"""
    raise urwid.ExitMainLoop()

def test_quit(input):
    """We leave if user press 'esc'"""
    if input in ('esc',):
        raise urwid.ExitMainLoop()

fd = FileDialog(ok_cb, cancel_cb)
loop = urwid.MainLoop(fd, const_PALETTE, unhandled_input=test_quit)
loop.run()