diff --git a/actions.py b/actions.py index 1e44d57..bb77778 100644 --- a/actions.py +++ b/actions.py @@ -830,8 +830,9 @@ class Actions(object): current_recur_hash = recur_repo.head.object.hexsha current_conjur_hash = conjur_repo.head.object.hexsha current_ofxVideoArtTools_hash = ofxVideoArtTools_repo.head.object.hexsha - os.remove('/home/pi/r_e_c_u_r/json_objects/settings.json') - os.remove(self.data.PATH_TO_DATA_OBJECTS + self.data.SETTINGS_JSON ) + + self.data.try_remove_file(self.data.PATH_TO_DATA_OBJECTS + self.data.SETTINGS_JSON ) + self.data.try_remove_file(self.data.PATH_TO_DEFAULT_CONJUR_DATA) try: recur_repo.remotes.origin.pull() conjur_repo.remotes.origin.pull() @@ -868,5 +869,4 @@ class Actions(object): self.message_handler.clear_all_messages() - - + diff --git a/data_centre/data.py b/data_centre/data.py index 7516d26..08ffddf 100644 --- a/data_centre/data.py +++ b/data_centre/data.py @@ -58,7 +58,7 @@ class Data(object): ### persisted data (use default if doesnt exits): if not os.path.isfile(self.PATH_TO_CONJUR_DATA): - os.remove(self.PATH_TO_DATA_OBJECTS + self.SETTINGS_JSON ) # keep the, in sync + self.try_remove_file(self.PATH_TO_DATA_OBJECTS + self.SETTINGS_JSON ) # keep the, in sync copyfile(self.PATH_TO_DEFAULT_CONJUR_DATA, self.PATH_TO_CONJUR_DATA) self.bank_data = [self.create_empty_bank()] @@ -407,3 +407,7 @@ class Data(object): else: return [] + @staticmethod + def try_remove_file(path): + if os.path.exists(path): + os.remove(path) diff --git a/display_centre/menu.py b/display_centre/menu.py index 8838a4b..1381b3c 100644 --- a/display_centre/menu.py +++ b/display_centre/menu.py @@ -79,7 +79,7 @@ class BrowserMenu(Menu): root, dirs, files = next(os.walk(current_path)) indent = ' ' * 4 * (current_level) - for folder in dirs: + for folder in sorted(dirs): is_open, char = self._check_folder_state(folder) self.menu_list.append(dict(name='{}{}{}'.format(indent, folder, char), slot='x')) if (is_open): @@ -87,6 +87,7 @@ class BrowserMenu(Menu): next_level = current_level + 1 self._add_folder_to_browser_list(next_path, next_level) + files.sort() for f in files: split_name = os.path.splitext(f) if (split_name[1].lower() in ['.mp4', '.mkv', '.avi', '.mov']): @@ -202,7 +203,7 @@ class ShadersMenu(Menu): root, dirs, files = next(os.walk(current_path)) indent = ' ' * 4 * (current_level) - for folder in dirs: + for folder in sorted(dirs): is_open, char = self._check_folder_state(folder) self.menu_list.append(dict(name='{}{}{}'.format(indent, folder, char), is_shader=False)) if (is_open): @@ -210,6 +211,7 @@ class ShadersMenu(Menu): next_level = current_level + 1 self._add_folder_to_shaders_list(next_path, next_level) + files.sort() for f in files: split_name = os.path.splitext(f) if (split_name[1].lower() in ['.frag', '.shader', '.glsl', '.glslf', '.fsh']): diff --git a/enclosure/README.md b/enclosure/README.md new file mode 100644 index 0000000..4ed7466 --- /dev/null +++ b/enclosure/README.md @@ -0,0 +1 @@ +gonna explain a little about the enclosure options here : diff --git a/video_centre/shaders.py b/video_centre/shaders.py index 0d93ae6..317cac1 100644 --- a/video_centre/shaders.py +++ b/video_centre/shaders.py @@ -155,15 +155,15 @@ class Shaders(object): if layer_offset is None: start_layer = self.data.shader_layer layer_offset = 0 - layer = start_layer + layer_offset % 4 + layer = (start_layer + layer_offset) % 3 if self.data.settings['shader']['X3_AS_SPEED']['value'] == 'enabled' and param == 3: - self.set_speed_to_amount(amount, layout_offset=layout_offset) + self.set_speed_to_amount(amount, layer_offset=layer_offset) else: self.osc_client.send_message("/shader/{}/param".format(str(layer)), [param, amount] ) self.selected_param_list[layer][param] = amount def set_speed_to_amount(self, amount, layer_offset=0): - layer = self.data.shader_layer + layer_offset % 4 + layer = (self.data.shader_layer + layer_offset) % 3 self.osc_client.send_message("/shader/{}/speed".format(str(layer)), amount ) self.selected_speed_list[layer] = amount