Skip to content

Commit

Permalink
Added Raspberry Pi type place holder with label
Browse files Browse the repository at this point in the history
Adjusted Version line spacing
  • Loading branch information
erinharrington-12 committed Oct 14, 2024
1 parent f4c010c commit d1dc1a3
Show file tree
Hide file tree
Showing 3 changed files with 153 additions and 36 deletions.
1 change: 1 addition & 0 deletions include/botui/AboutWidget.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ class AboutWidget : public StandardWidget

bool getEventModeState();
void setEventModeState(QString newState);
QString getRaspberryPiType();

signals:
void eventModeEnabled();
Expand Down
54 changes: 47 additions & 7 deletions src/AboutWidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,21 @@ AboutWidget::AboutWidget(Device *device, QWidget *parent)
// Setup the UI
performStandardSetup(tr("About"));

//Set up emission signals for Event Mode enabled/disabled
// Set up emission signals for Event Mode enabled/disabled
setupConnections(this);

//Event Mode persistent state check
// Event Mode persistent state check
bool eventModeState = getEventModeState();

if(eventModeState){
if (eventModeState)
{
eventModeBackground(2);
}


QString piType = getRaspberryPiType();

ui->piType->setText(piType);

const bool on = NetworkManager::ref().isOn();
// Version Number
ui->version->setText(device->name() + " v" + device->version());
Expand Down Expand Up @@ -96,6 +101,42 @@ AboutWidget::~AboutWidget()
delete ui;
}

QString AboutWidget::getRaspberryPiType()
{
QProcess process;
QString command = "awk '/Revision/ {print $3}' /proc/cpuinfo"; // Corrected command syntax

process.start("bash", QStringList() << "-c" << command);
process.waitForFinished();
QByteArray output = process.readAllStandardOutput(); // Fixed this line to use process directly

QString piType;
if (process.exitStatus() == QProcess::NormalExit && process.exitCode() == 0) // Check exit code
{
qDebug() << "Successfully got Raspberry Pi Type:" << output.trimmed(); // Trim output to remove whitespace


if(output.trimmed() == "a020d3" || output.trimmed() == "a020d4")
{
piType = "3B+";
}
else if(output.trimmed() == "a02082" || output.trimmed() == "a22082" || output.trimmed() == "a32082" || output.trimmed() == "a52082" || output.trimmed() == "a22083")
{
piType = "3B";
}
else
{
piType = "Unknown";
}
}
else
{
qDebug() << "Failed to get Raspberry Pi type. Exit Code:" << process.exitCode();
}

return piType; // Convert QByteArray to QString and trim
}

bool AboutWidget::getEventModeState()
{
QProcess eventModeProcess;
Expand Down Expand Up @@ -152,21 +193,20 @@ void AboutWidget::eventModeBackground(int checked)

ui->toggleSwitch->setEnabled(false);

if (checked == 2) //Enable Event Mode
if (checked == 2) // Enable Event Mode
{

setEventModeState("true");
emit eventModeEnabled();
NetworkManager::ref().deactivateAP();
ui->toggleSwitch->setEnabled(true);
}
else //Disable Event Mode
else // Disable Event Mode
{
setEventModeState("false");
emit eventModeDisabled();
NetworkManager::ref().enableAP();
ui->toggleSwitch->setEnabled(true);

}
}

Expand Down
134 changes: 105 additions & 29 deletions ui/AboutWidget.ui
Original file line number Diff line number Diff line change
Expand Up @@ -80,35 +80,6 @@
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="version">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<family>Sans</family>
<pointsize>14</pointsize>
<italic>false</italic>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">QLabel{
background-color: transparent;
}</string>
</property>
<property name="text">
<string>Version 30.0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_5">
<property name="font">
Expand All @@ -128,6 +99,111 @@
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="versionPiTypeHorizontal">
<property name="spacing">
<number>0</number>
</property>
<property name="leftMargin">
<number>200</number>
</property>
<property name="rightMargin">
<number>150</number>
</property>
<item>
<widget class="QLabel" name="version">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>160</width>
<height>16777215</height>
</size>
</property>
<property name="font">
<font>
<family>Sans</family>
<pointsize>14</pointsize>
<italic>false</italic>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">QLabel{
background-color: transparent;
}</string>
</property>
<property name="text">
<string>Version 30.0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="dash">
<property name="maximumSize">
<size>
<width>20</width>
<height>16777215</height>
</size>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string>-</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="piTypeLabel">
<property name="maximumSize">
<size>
<width>125</width>
<height>16777215</height>
</size>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string>Raspberry Pi: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="piType">
<property name="maximumSize">
<size>
<width>100</width>
<height>16777215</height>
</size>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QLabel" name="label_4">
<property name="font">
Expand Down

0 comments on commit d1dc1a3

Please sign in to comment.