Example #1
0
def _ImpliedDirName_makeWidget(self, scope=None, verbose=False):
    if not (guilogger.recording() or guilogger.replaying()):
        return ImpliedDirectorySelectorWidget(self, scope=scope, name=self.name,
                                              verbose=verbose)
    else:
        return FakeFileSelectorWidget(self, scope=scope, name=self.name,
                                      verbose=verbose)
Example #2
0
def _FileListParameter_makeWidget(self, scope=None, verbose=False):
    if not (guilogger.recording() or guilogger.replaying()):
        return FileListWidget(self, scope=scope, name=self.name, 
                              verbose=verbose)
    else:
        return FakeFileSelectorWidget(self, scope=scope, name=self.name,
                                      verbose=verbose)
Example #3
0
def _RFileNameParameter_makeWidget(self, scope=None):
    if (useFakeFileSelector == 'always'
            or (useFakeFileSelector == 'sometimes' and
                (guilogger.recording() or guilogger.replaying()))):
        return FakeFileSelectorWidget(self, scope=scope, name=self.name)
    else:
        return ReadFileSelectorWidget(self, scope=scope, name=self.name)
Example #4
0
def _RFileNameParameter_makeWidget(self, scope=None):
    if (useFakeFileSelector=='always' or
        (useFakeFileSelector=='sometimes' 
         and (guilogger.recording() or guilogger.replaying()))):
        return FakeFileSelectorWidget(self, scope=scope, name=self.name)
    else:
        return ReadFileSelectorWidget(self, scope=scope, name=self.name)
Example #5
0
 def __init__(self, param, scope=None, name=None, verbose=False):
     self.state = None
     self.widget = chooser.ChooserWidget([], self.chooserCB, name=name)
     parameterwidgets.ParameterWidget.__init__(self, self.widget.gtk,
                                               scope=scope, verbose=verbose)
     if not (guilogger.recording() or guilogger.replaying()):
         self.fileSelector = self.scope.findWidget(
             lambda x: (isinstance(x, WriteFileSelectorWidget)))
     else:
         self.fileSelector = self.scope.findWidget(
             lambda x: (isinstance(x, FakeFileSelectorWidget)))
     if self.fileSelector is None:
         raise ooferror.ErrPyProgrammingError("Can't find file selector")
     self.set_options()
     self.widgetChanged(True, True)
     self.sbcallback = switchboard.requestCallbackMain(self.fileSelector,
                                                       self.fileSelectorCB)
Example #6
0
def fileSelector(mode,
                 ident=None,
                 title=None,
                 filename=None,
                 params=None,
                 pattern=False):
    # GUI logging doesn't work for the file selector, so we use a
    # simple StringParameter and ParameterDialog when either logging
    # or replaying.  This is a hack. TODO EVENTUALLY: fix this.
    # TODO: will need to fix logging for pattern?

    if (useFakeFileSelector == 'always'
            or (useFakeFileSelector == 'sometimes' and
                (guilogger.recording() or guilogger.replaying()))):
        return fakeFileSelector(mode, ident, title, filename, params)

    try:
        selector = _selectors[ident]
    except KeyError:
        # Make new selector
        selector = FileSelector(mode=mode,
                                title=title,
                                filename=filename,
                                params=params,
                                pattern=pattern)
        if ident is not None:
            _selectors[ident] = selector
    else:
        # Reuse old selector
        selector.set_mode(mode)
        selector.set_title(title)

    result = selector.run()
    selector.hide()

    if result in (FileSelector.CANCEL, gtk.RESPONSE_DELETE_EVENT,
                  gtk.RESPONSE_NONE):
        return None

    if not pattern:
        return selector.getFileName()
    else:
        return selector.getFilePattern()
Example #7
0
 def __init__(self, param, scope=None, name=None):
     self.state = None
     self.widget = chooser.ChooserWidget([], self.chooserCB, name=name)
     parameterwidgets.ParameterWidget.__init__(self, self.widget.gtk,
                                               scope=scope)
     if (useFakeFileSelector=='always' or
         (useFakeFileSelector=='sometimes' and
          (guilogger.recording() or guilogger.replaying()))):
         self.fileSelector = self.scope.findWidget(
             lambda x: (isinstance(x, FakeFileSelectorWidget)))
     else:
         self.fileSelector = self.scope.findWidget(
             lambda x: (isinstance(x, WriteFileSelectorWidget)))
     if self.fileSelector is None:
         raise ooferror.ErrPyProgrammingError("Can't find file selector")
     self.set_options()
     self.widgetChanged(True, True)
     self.sbcallback = switchboard.requestCallbackMain(self.fileSelector,
                                                       self.fileSelectorCB)
Example #8
0
def fileSelector(mode, ident=None, title=None, filename=None, params=None,
                 pattern=False):
    # GUI logging doesn't work for the file selector, so we use a
    # simple StringParameter and ParameterDialog when either logging
    # or replaying.  This is a hack. TODO EVENTUALLY: fix this.
    # TODO: will need to fix logging for pattern?

    if (useFakeFileSelector=='always' or 
        (useFakeFileSelector=='sometimes' and 
         (guilogger.recording() or guilogger.replaying()))):
        return fakeFileSelector(mode, ident, title, filename, params)

    try:
        selector = _selectors[ident]
    except KeyError:
        # Make new selector
        selector = FileSelector(mode=mode, title=title, filename=filename,
                                params=params, pattern=pattern)
        if ident is not None:
            _selectors[ident] = selector
    else:
        # Reuse old selector
        selector.set_mode(mode)
        selector.set_title(title)

    result = selector.run()
    selector.hide()

    if result in (FileSelector.CANCEL,
                  gtk.RESPONSE_DELETE_EVENT,
                  gtk.RESPONSE_NONE):
        return None

    if not pattern:
        return selector.getFileName()
    else:
        return selector.getFilePattern()