X-Git-Url: https://git.phdru.name/?p=xsetbg.git;a=blobdiff_plain;f=xsetbg_db.py;h=54d174b4076862fb865d3df0fa88ed3b17057f46;hp=eedb25ffa1c4ac533dad4f2100222cffc23a4c9f;hb=990bd4dfbb33d7f14e2a44371a9ae76d8ccb125f;hpb=688d1400d0e05a4ff2f10db88e89f149f39fee4e diff --git a/xsetbg_db.py b/xsetbg_db.py index eedb25f..54d174b 100755 --- a/xsetbg_db.py +++ b/xsetbg_db.py @@ -11,7 +11,8 @@ __all__ = ['xsetbg_db_path', 'xsetbg_db'] import os from sqlobject import SQLObject, connectionForURI, sqlhub, \ - StringCol, UnicodeCol, IntCol, BoolCol, DatabaseIndex, dberrors + StringCol, UnicodeCol, IntCol, BoolCol, DatabaseIndex, dberrors, \ + SQLObjectNotFound from xsetbg_conf import xsetbg_conf @@ -30,6 +31,25 @@ class XSetBg(SQLObject): last_shown_idx = DatabaseIndex('last_shown') flag_idx = DatabaseIndex('flag') + def clearTable(self): + super.clearTable(XSetBg, self) + try: + seq = SqliteSequence.byName(XSetBg.sqlmeta.table) + except SQLObjectNotFound: + SqliteSequence(name=XSetBg.sqlmeta.table, seq=0) + else: + seq.seq = 0 # Reset autoincrement counter + + +def recreate_db(): + global xsetbg_db + if xsetbg_db: + xsetbg_db.clearTable() + else: + xsetbg_db = XSetBg + xsetbg_db.createTable() + return xsetbg_db + db_dirs = [] try: