class RightPanel_Container(FScrollArea): def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.right_panel = RightPanel(self._app) self._layout = FVBoxLayout(self) self.setWidget(self.right_panel) self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setWidgetResizable(True) self.setObjectName('c_left_panel') self.set_theme_style() self.setup_ui() def set_theme_style(self): theme = self._app.theme_manager.current_theme style_str = ''' #{0} {{ background: transparent; border: 0px; }} '''.format(self.objectName(), theme.color5.name()) self.setStyleSheet(style_str) def setup_ui(self): self._layout.setContentsMargins(0, 0, 0, 0) self._layout.setSpacing(0)
def __init__(self, app): self._layout = FVBoxLayout(app) self.top_panel = TopPanel(app, app) self.central_panel = CentralPanel(app, app) self.status_panel = StatusPanel(app, app) self.status_panel.hide() self.current_playlist_table = CurrentPlaylistTable(app) self.setup()
def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.header = LP_GroupHeader(self._app, '歌单') self._layout = FVBoxLayout(self) self.setObjectName('lp_playlists_panel') self.set_theme_style() self.setup_ui()
def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.library_panel = LP_LibraryPanel(self._app) self.playlists_panel = LP_PlaylistsPanel(self._app) self._layout = FVBoxLayout(self) self.setLayout(self._layout) self.setObjectName('c_left_panel') self.set_theme_style() self.setup_ui()
def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.header = LP_GroupHeader(self._app, '我的音乐') self.current_playlist_item = LP_GroupItem(self._app, '当前播放列表') self.current_playlist_item.set_img_text('❂') self._layout = FVBoxLayout(self) self.setObjectName('lp_library_panel') self.set_theme_style() self.setup_ui()
class LP_PlaylistsPanel(FFrame): def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.header = LP_GroupHeader(self._app, '歌单') self._layout = FVBoxLayout(self) self.setObjectName('lp_playlists_panel') self.set_theme_style() self.setup_ui() def set_theme_style(self): theme = self._app.theme_manager.current_theme style_str = ''' #{0} {{ background: transparent; }} '''.format(self.objectName(), theme.color5.name()) self.setStyleSheet(style_str) def add_item(self, item): self._layout.addWidget(item) def setup_ui(self): self._layout.setContentsMargins(0, 0, 0, 0) self._layout.setSpacing(0) self._layout.addWidget(self.header)
class LP_LibraryPanel(FFrame): def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.header = LP_GroupHeader(self._app, '我的音乐') self.current_playlist_item = LP_GroupItem(self._app, '当前播放列表') self.current_playlist_item.set_img_text('❂') self._layout = FVBoxLayout(self) self.setObjectName('lp_library_panel') self.set_theme_style() self.setup_ui() def set_theme_style(self): theme = self._app.theme_manager.current_theme style_str = ''' #{0} {{ background: transparent; }} '''.format(self.objectName(), theme.color3.name()) self.setStyleSheet(style_str) def setup_ui(self): self._layout.addSpacing(3) self._layout.addWidget(self.header) self._layout.addWidget(self.current_playlist_item) def add_item(self, item): self._layout.addWidget(item)
def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.right_panel = RightPanel(self._app) self._layout = FVBoxLayout(self) self.setWidget(self.right_panel) self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setWidgetResizable(True) self.setObjectName('c_left_panel') self.set_theme_style() self.setup_ui()
class LeftPanel(FFrame): def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.library_panel = LP_LibraryPanel(self._app) self.playlists_panel = LP_PlaylistsPanel(self._app) self._layout = FVBoxLayout(self) self.setLayout(self._layout) self.setObjectName('c_left_panel') self.set_theme_style() self.setup_ui() def set_theme_style(self): theme = self._app.theme_manager.current_theme style_str = ''' #{0} {{ background: transparent; }} '''.format(self.objectName(), theme.color5.name()) self.setStyleSheet(style_str) def setup_ui(self): self._layout.addWidget(self.library_panel) self._layout.addWidget(self.playlists_panel) self._layout.addStretch(1)
def __init__(self, app, parent=None): super().__init__(parent) self._app = app self.left_panel = LeftPanel(self._app) self._layout = FVBoxLayout(self) # no layout, no children self.setWidget(self.left_panel) self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) self.setWidgetResizable(True) self.setObjectName('c_left_panel_container') self.set_theme_style() self.setMinimumWidth(180) self.setMaximumWidth(220) self.setup_ui()
class Ui(object): def __init__(self, app): self._layout = FVBoxLayout(app) self.top_panel = TopPanel(app, app) self.central_panel = CentralPanel(app, app) self.status_panel = StatusPanel(app, app) self.status_panel.hide() self.current_playlist_table = CurrentPlaylistTable(app) self.setup() def setup(self): self._layout.addWidget(self.central_panel) self._layout.addWidget(self.top_panel) self._layout.addWidget(self.status_panel)