def test_inSSHSession(): sshVars = ['SSH_CLIENT', 'SSH_TTY'] for sv in sshVars: with mock.patch.dict('os.environ', **{sv: '1'}): assert fw.inSSHSession() with mock.patch('os.environ', {}): assert not fw.inSSHSession()
def _AuiDockingGuide_init(self, *args, **kwargs): """I am also monkey-patching the ``wx.lib.agw.aui.AuiDockingGuide.__init__`` method, because in this instance, when running over SSH/X11, the ``wx.FRAME_TOOL_WINDOW`` style seems to result in the docking guide frames being given title bars, which is quite undesirable. I cannot patch the entire class in the aui package, because it is used as part of a class hierarchy. So I am just patching the method. """ if 'style' in kwargs: style = kwargs['style'] # This is the default style, as defined # in the AuiDockingGuide constructor else: style = (wx.FRAME_TOOL_WINDOW | wx.FRAME_STAY_ON_TOP | wx.FRAME_NO_TASKBAR | wx.NO_BORDER) if fwidgets.inSSHSession(): style &= ~wx.FRAME_TOOL_WINDOW kwargs['style'] = style _AuiDockingGuide_real_init(self, *args, **kwargs)
def __init__(self): """Create a :class:`Volume3DOpts` instance. """ # If we're in an X11/SSh session, # step down the quality so it's # a bit faster. if fwidgets.inSSHSession(): self.numSteps = 60 self.resolution = 70 self.blendFactor = 0.3 # If we're in GL14, restrict the # maximum possible amount of # smoothing, as GL14 fragment # programs cannot be too large. if float(fslgl.GL_COMPATIBILITY) < 2.1: smooth = self.getProp('smoothing') smooth.setAttribute(self, 'maxval', 6) self.clipPosition[:] = 10 * [50] self.clipAzimuth[:] = 10 * [0] self.clipInclination[:] = 10 * [0] # Give convenient initial values for # the first three clipping planes self.clipInclination[1] = 90 self.clipAzimuth[ 1] = 0 self.clipInclination[2] = 90 self.clipAzimuth[ 2] = 90
def __showDialog(self): """Creates and shows an :class:`.AboutDialog`. """ import fsleyes.about as aboutdlg dlg = aboutdlg.AboutDialog(self.__frame) dlg.Show() # When running over X11/SSH, CentreOnParent # causes the dialog to be moved way off. if not fwidgets.inSSHSession(): dlg.CentreOnParent()
def __init__(self, *args, **kwargs): """My new constructor, which makes sure that the ``FRAME_TOOL_WINDOW`` style is not passed through to the ``AuiFloatingFrame`` constructor """ if 'style' in kwargs: style = kwargs['style'] # This is the default style, as defined # in the AuiFloatingFrame constructor else: style = (wx.FRAME_TOOL_WINDOW | wx.FRAME_FLOAT_ON_PARENT | wx.FRAME_NO_TASKBAR | wx.CLIP_CHILDREN) if fwidgets.inSSHSession(): style &= ~wx.FRAME_TOOL_WINDOW kwargs['style'] = style super().__init__(*args, **kwargs)