DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpModule::SignalDesignerWidget Class Reference
+ 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. More...
 
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. More...
 
- Public Member Functions inherited from DynExp::QModuleWidget
 QModuleWidget (QModuleBase &Owner, QWidget *Parent=nullptr)
 Constructs a QModuleWidget instance. More...
 
 ~QModuleWidget ()=default
 
const auto & GetOwner () const noexcept
 Getter for the owning module. More...
 
Qt::WindowFlags GetQtWindowFlags () const noexcept
 Depending on thr return value of AllowResize(), returns either the return value of GetQtWindowFlagsResizable() or GetQtWindowFlagsNonResizable(). More...
 
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. More...
 
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. More...
 

Private Slots

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

Private Attributes

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
constexpr static Qt::WindowFlags GetQtWindowFlagsResizable ()
 Default Qt window flags for resizable module windows. More...
 
constexpr static Qt::WindowFlags GetQtWindowFlagsNonResizable ()
 Default Qt window flags for non-resizable module windows. More...
 

Detailed Description

Definition at line 23 of file SignalDesigner.h.

Constructor & Destructor Documentation

◆ SignalDesignerWidget()

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

Definition at line 9 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 31 of file SignalDesigner.h.

◆ GetPulses()

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

Definition at line 35 of file SignalDesigner.h.

◆ GetUI()

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

Definition at line 33 of file SignalDesigner.h.

◆ HavePulsesChanged()

bool DynExpModule::SignalDesignerWidget::HavePulsesChanged ( )
noexcept

Definition at line 26 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 38 of file SignalDesigner.cpp.

◆ OnAddPulse

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

Definition at line 243 of file SignalDesigner.cpp.

◆ OnClearPulses

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

Definition at line 270 of file SignalDesigner.cpp.

◆ OnPulsesChanged

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

Definition at line 276 of file SignalDesigner.cpp.

◆ OnPulsesContextMenuRequested

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

Definition at line 238 of file SignalDesigner.cpp.

◆ OnRemovePulse

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

Definition at line 248 of file SignalDesigner.cpp.

Member Data Documentation

◆ AddPulseAction

QAction* DynExpModule::SignalDesignerWidget::AddPulseAction
private

Definition at line 43 of file SignalDesigner.h.

◆ ClearPulsesAction

QAction* DynExpModule::SignalDesignerWidget::ClearPulsesAction
private

Definition at line 45 of file SignalDesigner.h.

◆ Pulses

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

Definition at line 47 of file SignalDesigner.h.

◆ PulsesChanged

bool DynExpModule::SignalDesignerWidget::PulsesChanged = false
private

Definition at line 48 of file SignalDesigner.h.

◆ PulsesContextMenu

QMenu* DynExpModule::SignalDesignerWidget::PulsesContextMenu
private

Definition at line 42 of file SignalDesigner.h.

◆ RemovePulseAction

QAction* DynExpModule::SignalDesignerWidget::RemovePulseAction
private

Definition at line 44 of file SignalDesigner.h.

◆ ui

Ui::SignalDesigner DynExpModule::SignalDesignerWidget::ui
private

Definition at line 40 of file SignalDesigner.h.


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