# mypy: disable-error-code="misc, override, attr-defined, no-redef, assignment"

import CatalogAPI as CatalogAPI
import ConfigurationAPI_cmodule as Configuration
import UI4.Util.DrawState as DrawState
import Nodes3DAPI as Nodes3DAPI
import PyOpenColorIO as OCIO
import UI4.KatanaPrefs.PrefNames as PrefNames
import PyQt5.QtWidgets
import PyQt5.QtCore as QtCore
import PyQt5.QtGui as QtGui
import PyQt5.QtWidgets as QtWidgets
import UI4.Widgets.SceneGraphView.SceneGraphViewIconManager as SceneGraphViewIconManager
import UI4 as UI4
import UI4.Tabs.Catalog
import Utils as Utils
import typing
from PyUtilModule.VirtualKatana import RenderManager as RenderManager
from UI4.App.KeyboardShortcutManager.KeyboardShortcutManager import GetShortcutForKeyEvent as GetShortcutForKeyEvent
from UI4.KatanaPrefs.KatanaPrefsObject import Prefs as Prefs
from UI4.Tabs.BaseTab import BaseTab as BaseTab
from UI4.Tabs.Monitor.CommentWidgets import CatalogItemCommentEditor as CatalogItemCommentEditor
from UI4.Tabs.Monitor.DisplayDetailsWidgets import DisplayChannelsLabel as DisplayChannelsLabel, DisplayExposureLabel as DisplayExposureLabel, DisplayScaleLabel as DisplayScaleLabel, DisplayVisualizationLabel as DisplayVisualizationLabel, InputColorspaceLabel as InputColorspaceLabel, LayerSelectionLabel as LayerSelectionLabel, MatteMultLabel as MatteMultLabel, SwipeModeLabel as SwipeModeLabel
from UI4.Tabs.Monitor.Manipulators import AddManipulatorMenuActions as AddManipulatorMenuActions
from UI4.Tabs.Monitor.MonitorWidget import MonitorWidget as MonitorWidget
from UI4.Widgets.HorizontalDivider import HorizontalDivider as HorizontalDivider
from UI4.Widgets.RolloverPixmap import RolloverPixmap
from typing import ClassVar, Set, Tuple

_minimumWindowSize: int
secondaryClientKey: int

class CloseBoxButton(RolloverPixmap, PyQt5.QtWidgets.QPushButton):
    def __init__(self, parent) -> None: ...

