DynExp
Highly flexible laboratory automation for dynamically changing experiments.
Loading...
Searching...
No Matches
DynExpModule::SignalDesignerWidget Class Reference

#include <SignalDesigner.h>

+ Inheritance diagram for DynExpModule::SignalDesignerWidget:

Public Member Functions

 SignalDesignerWidget (SignalDesigner &Owner, QModuleWidget *parent=nullptr)
 
 ~SignalDesignerWidget ()=default
 
bool AllowResize () const noexcept override final
 Indicates the resizing behavior of the user interface window. Override to adjust.
 
const auto GetUI () const noexcept
 
bool HavePulsesChanged () noexcept
 
auto GetPulses () const
 
void InitializeUI (Util::SynchronizedPointer< SignalDesignerData > &ModuleData)
 Layout changes not involving ModuleData->CurrentWaveform come here.
 
- Public Member Functions inherited from DynExp::QModuleWidget
 QModuleWidget (QModuleBase &Owner, QWidget *Parent=nullptr)
 Constructs a QModuleWidget instance.
 
 ~QModuleWidget ()=default
 
const auto & GetOwner () const noexcept
 Getter for the owning module.
 
Qt::WindowFlags GetQtWindowFlags () const noexcept
 Depending on thr return value of AllowResize(), returns either the return value of GetQtWindowFlagsResizable() or GetQtWindowFlagsNonResizable().
 
std::string GetDataSaveDirectory () const
 Recalls a path where modules might save recorded data to. Used by Util::PromptSaveFilePathModule() to recall the directory the user has chosen last for saving a file. This directory is the same across all modules.
 
void SetDataSaveDirectory (std::string_view Directory) const
 Sets a path where modules might save recorded data to. Used by Util::PromptSaveFilePathModule() to store the directory the user has chosen last for saving a file. This directory is the same across all modules.
 

Private Slots

void OnPulsesContextMenuRequested (const QPoint &Position)
 
void OnAddPulse (bool)
 
void OnRemovePulse (bool)
 
void OnClearPulses (bool)
 
void OnPulsesChanged (QTableWidgetItem *)
 

Private Attributes

std::unique_ptr< Ui::SignalDesigner > ui
 
QMenu * PulsesContextMenu
 
QAction * AddPulseAction
 
QAction * RemovePulseAction
 
QAction * ClearPulsesAction
 
DynExpInstr::FunctionGeneratorDefs::PulsesDescType Pulses
 
bool PulsesChanged = false
 

Additional Inherited Members

- Static Public Member Functions inherited from DynExp::QModuleWidget
static constexpr Qt::WindowFlags GetQtWindowFlagsResizable ()
 Default Qt window flags for resizable module windows.
 
static constexpr Qt::WindowFlags GetQtWindowFlagsNonResizable ()
 Default Qt window flags for non-resizable module windows.
 

Detailed Description

Definition at line 27 of file SignalDesigner.h.

Constructor & Destructor Documentation

◆ SignalDesignerWidget()

DynExpModule::SignalDesignerWidget::SignalDesignerWidget ( SignalDesigner Owner,
QModuleWidget parent = nullptr 
)

Definition at line 10 of file SignalDesigner.cpp.

◆ ~SignalDesignerWidget()

DynExpModule::SignalDesignerWidget::~SignalDesignerWidget ( )
default

Member Function Documentation

◆ AllowResize()

bool DynExpModule::SignalDesignerWidget::AllowResize ( ) const
inlinefinaloverridevirtualnoexcept

Indicates the resizing behavior of the user interface window. Override to adjust.

Returns
Return true when the window should be resizable by the user, false otherwise.

Reimplemented from DynExp::QModuleWidget.

Definition at line 35 of file SignalDesigner.h.

◆ GetPulses()

auto DynExpModule::SignalDesignerWidget::GetPulses ( ) const
inline

Definition at line 39 of file SignalDesigner.h.

◆ GetUI()

const auto DynExpModule::SignalDesignerWidget::GetUI ( ) const
inlinenoexcept

Definition at line 37 of file SignalDesigner.h.

◆ HavePulsesChanged()

bool DynExpModule::SignalDesignerWidget::HavePulsesChanged ( )
noexcept

Definition at line 29 of file SignalDesigner.cpp.

◆ InitializeUI()

void DynExpModule::SignalDesignerWidget::InitializeUI ( Util::SynchronizedPointer< SignalDesignerData > &  ModuleData)

Layout changes not involving ModuleData->CurrentWaveform come here.

Parameters
ModuleDataData instance assigned to this SignalDesigner instance.

Definition at line 41 of file SignalDesigner.cpp.

◆ OnAddPulse

void DynExpModule::SignalDesignerWidget::OnAddPulse ( bool  )
privateslot

Definition at line 246 of file SignalDesigner.cpp.

◆ OnClearPulses

void DynExpModule::SignalDesignerWidget::OnClearPulses ( bool  )
privateslot

Definition at line 273 of file SignalDesigner.cpp.

◆ OnPulsesChanged

void DynExpModule::SignalDesignerWidget::OnPulsesChanged ( QTableWidgetItem *  )
privateslot

Definition at line 279 of file SignalDesigner.cpp.

◆ OnPulsesContextMenuRequested

void DynExpModule::SignalDesignerWidget::OnPulsesContextMenuRequested ( const QPoint &  Position)
privateslot

Definition at line 241 of file SignalDesigner.cpp.

◆ OnRemovePulse

void DynExpModule::SignalDesignerWidget::OnRemovePulse ( bool  )
privateslot

Definition at line 251 of file SignalDesigner.cpp.

Member Data Documentation

◆ AddPulseAction

QAction* DynExpModule::SignalDesignerWidget::AddPulseAction
private

Definition at line 47 of file SignalDesigner.h.

◆ ClearPulsesAction

QAction* DynExpModule::SignalDesignerWidget::ClearPulsesAction
private

Definition at line 49 of file SignalDesigner.h.

◆ Pulses

DynExpInstr::FunctionGeneratorDefs::PulsesDescType DynExpModule::SignalDesignerWidget::Pulses
private

Definition at line 51 of file SignalDesigner.h.

◆ PulsesChanged

bool DynExpModule::SignalDesignerWidget::PulsesChanged = false
private

Definition at line 52 of file SignalDesigner.h.

◆ PulsesContextMenu

QMenu* DynExpModule::SignalDesignerWidget::PulsesContextMenu
private

Definition at line 46 of file SignalDesigner.h.

◆ RemovePulseAction

QAction* DynExpModule::SignalDesignerWidget::RemovePulseAction
private

Definition at line 48 of file SignalDesigner.h.

◆ ui

std::unique_ptr<Ui::SignalDesigner> DynExpModule::SignalDesignerWidget::ui
private

Definition at line 44 of file SignalDesigner.h.


The documentation for this class was generated from the following files: