19 #define BWGRAPH_LINE_SEND (1u<<0)
20 #define BWGRAPH_LINE_RECV (1u<<1)
21 #define SETTING_FILTER "LineFilter"
22 #define SETTING_OPACITY "Opacity"
23 #define SETTING_ALWAYS_ON_TOP "AlwaysOnTop"
24 #define SETTING_STYLE "GraphStyle"
25 #define DEFAULT_FILTER (BWGRAPH_LINE_SEND|BWGRAPH_LINE_RECV)
26 #define DEFAULT_ALWAYS_ON_TOP false
27 #define DEFAULT_OPACITY 100
28 #define DEFAULT_STYLE GraphFrame::AreaGraph
30 #define ADD_TO_FILTER(f,v,b) (f = ((b) ? ((f) | (v)) : ((f) & ~(v))))
33 #define DATETIME_FMT "MMM dd hh:mm:ss"
36 #define IMG_AREA_GRAPH ":/images/16x16/graph-area.png"
37 #define IMG_LINE_GRAPH ":/images/16x16/graph-line.png"
68 if(!(QSysInfo::WindowsVersion & QSysInfo::WV_NT_based)
69 || QSysInfo::WindowsVersion < QSysInfo::WV_2000) {
70 ui.frmOpacity->setVisible(
false);
75 ui.frmOpacity->setVisible(
false);
83 ui.retranslateUi(
this);
90 connect(
ui.btnToggleSettings, SIGNAL(toggled(
bool)),
93 connect(
ui.btnReset, SIGNAL(clicked()),
96 connect(
ui.btnSaveSettings, SIGNAL(clicked()),
99 connect(
ui.btnCancelSettings, SIGNAL(clicked()),
102 connect(
ui.sldrOpacity, SIGNAL(valueChanged(
int)),
111 ui.frmGraph->addPoints(bytesRead/1024.0, bytesWritten/1024.0);
125 if (
ui.chkAlwaysOnTop->isChecked()) {
126 setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
128 setWindowFlags(windowFlags() & ~Qt::WindowStaysOnTopHint);
138 if (graphStyle < 0 || graphStyle >=
ui.cmbGraphStyle->count()) {
141 ui.cmbGraphStyle->setCurrentIndex(graphStyle);
145 ui.frmGraph->setShowCounters(
ui.chkReceiveRate->isChecked(),
146 ui.chkSendRate->isChecked());
154 ui.statusbar->showMessage(tr(
"Since:") +
" " +
155 QDateTime::currentDateTime()
158 ui.frmGraph->resetGraph();
174 if (
ui.chkAlwaysOnTop->isChecked()) {
175 setWindowFlags(windowFlags() | Qt::WindowStaysOnTopHint);
177 setWindowFlags(windowFlags() & ~Qt::WindowStaysOnTopHint);
189 ui.frmGraph->setShowCounters(
ui.chkReceiveRate->isChecked(),
190 ui.chkSendRate->isChecked());
213 static QSize minSize = minimumSize();
215 QSize newSize = size();
218 ui.frmSettings->setVisible(
true);
219 ui.btnToggleSettings->setChecked(
true);
220 ui.btnToggleSettings->setText(tr(
"Hide Settings"));
223 newSize.setHeight(newSize.height() +
ui.frmSettings->height() + 6);
226 ui.frmSettings->setVisible(
false);
227 ui.btnToggleSettings->setChecked(
false);
228 ui.btnToggleSettings->setText(tr(
"Show Settings"));
231 newSize.setHeight(newSize.height() -
ui.frmSettings->height() - 6);
232 setMinimumSize(minSize);
241 qreal newValue = value / 100.0;
244 #if defined(Q_WS_MAC)
245 this->setWindowOpacity(newValue);
246 ui.lblPercentOpacity->setText(QString::number(value));
247 #elif defined(Q_WS_WIN)
248 if (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based
249 && QSysInfo::WindowsVersion >= QSysInfo::WV_2000) {
250 this->setWindowOpacity(newValue);
251 ui.lblPercentOpacity->setText(QString::number(value));