From 81af05c9f64684c4330cc34afde64b8def9f971f Mon Sep 17 00:00:00 2001 From: itdominator <1itdominator@gmail.com> Date: Fri, 25 Feb 2022 18:30:17 -0600 Subject: [PATCH] import refactoring --- src/Example.py | 4 +- src/example.py | 27 ++++++++++ src/shellfm/windows/controller.py | 38 ++++++------- .../windows/{views => tabs}/__init__.py | 0 .../windows/{views => tabs}/icons/__init__.py | 0 .../windows/{views => tabs}/icons/icon.py | 0 .../{views => tabs}/icons/mixins/__init__.py | 0 .../icons/mixins/desktopiconmixin.py | 0 .../icons/mixins/videoiconmixin.py | 0 .../icons/mixins/xdg/BaseDirectory.py | 0 .../icons/mixins/xdg/Config.py | 0 .../icons/mixins/xdg/DesktopEntry.py | 0 .../icons/mixins/xdg/Exceptions.py | 0 .../icons/mixins/xdg/IconTheme.py | 0 .../icons/mixins/xdg/IniFile.py | 0 .../icons/mixins/xdg/Locale.py | 0 .../{views => tabs}/icons/mixins/xdg/Menu.py | 0 .../icons/mixins/xdg/MenuEditor.py | 0 .../{views => tabs}/icons/mixins/xdg/Mime.py | 0 .../icons/mixins/xdg/RecentFiles.py | 0 .../icons/mixins/xdg/__init__.py | 0 .../{views => tabs}/icons/mixins/xdg/util.py | 0 src/shellfm/windows/{views => tabs}/path.py | 0 .../windows/{views/view.py => tabs/tab.py} | 2 +- .../windows/{views => tabs}/utils/__init__.py | 0 .../{views => tabs}/utils/filehandler.py | 0 .../windows/{views => tabs}/utils/launcher.py | 0 .../windows/{views => tabs}/utils/settings.py | 0 src/shellfm/windows/window.py | 54 +++++++++---------- 29 files changed, 75 insertions(+), 50 deletions(-) create mode 100644 src/example.py rename src/shellfm/windows/{views => tabs}/__init__.py (100%) rename src/shellfm/windows/{views => tabs}/icons/__init__.py (100%) rename src/shellfm/windows/{views => tabs}/icons/icon.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/__init__.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/desktopiconmixin.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/videoiconmixin.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/BaseDirectory.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/Config.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/DesktopEntry.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/Exceptions.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/IconTheme.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/IniFile.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/Locale.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/Menu.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/MenuEditor.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/Mime.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/RecentFiles.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/__init__.py (100%) rename src/shellfm/windows/{views => tabs}/icons/mixins/xdg/util.py (100%) rename src/shellfm/windows/{views => tabs}/path.py (100%) rename src/shellfm/windows/{views/view.py => tabs/tab.py} (99%) rename src/shellfm/windows/{views => tabs}/utils/__init__.py (100%) rename src/shellfm/windows/{views => tabs}/utils/filehandler.py (100%) rename src/shellfm/windows/{views => tabs}/utils/launcher.py (100%) rename src/shellfm/windows/{views => tabs}/utils/settings.py (100%) diff --git a/src/Example.py b/src/Example.py index 34b7346..f0da4cc 100644 --- a/src/Example.py +++ b/src/Example.py @@ -8,12 +8,12 @@ def main(): # Create "File Window" 1 window = window_controller.create_window() window.set_nickname("Win1") - window_controller.add_view_for_window_by_nickname(window.get_nickname()) + window_controller.add_tab_for_window_by_nickname(window.get_nickname()) # Create "File Window" 2 window2 = window_controller.create_window() window2.set_nickname("Win2") - window_controller.add_view_for_window_by_nickname(window2.get_nickname()) + window_controller.add_tab_for_window_by_nickname(window2.get_nickname()) window_controller.list_windows() diff --git a/src/example.py b/src/example.py new file mode 100644 index 0000000..f0da4cc --- /dev/null +++ b/src/example.py @@ -0,0 +1,27 @@ +from shellfm.windows.controller import WindowController + + +def main(): + print("\n\n-------------------------------------------\n\n") + window_controller = WindowController() + + # Create "File Window" 1 + window = window_controller.create_window() + window.set_nickname("Win1") + window_controller.add_tab_for_window_by_nickname(window.get_nickname()) + + # Create "File Window" 2 + window2 = window_controller.create_window() + window2.set_nickname("Win2") + window_controller.add_tab_for_window_by_nickname(window2.get_nickname()) + + window_controller.list_windows() + + + print("\n\n-------------------------------------------\n\n") + window2.set_is_hidden(True) + window_controller.list_windows() + + +if __name__ == '__main__': + main() diff --git a/src/shellfm/windows/controller.py b/src/shellfm/windows/controller.py index 67457b1..60c3379 100644 --- a/src/shellfm/windows/controller.py +++ b/src/shellfm/windows/controller.py @@ -40,20 +40,20 @@ class WindowController: return window - def add_view_for_window(self, win_id): + def add_tab_for_window(self, win_id): for window in self._windows: if window.get_id() == win_id: - return window.create_view() + return window.create_tab() - def add_view_for_window_by_name(self, name): + def add_tab_for_window_by_name(self, name): for window in self._windows: if window.get_name() == name: - return window.create_view() + return window.create_tab() - def add_view_for_window_by_nickname(self, nickname): + def add_tab_for_window_by_nickname(self, nickname): for window in self._windows: if window.get_nickname() == nickname: - return window.create_view() + return window.create_tab() def pop_window(self): self._windows.pop() @@ -116,33 +116,33 @@ class WindowController: print(f"Name: {window.get_name()}") print(f"Nickname: {window.get_nickname()}") print(f"Is Hidden: {window.is_hidden()}") - print(f"View Count: {window.get_views_count()}") + print(f"Tab Count: {window.get_tabs_count()}") print("\n-------------------------\n") - def list_files_from_views_of_window(self, win_id): + def list_files_from_tabs_of_window(self, win_id): for window in self._windows: if window.get_id() == win_id: - window.list_files_from_views() + window.list_files_from_tabs() break - def get_views_count(self, win_id): + def get_tabs_count(self, win_id): for window in self._windows: if window.get_id() == win_id: - return window.get_views_count() + return window.get_tabs_count() - def get_views_from_window(self, win_id): + def get_tabs_from_window(self, win_id): for window in self._windows: if window.get_id() == win_id: - return window.get_all_views() + return window.get_all_tabs() - def unload_views_and_windows(self): + def unload_tabs_and_windows(self): for window in self._windows: - window.get_all_views().clear() + window.get_all_tabs().clear() self._windows.clear() @@ -153,9 +153,9 @@ class WindowController: if len(self._windows) > 0: windows = [] for window in self._windows: - views = [] - for view in window.get_all_views(): - views.append(view.get_current_directory()) + tabs = [] + for tab in window.get_all_tabs(): + tabs.append(tab.get_current_directory()) windows.append( [ @@ -165,7 +165,7 @@ class WindowController: "Name": window.get_name(), "Nickname": window.get_nickname(), "isHidden": f"{window.is_hidden()}", - 'views': views + 'tabs': tabs } } ] diff --git a/src/shellfm/windows/views/__init__.py b/src/shellfm/windows/tabs/__init__.py similarity index 100% rename from src/shellfm/windows/views/__init__.py rename to src/shellfm/windows/tabs/__init__.py diff --git a/src/shellfm/windows/views/icons/__init__.py b/src/shellfm/windows/tabs/icons/__init__.py similarity index 100% rename from src/shellfm/windows/views/icons/__init__.py rename to src/shellfm/windows/tabs/icons/__init__.py diff --git a/src/shellfm/windows/views/icons/icon.py b/src/shellfm/windows/tabs/icons/icon.py similarity index 100% rename from src/shellfm/windows/views/icons/icon.py rename to src/shellfm/windows/tabs/icons/icon.py diff --git a/src/shellfm/windows/views/icons/mixins/__init__.py b/src/shellfm/windows/tabs/icons/mixins/__init__.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/__init__.py rename to src/shellfm/windows/tabs/icons/mixins/__init__.py diff --git a/src/shellfm/windows/views/icons/mixins/desktopiconmixin.py b/src/shellfm/windows/tabs/icons/mixins/desktopiconmixin.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/desktopiconmixin.py rename to src/shellfm/windows/tabs/icons/mixins/desktopiconmixin.py diff --git a/src/shellfm/windows/views/icons/mixins/videoiconmixin.py b/src/shellfm/windows/tabs/icons/mixins/videoiconmixin.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/videoiconmixin.py rename to src/shellfm/windows/tabs/icons/mixins/videoiconmixin.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/BaseDirectory.py b/src/shellfm/windows/tabs/icons/mixins/xdg/BaseDirectory.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/BaseDirectory.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/BaseDirectory.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/Config.py b/src/shellfm/windows/tabs/icons/mixins/xdg/Config.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/Config.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/Config.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/DesktopEntry.py b/src/shellfm/windows/tabs/icons/mixins/xdg/DesktopEntry.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/DesktopEntry.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/DesktopEntry.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/Exceptions.py b/src/shellfm/windows/tabs/icons/mixins/xdg/Exceptions.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/Exceptions.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/Exceptions.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/IconTheme.py b/src/shellfm/windows/tabs/icons/mixins/xdg/IconTheme.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/IconTheme.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/IconTheme.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/IniFile.py b/src/shellfm/windows/tabs/icons/mixins/xdg/IniFile.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/IniFile.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/IniFile.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/Locale.py b/src/shellfm/windows/tabs/icons/mixins/xdg/Locale.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/Locale.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/Locale.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/Menu.py b/src/shellfm/windows/tabs/icons/mixins/xdg/Menu.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/Menu.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/Menu.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/MenuEditor.py b/src/shellfm/windows/tabs/icons/mixins/xdg/MenuEditor.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/MenuEditor.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/MenuEditor.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/Mime.py b/src/shellfm/windows/tabs/icons/mixins/xdg/Mime.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/Mime.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/Mime.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/RecentFiles.py b/src/shellfm/windows/tabs/icons/mixins/xdg/RecentFiles.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/RecentFiles.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/RecentFiles.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/__init__.py b/src/shellfm/windows/tabs/icons/mixins/xdg/__init__.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/__init__.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/__init__.py diff --git a/src/shellfm/windows/views/icons/mixins/xdg/util.py b/src/shellfm/windows/tabs/icons/mixins/xdg/util.py similarity index 100% rename from src/shellfm/windows/views/icons/mixins/xdg/util.py rename to src/shellfm/windows/tabs/icons/mixins/xdg/util.py diff --git a/src/shellfm/windows/views/path.py b/src/shellfm/windows/tabs/path.py similarity index 100% rename from src/shellfm/windows/views/path.py rename to src/shellfm/windows/tabs/path.py diff --git a/src/shellfm/windows/views/view.py b/src/shellfm/windows/tabs/tab.py similarity index 99% rename from src/shellfm/windows/views/view.py rename to src/shellfm/windows/tabs/tab.py index 5676659..70acaed 100644 --- a/src/shellfm/windows/views/view.py +++ b/src/shellfm/windows/tabs/tab.py @@ -18,7 +18,7 @@ from .icons.icon import Icon from .path import Path -class View(Settings, FileHandler, Launcher, Icon, Path): +class Tab(Settings, FileHandler, Launcher, Icon, Path): def __init__(self): self.logger = None self._id_length = 10 diff --git a/src/shellfm/windows/views/utils/__init__.py b/src/shellfm/windows/tabs/utils/__init__.py similarity index 100% rename from src/shellfm/windows/views/utils/__init__.py rename to src/shellfm/windows/tabs/utils/__init__.py diff --git a/src/shellfm/windows/views/utils/filehandler.py b/src/shellfm/windows/tabs/utils/filehandler.py similarity index 100% rename from src/shellfm/windows/views/utils/filehandler.py rename to src/shellfm/windows/tabs/utils/filehandler.py diff --git a/src/shellfm/windows/views/utils/launcher.py b/src/shellfm/windows/tabs/utils/launcher.py similarity index 100% rename from src/shellfm/windows/views/utils/launcher.py rename to src/shellfm/windows/tabs/utils/launcher.py diff --git a/src/shellfm/windows/views/utils/settings.py b/src/shellfm/windows/tabs/utils/settings.py similarity index 100% rename from src/shellfm/windows/views/utils/settings.py rename to src/shellfm/windows/tabs/utils/settings.py diff --git a/src/shellfm/windows/window.py b/src/shellfm/windows/window.py index 58d8414..9a09233 100644 --- a/src/shellfm/windows/window.py +++ b/src/shellfm/windows/window.py @@ -6,7 +6,7 @@ from random import randint # Application imports -from .views.view import View +from .tabs.tab import Tab class Window: @@ -16,45 +16,40 @@ class Window: self._name = "" self._nickname = "" self._isHidden = False - self._views = [] + self._tabs = [] self._generate_id() self._set_name() - def create_view(self): - view = View() - self._views.append(view) - return view + def create_tab(self): + tab = Tab() + self._tabs.append(tab) + return tab - def pop_view(self): - self._views.pop() + def pop_tab(self): + self._tabs.pop() - def delete_view_by_id(self, vid): - for view in self._views: - if view.get_id() == vid: - self._views.remove(view) + def delete_tab_by_id(self, vid): + for tab in self._tabs: + if tab.get_id() == vid: + self._tabs.remove(tab) break - def get_view_by_id(self, vid): - for view in self._views: - if view.get_id() == vid: - return view + def get_tab_by_id(self, vid): + for tab in self._tabs: + if tab.get_id() == vid: + return tab - def get_view_by_index(self, index): - return self._views[index] + def get_tab_by_index(self, index): + return self._tabs[index] - def get_views_count(self): - return len(self._views) - - def get_all_views(self): - return self._views - - def list_files_from_views(self): - for view in self._views: - print(view.get_files()) + def get_tabs_count(self): + return len(self._tabs) + def get_all_tabs(self): + return self._tabs def get_id(self): return self._id @@ -68,7 +63,9 @@ class Window: def is_hidden(self): return self._isHidden - + def list_files_from_tabs(self): + for tab in self._tabs: + print(tab.get_files()) def set_nickname(self, nickname): @@ -80,6 +77,7 @@ class Window: def _set_name(self): self._name = "window_" + self.get_id() + def _random_with_N_digits(self, n): range_start = 10**(n-1) range_end = (10**n)-1