class MonitorPanel(BaseTab):
    _MonitorPanel__AlternateDefaultAovShortcutID: ClassVar[str] = ...
    _MonitorPanel__ShowNextAovShortcutID: ClassVar[str] = ...
    _MonitorPanel__ShowPreviousAovShortcutID: ClassVar[str] = ...
    _MonitorPanel__SwapBuffersShortcutID: ClassVar[str] = ...
    def __init__(self, *args) -> None: ...
    def _MonitorPanel__alternateDefaultAovCallback(self): ...
    def _MonitorPanel__buildManipulatorMenu_CB(self, menu): ...
    def _MonitorPanel__catalogWidgetA_catalogItemDropped_CB(self, item): ...
    def _MonitorPanel__catalogWidgetB_catalogItemDropped_CB(self, item): ...
    def _MonitorPanel__catalog_clientSlotUpdate_CB(self, _eventType: str | None, eventID: typing.Hashable): ...
    def _MonitorPanel__commentsButtonClicked_CB(self): ...
    def _MonitorPanel__createCatalogArea(self): ...
    def _MonitorPanel__createCatalogInfoBar(self): ...
    def _MonitorPanel__createCommentToolbar(self): ...
    def _MonitorPanel__createLayerToolbarWidget(self): ...
    def _MonitorPanel__createOverlayToolbar(self): ...
    def _MonitorPanel__createStereoToolbar(self): ...
    def _MonitorPanel__createTopIconArea(self): ...
    def _MonitorPanel__deleteOverlayButton_released_CB(self): ...
    def _MonitorPanel__deleteUnderlayButton_released_CB(self): ...
    def _MonitorPanel__displayItemsChanged_CB(self): ...
    def _MonitorPanel__displayMenuAboutToShow_CB(self): ...
    def _MonitorPanel__drawStateUpdated_CB(self): ...
    def _MonitorPanel__editTransformEnabled_CB(self): ...
    def _MonitorPanel__editTransformErrored_CB(self, value, message): ...
    def _MonitorPanel__editTransformToggled_CB(self): ...
    @staticmethod
    def _MonitorPanel__getShortcutAsString(actionID: str) -> str: ...
    def _MonitorPanel__imageModeChanged_CB(self): ...
    def _MonitorPanel__linkButton_clicked_CB(self): ...
    def _MonitorPanel__makeConnections(self): ...
    def _MonitorPanel__manipulatorToggled_CB(self): ...
    def _MonitorPanel__maskChangedSecondary_CB(self): ...
    def _MonitorPanel__maskChanged_CB(self): ...
    def _MonitorPanel__monitorAddToolbar_CB(self, toolbar, layer): ...
    def _MonitorPanel__monitorPopToolbar_CB(self, toolbar, layer): ...
    def _MonitorPanel__monitorRemoveToolbar_CB(self, toolbar, layer): ...
    def _MonitorPanel__monitorRoiVisibilityChanged_CB(self): ...
    def _MonitorPanel__monitor_drawStateLinkUpdate_CB(self): ...
    def _MonitorPanel__onPrefChanged(self, eventType: str | None, eventID: typing.Hashable, prefKey: str, prefValue: object): ...
    def _MonitorPanel__on_overlayModeCombobox_activated(self, text): ...
    def _MonitorPanel__on_scenegraphMask_visibilityFollowsWorkingSetChanged(self, eventType, eventID, visibilityFollowsWorkingSet): ...
    def _MonitorPanel__overlayButtonClicked_CB(self): ...
    def _MonitorPanel__overlayChanged_CB(self): ...
    def _MonitorPanel__overlayCheckBox_stateChanged_CB(self, state): ...
    def _MonitorPanel__overlayThumbnail_catalogItemDropped_CB(self, item): ...
    def _MonitorPanel__populateMenuBar(self): ...
    def _MonitorPanel__probeButtonClicked_CB(self): ...
    def _MonitorPanel__renderColumnToggled_CB(self): ...
    def _MonitorPanel__renderWorkingSetStatusChanged(self, isActive): ...
    def _MonitorPanel__roiCombo_roiVisibilityChanged_CB(self): ...
    def _MonitorPanel__showNextAovCallback(self): ...
    def _MonitorPanel__showPreviousAovCallback(self): ...
    def _MonitorPanel__stereoButtonClicked_CB(self): ...
    def _MonitorPanel__stereoModePopup_activated_CB(self, text): ...
    def _MonitorPanel__swapBuffersPressCallback(self): ...
    def _MonitorPanel__syncPanZoom_CB(self, eyePoint, viewScale, srcWidget): ...
    def _MonitorPanel__toolbarChanged_CB(self, toolbar): ...
    def _MonitorPanel__underlayCheckBox_stateChanged_CB(self, state): ...
    def _MonitorPanel__underlayThumbnail_catalogItemDropped_CB(self, item): ...
    def _MonitorPanel__updateManipulatorVisibility_CB(self): ...
    def _MonitorPanel__updateModeLabels(self): ...
    def _MonitorPanel__updatePixelProbeVisibility_CB(self): ...
    def getEmbeddedCatalogTab(self) -> UI4.Tabs.Catalog.CatalogPanel: ...
    def getMenuBar(self) -> PyQt5.QtWidgets.QMenuBar | None: ...
    def getMonitorWidget(self) -> MonitorWidget: ...
    @staticmethod
    def registerKeyboardShortcuts(): ...
    def swapCatalogView(self): ...
