File MIES_BrowserSettingsPanel.ipf

BSP Panel for DB and AB (SweepBrowser) that combines different settings in a tabcontrol.

Functions

string BSP_GetPanel(string mainPanel)

return the name of the external panel depending on main window name

Parameters:

mainPanel – mainWindow panel name

string BSP_GetNotebookSubWindow(string win)

return the name of the WaveNote Display inside BSP

string BSP_GetSweepControlsPanel(string mainPanel)

return the name of the bottom Panel

Parameters:

mainPanel – mainWindow panel name

string BSP_GetSFFormula(string mainPanel)
string BSP_GetSFJSON(string mainPanel)
string BSP_GetSFHELP(string mainPanel)
variable BSP_InitPanel(string mainPanel)

Inits controls of BrowserSettings side Panel.

Parameters:

mainPanel – mainWindow panel name

static variable BSP_UnHidePanel(string mainPanel)

UnHides BrowserSettings side Panel.

Parameters:

mainPanel – mainWindow panel name

static variable BSP_UnHideSettingsPanel(string mainPanel)
static variable BSP_UnHideSweepControls(string mainPanel)

open bottom Panel

Parameters:

mainPanel – mainWindow panel name

static variable BSP_DynamicSweepControls(string mainPanel)

dynamic settings for bottom panel at initialization

Parameters:

mainPanel – mainWindow panel name

static variable BSP_AddWindowHooks(string win)

Add default window hooks.

variable BSP_RemoveWindowHooks(string win)

Remove all window hooks from the window and its subwindows.

variable BSP_DynamicStartupSettings(string mainPanel)

dynamic settings for panel initialization

Parameters:

mainPanel – mainWindow panel name

variable BSP_SweepFormulaHook(WMWinHookStruct *s)

Hook function for the Sweep Formula Notebook.

variable BSP_UnsetDynamicStartupSettings(string mainPanel)

Unsets all control properties that are set in BSP_DynamicStartupSettings for DataBrowser type.

Parameters:

mainPanel – mainWindow panel name

variable BSP_BindListBoxWaves(string win)
wave BSP_GetChannelSelectionWave(string win)

Get the channel selection wave.

Parameters:

win – name of external panel or main window

Returns:

channel selection wave

dfref BSP_GetFolder(string win, string folderType, variable versionCheck = defaultValue)

get a FOLDER property from the specified panel

Parameters:
  • win – name of external panel or main window

  • folderType – see the FOLDER constants in this file

  • versionCheck – [optional, defaults to true] abort on outdated window version

Returns:

DFR to specified folder. No check for invalid folders

variable BSP_SetFolder(string win, dfref dfr, string folderType)

set a FOLDER property at the specified panel

Parameters:
  • win – name of external panel or main window

  • dfr – DataFolder Reference to the folder

  • folderType – see the FOLDER constants in this file

string BSP_GetDevice(string win)

get the assigned DEVICE property from the main panel

Parameters:

win – name of external panel or main window

Returns:

device as string

string BSP_SetDevice(string win, string device)

set DEVICE property to the userdata of the main panel

Parameters:
  • win – name of external panel or main window

  • device – bound device as string

string BSP_GetBrowserType(string win)

get the MIES Browser Type

Parameters:

win – name of external panel or main window

Returns:

D for DataBrowser or S for SweepBrowser

static string BSP_SetBrowserType(string win, string type, variable mode)

set DEVICE property to the userdata of the main panel

Parameters:
static variable BSP_ParseBrowserMode(string mode)
static string BSP_SerializeBrowserMode(variable mode)
variable BSP_HasMode(string win, variable mode)
variable BSP_SetDataBrowser(string win, variable mode)

wrapper function for external calls

variable BSP_SetSweepBrowser(string win, variable mode)

wrapper function for external calls

variable BSP_IsSweepBrowser(string win)

wrapper function for external calls

variable BSP_IsDataBrowser(string win)

wrapper function for external calls

variable BSP_HasBoundDevice(string win)

check if the DEVICE property has a not nullstring property

Parameters:

win – name of external panel or main window

Returns:

1 if device is assigned and 0 otherwise. does not check if device is valid.

static variable BSP_InitMainCheckboxes(string win)

set the initial state of the enable/disable buttons

Parameters:

