diff options
Diffstat (limited to 'atoidejouer/tools/storage.py')
-rw-r--r-- | atoidejouer/tools/storage.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/atoidejouer/tools/storage.py b/atoidejouer/tools/storage.py index f18e892..0e471cd 100644 --- a/atoidejouer/tools/storage.py +++ b/atoidejouer/tools/storage.py @@ -67,6 +67,45 @@ def get_sequence_first_graphic_name(type_, sequence_name): return None if len(_names) == 0 else _names[0].strip() +def sequence_save(toolbar, remove=False): + # get sequence name + _name = toolbar._sequence_entry.get_text() + # get screen + _screen = toolbar.activity.get_current_screen() + # get nb of graphics + _nb_of_items = _screen.sequence_preview.number_of_items() + # type shortcut 'graphic' or 'sound' + _type = _screen.notebook._type + # get sequence path + _seq_path = get_sequence_path(_type, _name) + # little check + if _name.strip() == '': + return + elif _nb_of_items == 0\ + and remove is True: + # remove from files + os.remove(_seq_path) + # .. + _keys = toolbar.activity.graphic_keys\ + if toolbar.name == 'graphics_add'\ + else toolbar.activity.sound_keys + # remove from keys + _keys.remove_sequence(_name) + else: + # open file + _file = open(_seq_path, 'wb') + # update + for _filename in _screen.sequence_preview.items: + _filename = _filename.strip() + if _filename == '': + continue + else: + _file.write('%s\n' % _filename) + _file.close() + # update notebook + _screen.notebook._get_store_sequence() + + def get_sound_path(filename, dir_='sounds'): # return path return os.path.join(activity.get_activity_root(), 'data', dir_, |