#------------------------------------------------------------------------------
# Copyright (c) 2013-2025, Nucleic Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file LICENSE, distributed with this software.
#------------------------------------------------------------------------------
""" An example of using an Enaml alias to expose an internal widget.

<< autodoc-me >>
"""
from __future__ import print_function
from enaml.widgets.api import Window, Container, PushButton


enamldef Content(Container):
    """ The primary application content.

    This 'button' alias provides access to the internal push button.

    """
    alias button
    PushButton: button:
        text = 'Default Button Text'


enamldef Main(Window):
    """ The main application window.

    This window uses the 'button' alias of the central content to bind
    to its internal push button.

    """
    title = 'Simple Widget Alias'
    Content:
        button.text = 'Aliased Button'
        button.clicked :: print('Aliased Button clicked!')
