Exemple #1
0
    def show(self):
        """
        display the dialog and run the event loop
        """
        self._form = stfl.create(self.stfl_layout)
        self._update_view(self._form, self._ctrl)
        self._form.set_focus('dir')

        while True:
            e = self._form.run(0)
            if e == 'focus_dir':
                self._form.set_focus('dir')
            elif e == 'focus_pdfcmd':
                self._form.set_focus('pdfcmd')
            elif e == 'focus_chmcmd':
                self._form.set_focus('chmcmd')
            elif e == 'focus_showcmd':
                self._form.set_focus('showcmd')
            elif e == '^R':
                if self._ctrl.get_setting('dir') != self._form.get('dirtxt'):
                    self._form.set('dirtxt', self._ctrl.get_setting('dir'))
                self._reload_library(self._ctrl)
            elif e == '^U':
                return
            elif e == '^X':
                oldlibdir = self._ctrl.get_setting('dir')
                self._save(self._form, self._ctrl)
                if oldlibdir != self._ctrl.get_setting('dir'):
                    self._reload_library(self._ctrl)
                return
Exemple #2
0
    def __init__(self, controller):
        """
        construct and display a reload library dialog

        controller - an object which provides methods for reloading the library
        """
        self._ctrl = controller
        self._form = stfl.create(self.stfl_layout)
        self._form.run(1)
Exemple #3
0
    def __init__(self, controller):
        """
        create a ConsoleInterface object

        controller -- module providing an interface to the book database

        """
        self._ctrl = controller
        self._form = stfl.create(self.stfl_layout)
        self._fill_list(self._ctrl.get_all())
Exemple #4
0
#!/usr/bin/env python

import sys
import stfl

if len(sys.argv) <> 2:
    print "Usage: %s stfl-file"%sys.argv[0]
    sys.exit(1)

f=stfl.create("<"+sys.argv[1]+">")

while True:
    try:
        e=f.run(0)
    except KeyboardInterrupt:
        e='^C' 
    if e=='^C':
        break;
    elif e=='ESC':
        break;
Exemple #5
0
        w = csv.writer(open(self.file, 'w'), delimiter=self.delimiter)
        w.writerows(self.data)


if __name__ == "__main__":
    if len(sys.argv) not in [2, 3]:
        print "Usage: %s file.csv [delimiter]" % sys.argv[0]
        sys.exit(1)

    c = CSV(sys.argv[1], len(sys.argv) == 3 and sys.argv[2] or ",")

    table = c.stfltable()

    form = "{vbox %s {label} {hbox .expand:0 @style_normal:attr=reverse {label text[statusbar]:}{label text[help]: .tie:r}}" % table

    f = stfl.create(form)

    def setstatus(text):
        f.set('statusbar', text)

    def sethelp(text):
        f.set('help', text)

    def currentcell():
        return c.namecell(f.get_focus())

    def setcell(row, col):
        f.set_focus(c.cellname(row, col))

    setstatus("editing %s" % c.file)
    sethelp("^W = write, ^C = exit")
Exemple #6
0
  list[list]
    .expand:h
    .border:lrtb
    pos[listpos]:0
    pos_name[listposname]:li0
    listitem[li0] text[li0text]:"ListItem 0"
    listitem[li1] text[li1text]:"ListItem 1"
    listitem[li2] text[li2text]:"ListItem 2"
  tablebr
  label[label]
    .expand:h
    .border:lrtb
    text[labeltext]:
'''

stfl_obj = stfl.create(layout)

while True:
  event = stfl_obj.run(0)
  focus = stfl_obj.get_focus
  pos = stfl_obj.get('listpos')
  pos_name = stfl_obj.get('listposname')
  text = stfl_obj.get(pos_name + 'text')

  stfl_obj.set('labeltext', "List is at position %s, name %s, text '%s'" % (pos, pos_name, text))

  if not event: next

  if event == '^L': stfl.redraw()
  if event == 'ESC': break