gui package

Submodules

gui.Welcome_window module

class gui.Welcome_window.Welcome_Tab(parent, *args, **kwargs)

Bases: Frame

Welcome tab

A welcome tab to display free disk space and select experiment parameters such as:

  • Model organism

  • User

  • Fluorescent marker

  • Quit application

__init__(parent, *args, **kwargs)

Initialize welcome tab

Parameters:

parent – the ttk.Notebook class

deleteme()

Upon call of this function from the quit button, a message window is shown before quitting. If “yes” is selected, quit the program.

getwelcome_parameters()

Get parameters of welcome window.

Returns:

list of parameters {username, modelOrganism, fluorescent maker}

gui.advancedsettings_window module

class gui.advancedsettings_window.AdvancedSettings_Tab(parent, *args, **kwargs)

Bases: Frame

Advanced Settings Tab

A tab for advanced settings such as setting of :

  • Axially-swept light sheet parameters

  • Alignment mode to control the voltage at the remote mirror

  • Advanced stack acquisition settings such as camera delay and stage velocity/acceleration

__init__(parent, *args, **kwargs)

Initialize advanced settings tab

Parameters:

parent – the ttk.Notebook class

change_voltage(voltage, factor)

Convert input from the +/- buttons to a change of 0.1 in voltage.

Parameters:
  • voltage – tkinter voltage variable, voltage value to modify

  • factor – +1 or -1, determines whether to increase or decrease voltage

gui.main_window module

class gui.main_window.MultiScope_MainGui(*args, **kwargs)

Bases: Notebook

This is the main GUI class for the multi-scale microscope. It organizes and arranges the microscope GUI into different tabs:

  • A welcome tab

  • A stage tab

  • A run tab

  • An advanced settings tab

  • A tab to control the self-driving acquisition.

This is also the class to call when only starting the GUI without the model by calling: python main_window.py

__init__(*args, **kwargs)

Initialize GUI

gui.run_window module

class gui.run_window.Run_Tab(parent, *args, **kwargs)

Bases: Frame

Run Tab

A run tab to select parameters such as:

  • Preview or stack acquisition

  • Stack acquisition parameters such as number of planes, which lasers to image, which cameras, plane distance

  • Time-lapse acquisition settings such as time interval and duration

  • Laser settings such as laser power of low- and highres illumination

  • Camera settings such as exposure time

  • Region of interest to image

__init__(parent, *args, **kwargs)

Initialize run tab

Parameters:

parent – the ttk.Notebook class

preview_change(button)

Set from the controller to sink or raise button (change appearance), e.g. when running a preview or a stack acquisition.

Parameters:

button – tkinter button to sink or raise

preview_filter_select(button)

Change appearance of buttons for excitation wavelength. As a result, only the button of the selected wavelength (laser), that is running in the preview, is sunk. All other buttons are raised.

Parameters:

button – tkinter button to sink

updateTimesTimelapse()

Updates the displayed time-lapse parameters, such as starting time or the expected end time of the time-lapse.

gui.smart_window module

class gui.smart_window.SmartMicroscopySettings_Tab(parent, *args, **kwargs)

Bases: Frame

Smart, self-driving microscope tab

A tab to select whether to run the self-driving microscope module or not and which channel to use for low-resolution guidance.

__init__(parent, *args, **kwargs)

Initialize self-driving, smart microscopy tab

Parameters:

parent – the ttk.Notebook class

gui.stages_window module

class gui.stages_window.Stages_Tab(parent, *args, **kwargs)

Bases: Frame

Stage tab

A stages tab to select which positions will be imaged in a timelapse

  • Change step size of stage movements

  • Move to position (value entry and buttons)

  • Activate keyboard for movement and add positions (a,s,w,d and r,t)

  • Move to a defined position in the table (right)

  • Automatically generate mosaic of positions

  • Two tables to display selected low-res and high-res positions

Note: Positions are displayed using a ttk.Treeview construct.

__init__(parent, *args, **kwargs)

Initialize stages Tab

Parameters:

parent – the ttk.Notebook class

addhighresPos()

Add the current stage positions (translational stage, rotational stage) at the current stage position index (self.stage_currentPosindex) in the high-resolution position list.

addlowresPos()

Add the current stage positions (translational stage, rotational stage) at the current stage position index (self.stage_currentPosindex) in the low-resolution position list.

change_angle(direction, factor)

This function changes the value of the rotational stage position (direction) in the direction of the factor (+1 or -1) by the value of the rotational stage step size.

Parameters:
  • direction – Defines the rotational stage position to update (self.stage_moveto_angle)

  • factor – Defines direction of update (+1/-1)

change_currentposition(direction, factor)

This function changes the value of the stage position (direction) in the direction of the factor (+1 or -1) by the value of the translation stage step size.

Parameters:
  • direction – Defines which stage position to update (e.g. self.stage_moveto_lateral)

  • factor – Defines direction of update (+1/-1)

deletehighresPos()

Delete position in high-resolution position list that corresponds to the current selected position (self.stage_currenthighresPosindex)

deletelowresPos()

Delete position in low-resolution position list that corresponds to the current selected position (self.stage_currentPosIndex)

display_tree(tree, positionlist)

Update the display of the positions in the GUI position table.

Parameters:
  • tree – Which tree to update low-resolution data tree (self.stage_savedPos_tree) or high-resolution (self.stage_highres_savedPos_tree)

  • positionlist – Current updated positions to display

loadhighresPosList()

Load saved high-resolution position list from memory

loadlowresPosList()

Load saved low-resolution position list from memory

makeMosaic(camera)

Generate a mosaic based on the selected parameters for either high- or low-resolution data

Parameters:

camera – defines whether mosaic is generated for high-resolution (“highres”) or low-resolution (“lowres”) data

reverthighresList()

Go back to previous high-resolution position list (e.g. to list before loading a saved list, or adding a position).

revertlowresList()

Go back to previous low-resolution position list (e.g. to list before loading a saved list, or adding a position).

savehighresPosList()

Save the current high resolution stage position list

savelowresPosList()

Save the current low resolution stage position list

update_stage_trans_stepsize(event)

When the Tkinter slider (apply a logarithmic scaling to the slider) for the translation stage step size is changed, update the value of the stage_trans_stepsize parameter (displayed in the entry field).

Parameters:

event – update event

Module contents