win – name of external panel or main window

variable BSP_SetOVSControlStatus(string win)

enable/disable the OVS buttons

Parameters:

win – specify mainPanel or bsPanel with OVS controls

variable BSP_SetARControlStatus(string win)

enable/disable the AR buttons

Parameters:

win – specify mainPanel or bsPanel with OVS controls

variable BSP_SetSFControlStatus(string win)

enable/disable the SF buttons

Parameters:

win – specify mainPanel or bsPanel with OVS controls

variable BSP_SetControlStatus(string win, string controlList, variable status)

enable/disable a list of controls

Parameters:
  • win – specify mainPanel or bsPanel with OVS controls

  • controlList – list of controls

  • status – 1: enable; 0: disable

static variable BSP_MainPanelButtonToggle(string mainPanel, variable visible)

action for button in mainPanel

Parameters:
  • mainPanel – main Panel window

  • visible – set status of external Panel (opened: visible = 1)

static variable BSP_HidePanel(string win)
variable BSP_ClosePanelHook(WMWinHookStruct *s)

panel close hook for side panel

variable BSP_SweepsAndMouseWheel(WMWinHookStruct *s)
variable BSP_CheckBoxProc_ArtRemoval(WMCheckBoxAction *cba)

enable/disable checkbox control for side panel

variable BSP_CheckBoxProc_PerPulseAver(WMCheckBoxAction *cba)

enable/disable checkbox control for side panel

variable BSP_CheckBoxProc_SweepFormula(WMCheckBoxAction *cba)

enable/disable checkbox control for side panel

variable BSP_ButtonProc_Panel(WMButtonAction *ba)

procedure for the open button of the side panel

variable BSP_SliderProc_ChangedSetting(WMSliderAction *spa)
variable BSP_TimeAlignmentProc(WMCheckBoxAction *cba)
variable BSP_TimeAlignmentPopup(WMPopupAction *pa)
variable BSP_TimeAlignmentLevel(WMSetVariableAction *sva)
variable BSP_DoTimeAlignment(WMButtonAction *ba)
variable BSP_CheckProc_ScaleAxes(WMCheckboxAction *cba)
variable BSP_AxisScalingLevelCross(WMSetVariableAction *sva)
static variable BSP_UpdateSweepControls(string win, string ctrl, variable firstSweepOrIndex, variable lastSweepOrIndex)

update controls in scPanel and change to new sweep

Parameters:
  • win – name of external panel or main window

  • ctrl – name of the button that was pressed and is initiating the update

  • firstSweepOrIndex – first available sweep(DB) or index(SB)

  • lastSweepOrIndex – last available sweep(DB) or index(SB)

Returns:

the new sweep number in case of DB or the index for SB

variable BSP_IsActive(string win, variable elementID)

check if the specified setting is activated

Parameters:
  • win – name of external panel or main window

  • elementID – one of MIES_BSP_* constants like MIES_BSP_PA

Returns:

1 if setting was activated, 0 otherwise

variable BSP_UpdateHelpNotebook(string helpNotebook)

Fill the SweepFormula help notebook with the contents of the stored file.

string BSP_GetFormulaGraph(string win)

Return a sweep formula graph name unique for that sweepbrowser/databrowser.

string BSP_GetFormulaGraphTitle(string win)
variable BSP_ParseChannelSelectionControl(string ctrl, string *channelType, variable *channelNum)

Parse a control name for the “Channel Selection Panel” and return its channel type and number. The number will be NaN for the ALL control.

variable BSP_ChannelSelectionWaveToGUI(string panel, wave channelSel)

Set the channel selection dialog controls according to the channel selection wave.

variable BSP_GUIToChannelSelectionWave(string win, string ctrl, variable checked)

Set the channel selection wave acccording to the channel selection controls.

variable BSP_RemoveDisabledChannels(wave channelSel, wave ADCs, wave DACs, wave statusHS, wave numericalValues, variable sweepNo)

Removes the disabled channels and headstages from ADCs, DACs and statusHS

channelSel will be the result from BSP_FetchSelectedChannels() which is a copy of the permanent channel selection wave.

