/
MTelemetryTabWidgetChannels.cpp
55 lines (49 loc) · 2.26 KB
/
MTelemetryTabWidgetChannels.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include "MTelemetryTabWidgetChannels.h"
#include "MTelemetryTabBarChannels.h"
#include "MTelemetryTabChannel.h"
#include "funcs.h"
//============================================================================================
MTelemetryTabWidgetChannels::MTelemetryTabWidgetChannels(QWidget *parent, QList<QList<QString>>* pListParamsTelemetryChannels,
int iFirstItemListParamsTelemetry)
: QTabWidget(parent),
PListParamsTelemetryChannels(pListParamsTelemetryChannels),
IFirstItemListParamsTelemetry(iFirstItemListParamsTelemetry)
{
//initialize TabBar
MTelemetryTabBarChannels* pTabBar = new MTelemetryTabBarChannels(this);
pTabBar->setIconSize(QSize(16,11));
setTabBar(pTabBar);
}
//--------------------------------------------------------------------------------------------
QRect MTelemetryTabWidgetChannels::AddTabs()
{
QRect rectTelemetryChannels; QRect rect;
MTelemetryTabBarChannels* pTabBar = qobject_cast<MTelemetryTabBarChannels*>(tabBar());
Q_ASSERT(pTabBar != NULL); // Q_CHECK_PTR(pTabBar);
MTelemetryTabChannel* pTabChannel; // MPlot* pPlot; //QWidget* pTab;
int count = PListParamsTelemetryChannels->count();
for (int i = 0; i < count; i++)
{
pTabChannel = new MTelemetryTabChannel(this, &(*PListParamsTelemetryChannels)[i], IFirstItemListParamsTelemetry);
rect = pTabChannel->GetRectChannel();
if(i == 0) rectTelemetryChannels = rect;
else rectTelemetryChannels |= rect;
addTab(pTabChannel, QIcon((*PListParamsTelemetryChannels)[i][1]), (*PListParamsTelemetryChannels)[i][0]);
connect(pTabChannel,
SIGNAL(SignalUpdateTabBar()),
pTabBar,
SLOT(SlotUpdateTabBar()));
}
return rectTelemetryChannels;
}
//--------------------------------------------------------------------------------------------
//= For TabWidgetStates:
bool MTelemetryTabWidgetChannels::event(QEvent* e)
{
if(e->type() == QEvent::MouseButtonPress && !isEnabled())
{
GetPMainWnd()->GetPTelemetry()->ActivateTabWidgetStates();
}
return QTabWidget::event(e);
}
//--------------------------------------------------------------------------------------------