| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- """
- Coming Soon Overlay Widget
- Semi-transparent overlay for features not yet implemented.
- """
- from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel
- from PyQt5.QtCore import Qt
- from PyQt5.QtGui import QFont
- class ComingSoonOverlay(QWidget):
- """
- Overlay widget that displays "COMING SOON" message over disabled content.
-
- Args:
- message: Main message text
- description: Optional detailed description
- parent: Parent widget
- """
-
- def __init__(self, message: str = "COMING SOON",
- description: str = "", parent=None):
- super().__init__(parent)
- self.init_ui(message, description)
-
- def init_ui(self, message: str, description: str):
- """Initialize the overlay UI."""
- # Make overlay fill parent
- self.setAttribute(Qt.WA_StyledBackground, True)
- self.setStyleSheet("""
- background-color: rgba(44, 62, 80, 0.85);
- border-radius: 4px;
- """)
-
- layout = QVBoxLayout(self)
- layout.setAlignment(Qt.AlignCenter)
-
- # Main message
- main_label = QLabel(message)
- main_label.setFont(QFont("Arial", 14, QFont.Bold))
- main_label.setStyleSheet("color: #ecf0f1;")
- main_label.setAlignment(Qt.AlignCenter)
- layout.addWidget(main_label)
-
- # Description (if provided)
- if description:
- desc_label = QLabel(description)
- desc_label.setFont(QFont("Arial", 10))
- desc_label.setStyleSheet("color: #bdc3c7;")
- desc_label.setAlignment(Qt.AlignCenter)
- desc_label.setWordWrap(True)
- layout.addWidget(desc_label)
|