Source code for traitsui.editors.image_editor

# (C) Copyright 2004-2023 Enthought, Inc., Austin, TX
# All rights reserved.
#
# This software is provided without warranty under the terms of the BSD
# license included in LICENSE.txt and may be redistributed only under
# the conditions described in the aforementioned license. The license
# is also available online at http://www.enthought.com/licenses/BSD.txt
#
# Thanks for using Enthought open source!

""" Traits UI 'display only' image editor.
"""

from pyface.ui_traits import Image
from traits.api import Bool, Property

from traitsui.basic_editor_factory import BasicEditorFactory
from traitsui.toolkit import toolkit_object

# -------------------------------------------------------------------------
#  'ImageEditor' editor factory class:
# -------------------------------------------------------------------------


[docs]class ImageEditor(BasicEditorFactory): #: The editor class to be created: klass = Property() #: The optional image resource to be displayed by the editor (if not #: specified, the editor's object value is used as the ImageResource to #: display): image = Image #: The following traits are currently supported on Qt only #: Whether or not to scale the image to fit the available space scale = Bool() #: Whether or not to scale the image larger than the original when scaling allow_upscaling = Bool() #: Whether or not to preserve the aspect ratio when scaling preserve_aspect_ratio = Bool() #: Whether or not to allow the image to be clipped when not scaling allow_clipping = Bool() def _get_klass(self): """Returns the editor class to be instantiated.""" return toolkit_object("image_editor:_ImageEditor")