Esempio n. 1
0
 def __init__(self, title, button, record=None):
     dbd = DatabaseData()
     if record is None:
         self.rec = filemanip.Record([None] * dbd.schema().nfields())
     else:
         self.rec = record
     self.button_name = button
     self.title = title
Esempio n. 2
0
 def _render_standard(self, loop):
     self.loop = loop
     key = dict(map(lambda x: (x, DatabaseData().keys.shortcut(x)),
                    ["quit", "previous", "sync-database", "add",
                     "search", "next", "next-secondary",
                     "next-tertiary", "menu", "about", "browse"]))
     try:
         recver = DatabaseData().database().records()[0].version()
     except IndexError:
         recver = '?'
     db = DatabaseData().database()
     ver = db.version()
     msgs = [
         "newfol " + __version__,
         _("Keys: %s to quit, %s: previous view, %s: write to disk,") %
         (key['quit'], key['previous'], key['sync-database']),
         _("%s: add record, %s: search, %s: next, %s: secondary next,") %
         (key['add'], key['search'], key['next'], key['next-secondary']),
         _("%s: tertiary next, %s: menu, %s: this screen,") %
         (key['next-tertiary'], key['menu'], key['about']),
         _("%s: browse by table") %
         (key['browse']),
         "",
         " ".join([
             self._display_option("exe_ok",
                                  db.schema().execution_allowed()),
             self._display_option("homedir",
                                  db.location())]),
         " ".join([
             self._display_option("serialization",
                                  ver.serialization(),
                                  ver.serialization_version()),
             self._display_option("rec_ver",
                                  ver.record_version(),
                                  recver,
                                  filemanip.Record([]).version())
         ]),
     ]
     pile = urwid.Pile([
         urwid.AttrMap(urwid.Text(("text", i), align="center"), "bg")
         for i in msgs])
     fill = urwid.Filler(pile)
     return urwid.AttrMap(fill, "bg")
Esempio n. 3
0
 def _render_standard(self, loop):
     dbd = DatabaseData()
     recs = dbd.database().records(lambda rec: rec.table == self.table)
     title = _("List of records by key field for %s") % self.table
     return self._render_records(loop, title, recs,
                                 dbd.schema().key_fields())