def __init__(self, main_win, zoom_ctrl_mngr, listplayer, media_player): super().__init__(parent=main_win) self.main_win = main_win self.zoom_ctrl_mngr = zoom_ctrl_mngr self.listplayer = listplayer self.mp = media_player self.setTitle("Zoom") self.setIcon(icons.get("zoom_menu_button")) self.quarter = QAction("1:4 Quarter", self) self.quarter.triggered.connect( lambda: self.zoom_ctrl_mngr.set_scale(0.25)) self.quarter.setCheckable(True) self.half = QAction("1:2 Half", self) self.half.triggered.connect(lambda: self.zoom_ctrl_mngr.set_scale(0.5)) self.half.setCheckable(True) self.original = QAction("1:1 Original", self) self.original.triggered.connect( lambda: self.zoom_ctrl_mngr.set_scale(1)) self.original.setCheckable(True) self.double = QAction("1:2 Double", self) self.double.triggered.connect(lambda: self.zoom_ctrl_mngr.set_scale(2)) self.double.setCheckable(True) self.explicit_zooms = QActionGroup(self) self.explicit_zooms.addAction(self.quarter) self.explicit_zooms.addAction(self.half) self.explicit_zooms.addAction(self.original) self.explicit_zooms.addAction(self.double) self.addActions(self.explicit_zooms.actions()) self.option_action_map = { 0.25: self.quarter, 0.5: self.half, 1: self.original, 2: self.double, } self.zoom_in = ZoomInAction(self, zoom_ctrl_mngr=self.zoom_ctrl_mngr) self.zoom_in.setIcon(icons.get("zoom_in_menu_item")) self.addAction(self.zoom_in) self.zoom_out = ZoomOutAction(self, zoom_ctrl_mngr=self.zoom_ctrl_mngr) self.zoom_out.setIcon(icons.get("zoom_out_menu_item")) self.addAction(self.zoom_out) self.addSeparator() self.addAction(AutoResizeAction(self)) self.conform_to_media() self.zoom_ctrl_mngr.zoomchanged.connect(self.on_zoomchanged) self.listplayer.mediachanged.connect(self.on_mediachanged)
def __init__(self, parent, fullscreen_mngr): super().__init__(parent=parent) self.setText("Cancel Fullscreen") self.fullscreen_mngr = fullscreen_mngr self.triggered.connect(self.fullscreen_mngr.stop) self.setIcon(icons.get("fullscreen_exit")) self.setEnabled(False)
def __init__(self, parent, listplayer): super().__init__(parent=parent) self.setToolTip("Next Media") self.setIcon(icons.get("next_media")) self.listplayer = listplayer self.triggered.connect(self.on_triggered)
def refresh_items(self): # Clear action group for action in self.action_group.actions(): self.action_group.removeAction(action) del action # Add qscreen actions to group this_qscreen = get_qscreen_at(self.main_win) primary_qscreen = self.qguiapp.primaryScreen() sorted_qscreens = sorted(self.qguiapp.screens(), key=lambda s: s.name()) for qscreen in sorted_qscreens: is_primary = qscreen == primary_qscreen is_this_screen = qscreen == this_qscreen action = StartFullscreenAction( qscreen=qscreen, fullscreen_mngr=self.fullscreen_mngr, is_primary=is_primary, is_this_screen=is_this_screen, main_win=self.main_win, ) action.setCheckable(True) action.setIcon(icons.get("display_screen")) self.action_group.addAction(action) self.action_group.addAction(self.stop_fs_action) self.addActions(self.action_group.actions())
def set_ext_bttn_icon(self): ext_bttn = self.findChild( (QToolButton), name="qt_toolbar_ext_button", options=Qt.FindDirectChildrenOnly, ) ext_bttn.setIcon(icons.get("toolbar_ext_bttn"))
def __init__(self, parent, fullscreen_mngr): super().__init__(parent=parent, icon=icons.get("fullscreen")) self.fullscreen_mngr = fullscreen_mngr self.set_status("Main Window", QIcon.Normal, QIcon.Off) self.fullscreen_mngr.fullscreenstarted.connect(self.on_fullscreenstarted) self.fullscreen_mngr.fullscreenstopped.connect(self.on_fullscreenstopped)
def __init__(self, parent, loop_mode_mngr): super().__init__(parent=parent) self.loop_mode_mngr = loop_mode_mngr self.icons = { "off": icons.get("loop_mode_off"), "one": icons.get("loop_mode_one"), "all": icons.get("loop_mode_all"), } self.setText("Toggle Playback Mode") self.setToolTip("Toggle Playback Mode") self.setIconText("Playback Mode") self.setCheckable(True) self.update() self.triggered.connect(self.loop_mode_mngr.rotate_mode) self.loop_mode_mngr.playbackmodechanged.connect( self.on_playbackmodechanged)
def __init__(self, viewpoint_mngr: ViewpointManager, parent: QStatusBar = None): super().__init__(parent=parent, icon=icons.get("virtual_reality")) self.viewpoint_mngr = viewpoint_mngr self.set_status("- - -", QIcon.Disabled, QIcon.Off) self.text_lbl.setFont(fonts.get_fixed_pitch_font()) self.viewpoint_mngr.updatedviewpoint.connect(self.on_updatedviewpoint)
def __init__(self, playlist_widget, main_win): self.playlist_win = PlaylistPopupWindow( playlist_widget=playlist_widget, main_win=main_win ) super().__init__( icon=icons.get("open_playlist"), text="Open Playlist", widget=self.playlist_win, main_win=main_win, )
def __init__(self, parent, playlist_widget): super().__init__(parent=parent) self.parent = parent self.playlist_widget = playlist_widget self.setIcon(icons.get("open_file_menu")) self.setTitle("Open Media") self.addAction( OpenMultipleAction(parent=self, playlist_widget=playlist_widget)) self.addAction( OpenFileAction(parent=self, playlist_widget=playlist_widget))
def __init__(self, main_win=None): super().__init__(text="Always On Top", parent=main_win) self.main_win = main_win self.setIcon(icons.get("always_on_top")) self.setCheckable(True) self.triggered.connect(self.on_triggered) self.main_win.initialized.connect( lambda: self.triggered.emit(config.state.stay_on_top))
def __init__(self, parent, zoom_ctrl_mngr, size=None): super().__init__(parent=parent) self.zoom_ctrl_mngr = zoom_ctrl_mngr self.setText("Zoom Out") self.setToolTip("Zoom Out") self.setIcon(icons.get("zoom_out_button")) self.zoom_ctrl_mngr.zoomchanged.connect(self.on_zoomchanged) self.triggered.connect(self.on_triggered)
def __init__(self, socket, parent): super().__init__(parent) self.socket = socket self.button = None self.setCheckable(True) self.setIcon(icons.get("connect_to_server_status")) self.update(self.socket.state()) self.socket.stateChanged.connect(self.update) self.triggered.connect(self.on_triggered)
def __init__(self, parent, playlist_widget): super().__init__(title="Playlist", parent=parent) self.setContentsMargins(0, 0, 0, 0) self.setWidget(playlist_widget) self.setVisible(False) self.toggleViewAction().setIcon(icons.get("open_playlist")) self.toggleViewAction().setEnabled(True) self.toggleViewAction().setShortcut(QtGui.QKeySequence("Ctrl+M")) self.toggleViewAction().setText( f"Open Playlist {self.toggleViewAction().shortcut().toString()}" )
def __init__(self, parent, vol_mngr: VolumeManager): super().__init__(text="Volume") self.vol_mngr = vol_mngr self.icons = icons.get("volume_button") self.vol_widget = VolumePopupWidget(parent=parent, vol_mngr=self.vol_mngr) self.update_icon(config.state.volume) # type: ignore self.triggered.connect(self.vol_widget.popup) self.vol_mngr.volumechanged.connect(self.update_icon)
def __init__(self, parent, playlist_widget): super().__init__(parent=parent) self.parent = parent self.playlist_widget = playlist_widget self.setIcon(icons.get("open_multiple")) self.setText("Open Multiple Files") self.setShortcut("Ctrl+M") self.setShortcutContext(Qt.WidgetWithChildrenShortcut) # self.setShortcutVisibleInContextMenu(True) self.triggered.connect(self.on_triggered)
def __init__(self, parent, listplayer, media_player): super().__init__(parent=parent) self.listplayer = listplayer self.mp = media_player self.setToolTip("Play/Pause") self.setCheckable(True) self.setIcon(icons.get("play_pause")) self.mp.playing.connect(self.on_playing) self.mp.paused.connect(self.on_paused) self.mp.stopped.connect(self.on_paused) self.triggered.connect(self.on_triggered)
def show_context_menu(self, pos: QPoint): selected_items = self.selected_items() if len(selected_items) <= 1: rem_selected_text = f"Remove '{selected_items[0].data(Qt.DisplayRole)}'" else: rem_selected_text = f"Remove {len(selected_items)} items" menu = QMenu(self) menu.addAction( icons.get("file_remove"), rem_selected_text, self.remove_selected_items, self.rem_selected_items_shortcut.key(), ) menu.exec_(self.mapToGlobal(pos))
def __init__(self, parent, frame_scale_menu, size): super().__init__(parent=parent) self.menu = frame_scale_menu self.setIconSize(QSize(size, size)) self.setAutoRaise(True) self.setToolButtonStyle(Qt.ToolButtonIconOnly) self.action = PopupMenuAction( icon=icons.get("zoom_menu_button"), text=self.menu.title(), menu=self.menu, parent=self, ) self.setToolTip("Zoom") self.setCheckable(False) self.setDefaultAction(self.action)
def __init__(self, main_win, fullscreen_mngr): super().__init__(parent=main_win) self.fullscreen_mngr = fullscreen_mngr self.main_win = main_win self.setTitle("Fullscreen") self.setIcon(icons.get("fullscreen_menu_bttn")) self.qguiapp = QApplication.instance() self.action_group = QActionGroup(self) self.stop_fs_action = StopFullscreenAction( parent=self, fullscreen_mngr=self.fullscreen_mngr ) self.qscreens = None self.refresh_items() self.fullscreen_mngr.fullscreenstarted.connect(self.on_fullscreenstarted) self.fullscreen_mngr.fullscreenstopped.connect(self.on_fullscreenstopped)
def __init__(self, parent, socket): super().__init__(parent=parent, icon=icons.get("connect_to_server_status")) self.socket = socket self.update_state(self.socket.state()) self.socket.stateChanged.connect(self.update_state)