/usr/lib/python2.7/dist-packages/traitsui/editors/button_editor.py is in python-traitsui 4.4.0-1.3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | #------------------------------------------------------------------------------
#
# Copyright (c) 2008, Enthought, Inc.
# All rights reserved.
#
# This software is provided without warranty under the terms of the BSD
# license included in enthought/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!
#
# Author: David C. Morrill
# Date: 10/21/2004
#
#------------------------------------------------------------------------------
""" Defines the button editor factory for all traits toolkit backends.
"""
#-------------------------------------------------------------------------------
# Imports:
#-------------------------------------------------------------------------------
from __future__ import absolute_import
from traits.api import Str, Range, Enum, Property, Trait
# CIRCULAR IMPORT FIXME: Importing from the source rather than traits.ui.api
# to avoid circular imports, as this EditorFactory will be part of
# traits.ui.api as well.
from ..view import View
from ..ui_traits import AView, Image
from ..editor_factory import EditorFactory
#-------------------------------------------------------------------------------
# 'ToolkitEditorFactory' class:
#-------------------------------------------------------------------------------
class ToolkitEditorFactory ( EditorFactory ):
""" Editor factory for buttons.
"""
#---------------------------------------------------------------------------
# Trait definitions:
#---------------------------------------------------------------------------
# Value to set when the button is clicked
value = Property
# Optional label for the button
label = Str
# The name of the external object trait that the button label is synced to
label_value = Str
# The name of the trait on the object that contains the list of possible
# values. If this is set, then the value, label, and label_value traits
# are ignored; instead, they will be set from this list. When this button
# is clicked, the value set will be the one selected from the drop-down.
values_trait = Trait(None, None, Str)
# (Optional) Image to display on the button
image = Image
# Extra padding to add to both the left and the right sides
width_padding = Range( 0, 31, 7 )
# Extra padding to add to both the top and the bottom sides
height_padding = Range( 0, 31, 5 )
# Presentation style
style = Enum( 'button', 'radio', 'toolbar', 'checkbox' )
# Orientation of the text relative to the image
orientation = Enum( 'vertical', 'horizontal' )
# The optional view to display when the button is clicked:
view = AView
#---------------------------------------------------------------------------
# Traits view definition:
#---------------------------------------------------------------------------
traits_view = View( [ 'label', 'value', '|[]' ] )
#---------------------------------------------------------------------------
# Implementation of the 'value' property:
#---------------------------------------------------------------------------
def _get_value ( self ):
return self._value
def _set_value ( self, value ):
self._value = value
if isinstance(value, basestring):
try:
self._value = int( value )
except:
try:
self._value = float( value )
except:
pass
#---------------------------------------------------------------------------
# Initializes the object:
#---------------------------------------------------------------------------
def __init__ ( self, **traits ):
self._value = 0
super( ToolkitEditorFactory, self ).__init__( **traits )
# Define the ButtonEditor class
ButtonEditor = ToolkitEditorFactory
### EOF ---------------------------------------------------------------------
|