コード例 #1
0
 def _get_dw_db(self, mode='r'):
     try:
         return shelve.open(os.path.join(traits_home(), 'dock_window'),
                            flag=mode,
                            protocol=-1)
     except:
         return None
コード例 #2
0
ファイル: ui.py プロジェクト: jonathanrocher/traitsui
 def get_ui_db(self, mode='r'):
     """ Returns a reference to the Traits UI preference database.
     """
     try:
         return shelve.open(os.path.join(traits_home(), 'traits_ui'),
                            flag=mode, protocol=-1)
     except:
         return None
コード例 #3
0
def get_cb_db ( mode = 'r' ):
    """ Gets a reference to the class browser database.
    """
    try:
        return shelve.open( join( traits_home(), 'class_browser' ),
                            flag = mode, protocol = -1 )
    except:
        return None
コード例 #4
0
 def get_ui_db(self, mode='r'):
     """ Returns a reference to the Traits UI preference database.
     """
     try:
         return shelve.open(os.path.join(traits_home(), 'traits_ui'),
                            flag=mode, protocol=-1)
     except:
         return None
コード例 #5
0
ファイル: pickle.py プロジェクト: enthought/etsdevtools
def get_ui_db ( mode = 'r' ):
    """ Opens the traits UI database.
    """
    try:
        return shelve.open( os.path.join( traits_home(), 'traits_ui' ),
                            flag = mode, protocol = -1 )
    except:
        return None
コード例 #6
0
def get_cb_db(mode='r'):
    """ Gets a reference to the class browser database.
    """
    try:
        return shelve.open(join(traits_home(), 'class_browser'),
                           flag=mode,
                           protocol=-1)
    except:
        return None
コード例 #7
0
from traitsui.theme import Theme
from traitsui.toolkit import toolkit
from pyface.api import ImageResource
from pyface.resource_manager import resource_manager
from pyface.resource.resource_reference import (ImageReference,
                                                ResourceReference)

#---------------------------------------------------------------------------
#  Constants:
#---------------------------------------------------------------------------

# Standard image file extensions:
ImageFileExts = ('.png', '.gif', '.jpg', 'jpeg')

# The image_cache root directory:
image_cache_path = join(traits_home(), 'image_cache')

# Names of files that should not be copied when ceating a new library copy:
dont_copy_list = ('image_volume.py', 'image_info.py', 'license.txt')

#-- Code Generation Templates ----------------------------------------------

# Template for creating an ImageVolumeInfo object:
ImageVolumeInfoCodeTemplate = \
"""        ImageVolumeInfo(
            description = %(description)s,
            copyright   = %(copyright)s,
            license     = %(license)s,
            image_names = %(image_names)s
        )"""
