Source code for traitsui.editors.file_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!

""" Defines the file editor factory for all traits toolkit backends.
"""

from traits.api import Bool, File, Int, List, Str

from traitsui.editors.text_editor import TextEditor
from traitsui.group import Group
from traitsui.view import View

# -------------------------------------------------------------------------
#  Trait definitions:
# -------------------------------------------------------------------------

#: Wildcard filter:
filter_trait = List(Str)


[docs]class FileEditor(TextEditor): """Editor factory for file editors.""" # ------------------------------------------------------------------------- # Trait definitions: # ------------------------------------------------------------------------- #: Wildcard filter to apply to the file dialog: filter = filter_trait #: Optional extended trait name of the trait containing the list of #: filters: filter_name = Str() #: Should file extension be truncated? truncate_ext = Bool(False) #: Can the user select directories as well as files? allow_dir = Bool(False) #: Is user input set on every keystroke? (Overrides the default) ('simple' #: style only): auto_set = False #: Is user input set when the Enter key is pressed? (Overrides the default) #: ('simple' style only): enter_set = True #: The number of history entries to maintain: #: FIXME: This is currently only supported on wx. Qt support needs to be #: added entries = Int(10) #: The root path of the file tree view ('custom' style only, not supported #: under wx). If not specified, the filesystem root is used. root_path = File() #: Optional extend trait name of the trait containing the root path. root_path_name = Str() #: Optional extended trait name used to notify the editor when the file #: system view should be reloaded ('custom' style only): reload_name = Str() #: Optional extended trait name used to notify when the user double-clicks #: an entry in the file tree view. The associated path is assigned it: dclick_name = Str() #: The style of file dialog to use when the 'Browse...' button is clicked #: Should be one of 'open' or 'save' dialog_style = Str("open") # ------------------------------------------------------------------------- # Traits view definition: # ------------------------------------------------------------------------- traits_view = View( [ [ "<options>", "truncate_ext{Automatically truncate file extension?}", "|options:[Options]>", ], ["filter", "|[Wildcard filters]<>"], ] ) extras = Group()
# This alias is deprecated and will be removed in TraitsUI 8. ToolkitEditorFactory = FileEditor