Source code for pygame_menu.widgets.widget.none
"""
pygame-menu
https://github.com/ppizarror/pygame-menu
NONE WIDGET
None widget definition.
"""
__all__ = ['NoneWidget']
import pygame
from pygame_menu.utils import make_surface
from pygame_menu.widgets.core.widget import Widget, WidgetTransformationNotImplemented
from pygame_menu._types import Optional, NumberType, EventVectorType
# noinspection PyMissingOrEmptyDocstring
[docs]class NoneWidget(Widget):
"""
None widget. Useful if used for filling column/row layout. None widget don't
accept values, padding, margin, cursors, position, sound, controls, and
cannot be selected. Also, none widget cannot accept callbacks, except draw
and update callbacks.
.. note::
NoneWidget does not accept any transformation.
:param widget_id: ID of the widget
"""
def __init__(
self,
widget_id: str = ''
) -> None:
super(NoneWidget, self).__init__(widget_id=widget_id)
self.is_selectable = False
self._surface = make_surface(0, 0, alpha=True)
def _apply_font(self) -> None:
pass
def set_padding(self, *args, **kwargs) -> 'NoneWidget':
return self
def get_selected_time(self) -> NumberType:
return 0
def set_title(self, *args, **kwargs) -> 'NoneWidget':
return self
def get_rect(self, *args, **kwargs) -> 'pygame.Rect':
return pygame.Rect(0, 0, 0, 0)
def set_background_color(self, *args, **kwargs) -> 'NoneWidget':
return self
def _draw_background_color(self, *args, **kwargs) -> None:
pass
def _draw_border(self, *args, **kwargs) -> None:
pass
def set_selection_effect(self, *args, **kwargs) -> 'NoneWidget':
return self
def apply(self, *args) -> None:
pass
def change(self, *args) -> None:
pass
def _draw(self, *args, **kwargs) -> None:
pass
def _render(self, *args, **kwargs) -> Optional[bool]:
pass
def set_margin(self, *args, **kwargs) -> 'NoneWidget':
return self
def _apply_transforms(self, *args, **kwargs) -> None:
pass
def set_font(self, *args, **kwargs) -> 'NoneWidget':
return self
def update_font(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_position(self, *args, **kwargs) -> 'NoneWidget':
return self
def scale(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def resize(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def set_max_width(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def set_max_height(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def rotate(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def flip(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def translate(self, *args, **kwargs) -> 'NoneWidget':
raise WidgetTransformationNotImplemented()
def set_alignment(self, *args, **kwargs) -> 'NoneWidget':
return self
def select(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_font_shadow(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_sound(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_cursor(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_controls(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_border(self, *args, **kwargs) -> 'NoneWidget':
return self
def _check_mouseover(self, *args, **kwargs) -> bool:
self._mouseover = False
return False
def mouseleave(self, *args, **kwargs) -> 'NoneWidget':
return self
def mouseover(self, *args, **kwargs) -> 'NoneWidget':
return self
def set_onchange(self, *args, **kwargs) -> 'NoneWidget':
self._onchange = None
return self
def set_onreturn(self, *args, **kwargs) -> 'NoneWidget':
self._onreturn = None
return self
def set_onmouseleave(self, *args, **kwargs) -> 'NoneWidget':
self._onmouseleave = None
return self
def set_onmouseover(self, *args, **kwargs) -> 'NoneWidget':
self._onmouseover = None
return self
def set_onselect(self, *args, **kwargs) -> 'NoneWidget':
self._onselect = None
return self
[docs] def update(self, events: EventVectorType) -> bool:
self.apply_update_callbacks(events)
return False