コード例 #8
0
    def init(self, info):
        """Handle events after controls have been generated but prior to
        their display.

        Args:
            info (UIInfo): TraitsUI UI info.

        Returns:
            bool: True.

        """
        def handle_tab_changed(i):
            # set the enum for the currently selected tab and initialize
            # viewers if necessary
            tab = ViewerTabs(i + 1)  # enums auto-index starting from 1
            info.object.selected_viewer_tab = tab
            print("Changed to tab", i, tab)
            if (info.object.stale_viewers[tab] is StaleFlags.IMAGE
                    or tab is ViewerTabs.ROI_ED and not info.object.roi_ed
                    or tab is ViewerTabs.ATLAS_ED and not info.object.atlas_eds
                    or tab is ViewerTabs.MAYAVI
                    and not info.object.scene_3d_shown):
                # redraw if new image has not been drawn for tab, or the
                # corresponding viewer has not been shown before
                info.object.redraw_selected_viewer(clear=False)
                if tab is ViewerTabs.MAYAVI:
                    # initialize the camera orientation
                    info.object.orient_camera()
            elif tab is ViewerTabs.ATLAS_ED:
                # synchronize Atlas Editors to ROI offset if option selected
                info.object.sync_atlas_eds_coords(check_option=True)
            info.object.update_imgadj_for_img()

        # change Trait to flag completion of controls creation
        info.object.controls_created = True

        # add a change listener for the viewer tab widget, which is the
        # first found widget
        tab_widgets = info.ui.control.findChildren(QtWidgets.QTabWidget)
        tab_widgets[0].currentChanged.connect(handle_tab_changed)

        # handle file open events such as Apple Events from PyInstaller
        app = QtWidgets.QApplication.instance()
        self._file_open_handler = event_handlers.FileOpenHandler(
            info.object.open_image)
        app.installEventFilter(self._file_open_handler)

        # move progress bar to status bar
        status_widgets = info.ui.control.findChildren(QtWidgets.QStatusBar)
        prog_widgets = info.ui.control.findChildren(QtWidgets.QProgressBar)
        if status_widgets and prog_widgets:
            status_widgets[0].addPermanentWidget(prog_widgets[0])

        # create TraitsUI preferences database if it does not exist
        pathlib.Path(traits_home()).mkdir(parents=True, exist_ok=True)
        db = info.ui.get_ui_db("c")
        if db is not None:
            if config.verbose:
                try:
                    # show MagellanMapper related db entries
                    for k, v in db.items():
                        if k.startswith("magmap"):
                            _logger.debug("TraitsUI preferences for %s: %s", k,
                                          v)
                            break
                except ValueError as e:
                    # may give pickle protocol error in older Python versions
                    _logger.exception(e)
            db.close()

        # WORKAROUND: TraitsUI icon does not work in Mac; use PyQt directly to
        # display application window icon using abs path; ignored in Windows
        app.setWindowIcon(QtGui.QIcon(str(config.ICON_PATH)))
        return True
コード例 #9
0
ファイル: traits_ui_db.py プロジェクト: enthought/etsdevtools
def ui_db_name ( ):
    """ Returns the name of the traits UI database.
    """
    return os.path.join( traits_home(), 'traits_ui' )
コード例 #10
0
ファイル: image.py プロジェクト: enthought/pyface
from pyface.resource_manager import resource_manager
from pyface.resource.resource_reference import (
    ImageReference,
    ResourceReference,
)
from pyface.ui_traits import HasMargin, HasBorder, Alignment

# ---------------------------------------------------------------------------
#  Constants:
# ---------------------------------------------------------------------------

# Standard image file extensions:
ImageFileExts = (".png", ".gif", ".jpg", "jpeg")

# The image_cache root directory:
image_cache_path = join(traits_home(), "image_cache")

# Names of files that should not be copied when ceating a new library copy:
dont_copy_list = ("image_volume.py", "image_info.py", "license.txt")

# -- Code Generation Templates ----------------------------------------------

# Template for creating an ImageVolumeInfo object:
ImageVolumeInfoCodeTemplate = """        ImageVolumeInfo(
            description=%(description)s,
            copyright=%(copyright)s,
            license=%(license)s,
            image_names=%(image_names)s
        )"""

# Template for creating an ImageVolumeInfo license text:
コード例 #11
0
ファイル: traits_ui_db.py プロジェクト: fagan2888/etsdevtools
def ui_db_name():
    """ Returns the name of the traits UI database.
    """
    return os.path.join(traits_home(), 'traits_ui')
コード例 #12
0
ファイル: image.py プロジェクト: 5n1p/traitsui
from traitsui.theme import Theme
from traitsui.toolkit import toolkit
from pyface.api import ImageResource
from pyface.resource_manager import resource_manager
from pyface.resource.resource_reference import (ImageReference,
                                                ResourceReference)

#---------------------------------------------------------------------------
#  Constants:
#---------------------------------------------------------------------------

# Standard image file extensions:
ImageFileExts = ( '.png', '.gif', '.jpg', 'jpeg' )

# The image_cache root directory:
image_cache_path = join( traits_home(), 'image_cache' )

# Names of files that should not be copied when ceating a new library copy:
dont_copy_list = ( 'image_volume.py', 'image_info.py', 'license.txt' )

#-- Code Generation Templates ----------------------------------------------

# Template for creating an ImageVolumeInfo object:
ImageVolumeInfoCodeTemplate = \
"""        ImageVolumeInfo(
            description = %(description)s,
            copyright   = %(copyright)s,
            license     = %(license)s,
            image_names = %(image_names)s
        )"""