variable BSP_ScaleAxes(string win)
std::tuple<TiledGraphSettings> BSP_GatherTiledGraphSettings(string win)
variable BSP_CheckProc_ChangedSetting(WMCheckBoxAction *cba)
variable BSP_ButtonProc_RestoreData(WMButtonAction *ba)
variable BSP_CheckProc_OverlaySweeps(WMCheckBoxAction *cba)
wave BSP_GetLogbookWave(string win, variable logbookType, variable logbookWaveType, variable sweepNumber = defaultValue, variable selectedExpDevice = defaultValue)

Generic getter for logbook waves.

Works with Databrowser/Sweepbrowser.

For the Sweepbrowser this returns the stored logbooks. If you want to fetch the global results wave use GetLogbookWaves().

Parameters:
  • win – panel

  • logbookType – one of LogbookTypes

  • logbookWaveType – one of LabnotebookWaveTypes

  • sweepNumber – [optional] sweep number

  • selectedExpDevice – [optional, defaults to off] return the labnotebook for the selected experiment/device combination

Returns:

returns the specified logbook wave or a null wave

wave BSP_FetchSelectedChannels(string graph, variable index = defaultValue, variable sweepNo = defaultValue)

Return the wave with the selected channels respecting the overlay sweeps headstage ignore list. The wave has the same layout as BSP_GetChannelSelectionWave.

std::tuple<variable, variable> BSP_FirstAndLastSweepAcquired(string win)

Return the last and first sweep numbers.

variable BSP_ButtonProc_ChangeSweep(WMButtonAction *ba)
variable BSP_MainTabControlFinal(WMTabControlAction *tca)
variable BSP_UpdateSweepNote(string win)
static variable BSP_UnHideSettingsHistory(string win)
static variable BSP_RemoveTraces(string graph)
variable BSP_AddTracesForEpochs(string win)

Debug function to add traces with epoch information.

variable BSP_EpochGraphToolTip(WMTooltipHookStruct *s)
variable BSP_SFHelpWindowHook(WMWinHookStruct *s)
static string BSP_GetHelpOperationHeadline(string op)
static string BSP_GetHelpKeywordHeadline(string keyWord)
static variable BSP_SFFormulaColoring(string sfWin)
variable BSP_TTHookSFFormulaNB(WMTooltipHookStruct *s)
static string BSP_RetrieveSFHelpTextImpl(string win, string hlpStart, string hlpEnd)
variable BSP_WindowHook(WMWinHookStruct *s)
string BSP_RenameAndSetTitle(string win, string newName)

Renames the browser window and sets an informative title.

Parameters:
  • win – name of the existing window

  • newName – suggested new name, will be adapted to be unique

static variable BSP_MemoryFreeMappedDF(string win)
dfref BSP_GetSweepDF(string win, variable sweepNo)

Gets sweep browser data folder from sweep- or data browser window name and sweep number.

Parameters:
  • win[in] sweep- or data browser window

  • sweepNo[in] sweep number

Returns:

sweep data folder reference, null reference if requirements not met

Variables

static const string EXT_PANEL_SUBWINDOW = "BrowserSettingsPanel"
static const string EXT_PANEL_SWEEPCONTROL = "SweepControl"
static const string EXT_PANEL_SF_FORMULA = "sweepFormula_formula"
static const string EXT_PANEL_SF_JSON = "sweepFormula_json"
static const string EXT_PANEL_SF_HELP = "sweepFormula_help"
static const string BROWSERTYPE_DATABROWSER = "D"
static const string BROWSERTYPE_SWEEPBROWSER = "S"
static const string BROWSERSETTINGS_CONTROLS_DATABROWSER = "popup_DB_lockedDevices;"

exclusive controls that are enabled/disabled for the specific browser window type

static const string BROWSERSETTINGS_AXES_SCALING_CHECKBOXES = "check_Display_VisibleXrange;check_Display_EqualYrange;check_Display_EqualYignore"
static const string SWEEPCONTROL_CONTROLS_DATABROWSER = "check_SweepControl_AutoUpdate;setvar_SweepControl_SweepNo;"

exclusive controls that are enabled/disabled for the specific browser window type

static const string SWEEPCONTROL_CONTROLS_SWEEPBROWSER = "popup_SweepControl_Selector;"
static const string BSP_USER_DATA_SF_CONTENT_CRC = "SweepFormulaContentCRC"
static const double BSP_EPOCH_LEVELS = 5