Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CPanelChannelsMoveChannel.hpp
Go to the documentation of this file.
1#ifndef LIBS_PANELS_CPANELCHANNELSMOVECHANNEL_HPP_
2#define LIBS_PANELS_CPANELCHANNELSMOVECHANNEL_HPP_
3
7
8#include <bits/stdint-uintn.h>
9#include <cstddef>
10#include <memory>
11#include <utility>
12
14{
15public:
16 // IMPORTANT NOTE: TUnitChannel and TChannelMove exist already in classes
17 // 'CUnitsRestrictions' and 'CMoveChannelRestrictions') using uint16_t, but they need to be
18 // redefined here using uint32_t, since this type is required to use it with CComboBox.
19 typedef std::pair<uint32_t, uint32_t> TUnitChannelComboBox; // <unitID, channelID>
20 typedef std::pair<TUnitChannelComboBox, TUnitChannelComboBox> TChannelMoveComboBox;// <source, destination>
21
22 // default methods disabled
27
28 CPanelChannelsMoveChannel(const std::shared_ptr<CMoveChannelRestrictions> &moveChannelRestrictions,
29 bool selectionExists, const CUnitsRestrictions::TUnitChannel &selectedUnitChannel);
31
33
34 [[nodiscard]] uint32_t getSrcUnitSelected(uint32_t option) const;
35 [[nodiscard]] uint32_t getSrcChannelSelected(uint32_t option) const;
36 [[nodiscard]] uint32_t getDstUnitSelected(uint32_t option) const;
37 [[nodiscard]] uint32_t getDstChannelSelected(uint32_t option) const;
38
39 [[nodiscard]] TChannelMoveComboBox getChannelMove() const;
40 [[nodiscard]] bool isValidMove() const;
41
42 //these methods should be private, but they need to be accessible from within classes CPrvListenerSelect*:
44 void populateSrcChannelComboBox(bool selectedSrcUnitChanged);
47
52
53 [[nodiscard]] uint16_t getCurrentSrcUnit() const;
54 [[nodiscard]] uint16_t getCurrentSrcChannel() const;
55 [[nodiscard]] uint16_t getCurrentDstUnit() const;
56 [[nodiscard]] uint16_t getCurrentDstChannel() const;
57
58 void setCurrentSrcUnit(uint16_t unit);
59 void setCurrentSrcChannel(uint16_t channel);
60 void setCurrentDstUnit(uint16_t unit);
61 void setCurrentDstChannel(uint16_t channel);
62
63private:
64 std::shared_ptr<CMoveChannelRestrictions> m_moveChannelRestrictionsRef;
65
69
74
76};
77
78#endif /* LIBS_PANELS_CPANELCHANNELSMOVECHANNEL_HPP_ */
Definition AbstractComponentGUI.hpp:30
Definition CComboBox.hpp:48
Definition CPanelChannelsMoveChannel.hpp:14
std::pair< uint32_t, uint32_t > TUnitChannelComboBox
Definition CPanelChannelsMoveChannel.hpp:19
uint16_t getCurrentSrcUnit() const
Definition CPanelChannelsMoveChannel.cpp:452
CUnitsRestrictions::TUnitChannel m_currentDstUnitChannel
Definition CPanelChannelsMoveChannel.hpp:68
size_t getCurrentDstChannelPopulationSize() const
Definition CPanelChannelsMoveChannel.cpp:442
void populateDstUnitComboBox()
Definition CPanelChannelsMoveChannel.cpp:309
uint32_t getDstChannelSelected(uint32_t option) const
Definition CPanelChannelsMoveChannel.cpp:235
CUnitsRestrictions::TUnitChannel m_currentSrcUnitChannel
Definition CPanelChannelsMoveChannel.hpp:67
uint16_t getCurrentSrcChannel() const
Definition CPanelChannelsMoveChannel.cpp:457
void setCurrentSrcChannel(uint16_t channel)
Definition CPanelChannelsMoveChannel.cpp:477
void setCurrentSrcUnit(uint16_t unit)
Definition CPanelChannelsMoveChannel.cpp:472
void populateSrcUnitComboBox()
Definition CPanelChannelsMoveChannel.cpp:255
AbstractComponentGUI * buildPanel()
Definition CPanelChannelsMoveChannel.cpp:159
uint32_t getSrcChannelSelected(uint32_t option) const
Definition CPanelChannelsMoveChannel.cpp:215
uint32_t getDstUnitSelected(uint32_t option) const
Definition CPanelChannelsMoveChannel.cpp:225
std::pair< TUnitChannelComboBox, TUnitChannelComboBox > TChannelMoveComboBox
Definition CPanelChannelsMoveChannel.hpp:20
uint16_t getCurrentDstChannel() const
Definition CPanelChannelsMoveChannel.cpp:467
CComboBox * m_comboBoxSrcChannel
Definition CPanelChannelsMoveChannel.hpp:71
bool isValidMove() const
Definition CPanelChannelsMoveChannel.cpp:250
size_t getCurrentSrcUnitPopulationSize() const
Definition CPanelChannelsMoveChannel.cpp:412
void populateDstChannelComboBox()
Definition CPanelChannelsMoveChannel.cpp:354
TChannelMoveComboBox m_channelMove
Definition CPanelChannelsMoveChannel.hpp:75
CPanelChannelsMoveChannel(const CPanelChannelsMoveChannel &other)=delete
void setCurrentDstChannel(uint16_t channel)
Definition CPanelChannelsMoveChannel.cpp:487
void setCurrentDstUnit(uint16_t unit)
Definition CPanelChannelsMoveChannel.cpp:482
size_t getCurrentDstUnitPopulationSize() const
Definition CPanelChannelsMoveChannel.cpp:432
size_t getCurrentSrcChannelPopulationSize() const
Definition CPanelChannelsMoveChannel.cpp:422
CPanelChannelsMoveChannel & operator=(CPanelChannelsMoveChannel &&other)=delete
CComboBox * m_comboBoxDstChannel
Definition CPanelChannelsMoveChannel.hpp:73
CPanelChannelsMoveChannel(CPanelChannelsMoveChannel &&other)=delete
std::shared_ptr< CMoveChannelRestrictions > m_moveChannelRestrictionsRef
Definition CPanelChannelsMoveChannel.hpp:64
bool m_selectionExists
Definition CPanelChannelsMoveChannel.hpp:66
uint16_t getCurrentDstUnit() const
Definition CPanelChannelsMoveChannel.cpp:462
CComboBox * m_comboBoxDstUnit
Definition CPanelChannelsMoveChannel.hpp:72
uint32_t getSrcUnitSelected(uint32_t option) const
Definition CPanelChannelsMoveChannel.cpp:205
~CPanelChannelsMoveChannel()=default
CComboBox * m_comboBoxSrcUnit
Definition CPanelChannelsMoveChannel.hpp:70
void populateSrcChannelComboBox(bool selectedSrcUnitChanged)
Definition CPanelChannelsMoveChannel.cpp:285
CPanelChannelsMoveChannel & operator=(const CPanelChannelsMoveChannel &other)=delete
TChannelMoveComboBox getChannelMove() const
Definition CPanelChannelsMoveChannel.cpp:245
std::pair< iv::types::unitId, iv::types::channelOrder > TUnitChannel
Definition CUnitsRestrictions.hpp:18