spacr.qt.widgets.empty_state
============================

.. py:module:: spacr.qt.widgets.empty_state

.. autoapi-nested-parse::

   EmptyState — reusable big "nothing here yet" panel with icon, title,
   subtitle, and an optional call-to-action button.

   Used on screens whose primary content requires the user to first pick
   a source folder / open a database (annotate, make-masks) — instead of
   showing an empty grid or blank canvas we render this centered.





Module Contents
---------------

.. py:class:: EmptyState(title: str = '', subtitle: str = '', icon: Optional[PySide6.QtGui.QIcon] = None, cta_label: str = '', on_action: Optional[Callable[[], None]] = None, parent: Optional[PySide6.QtWidgets.QWidget] = None)

   Bases: :py:obj:`PySide6.QtWidgets.QWidget`


   Centered vertical stack: icon → title → subtitle → CTA button.

   Any element can be omitted by passing an empty string / None.


   .. py:attribute:: action_triggered


   .. py:property:: cta_button
      :type: Optional[PySide6.QtWidgets.QPushButton]


      The primary CTA button, or ``None`` when no ``cta_label`` was set.


