新增窗口
This commit is contained in:
parent
30372e2c32
commit
19e4ec2930
@ -23,5 +23,6 @@
|
|||||||
<file>Donate/Alipay.jpg</file>
|
<file>Donate/Alipay.jpg</file>
|
||||||
<file>Donate/QQ.png</file>
|
<file>Donate/QQ.png</file>
|
||||||
<file>Donate/Wechat.png</file>
|
<file>Donate/Wechat.png</file>
|
||||||
|
<file>icon/tux.png</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
@ -12,6 +12,7 @@ SOURCES += \
|
|||||||
aboutwindow.cpp \
|
aboutwindow.cpp \
|
||||||
aptpkginfo.cpp \
|
aptpkginfo.cpp \
|
||||||
kernelinformation.cpp \
|
kernelinformation.cpp \
|
||||||
|
kernelinformationdialog.cpp \
|
||||||
kernelinstaller.cpp \
|
kernelinstaller.cpp \
|
||||||
main.cpp \
|
main.cpp \
|
||||||
mainwindow.cpp \
|
mainwindow.cpp \
|
||||||
@ -21,12 +22,14 @@ HEADERS += \
|
|||||||
aboutwindow.h \
|
aboutwindow.h \
|
||||||
aptpkginfo.h \
|
aptpkginfo.h \
|
||||||
kernelinformation.h \
|
kernelinformation.h \
|
||||||
|
kernelinformationdialog.h \
|
||||||
kernelinstaller.h \
|
kernelinstaller.h \
|
||||||
mainwindow.h \
|
mainwindow.h \
|
||||||
programinfo.h
|
programinfo.h
|
||||||
|
|
||||||
FORMS += \
|
FORMS += \
|
||||||
aboutwindow.ui \
|
aboutwindow.ui \
|
||||||
|
kernelinformationdialog.ui \
|
||||||
kernelinstaller.ui \
|
kernelinstaller.ui \
|
||||||
mainwindow.ui
|
mainwindow.ui
|
||||||
|
|
||||||
|
BIN
icon/tux.png
Normal file
BIN
icon/tux.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.5 KiB |
16
kernelinformationdialog.cpp
Normal file
16
kernelinformationdialog.cpp
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#include "kernelinformationdialog.h"
|
||||||
|
#include "ui_kernelinformationdialog.h"
|
||||||
|
|
||||||
|
KernelInformationDialog::KernelInformationDialog(QJsonObject data, QWidget *parent) :
|
||||||
|
QDialog(parent),
|
||||||
|
ui(new Ui::KernelInformationDialog)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
// 解析数据
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
KernelInformationDialog::~KernelInformationDialog()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
23
kernelinformationdialog.h
Normal file
23
kernelinformationdialog.h
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#ifndef KERNELINFORMATIONDIALOG_H
|
||||||
|
#define KERNELINFORMATIONDIALOG_H
|
||||||
|
|
||||||
|
#include <QDialog>
|
||||||
|
#include <QJsonObject>
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class KernelInformationDialog;
|
||||||
|
}
|
||||||
|
|
||||||
|
class KernelInformationDialog : public QDialog
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit KernelInformationDialog(QJsonObject data, QWidget *parent = nullptr);
|
||||||
|
~KernelInformationDialog();
|
||||||
|
|
||||||
|
private:
|
||||||
|
Ui::KernelInformationDialog *ui;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // KERNELINFORMATIONDIALOG_H
|
85
kernelinformationdialog.ui
Normal file
85
kernelinformationdialog.ui
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>KernelInformationDialog</class>
|
||||||
|
<widget class="QDialog" name="KernelInformationDialog">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>400</width>
|
||||||
|
<height>300</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Dialog</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="linuxIconShower">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string><html><head/><body><p><img src=":/icon/tux.png"/></p></body></html></string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="m_kernelName">
|
||||||
|
<property name="text">
|
||||||
|
<string>Kernel Name:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="text">
|
||||||
|
<string>Kernel Version:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="verticalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="verticalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
@ -8,6 +8,8 @@
|
|||||||
#include <QStandardItemModel>
|
#include <QStandardItemModel>
|
||||||
#include <qdesktopservices.h>
|
#include <qdesktopservices.h>
|
||||||
|
|
||||||
|
#include "kernelinformationdialog.h"
|
||||||
|
|
||||||
MainWindow::MainWindow(QWidget *parent)
|
MainWindow::MainWindow(QWidget *parent)
|
||||||
: QMainWindow(parent)
|
: QMainWindow(parent)
|
||||||
, ui(new Ui::MainWindow)
|
, ui(new Ui::MainWindow)
|
||||||
@ -210,3 +212,23 @@ void MainWindow::on_actionDonate_triggered()
|
|||||||
QDesktopServices::openUrl(QUrl("https://gitee.com/GXDE-OS#%E8%AF%B7%E4%BD%9C%E8%80%85%E5%96%9D%E6%9D%AF%E8%8C%B6"));
|
QDesktopServices::openUrl(QUrl("https://gitee.com/GXDE-OS#%E8%AF%B7%E4%BD%9C%E8%80%85%E5%96%9D%E6%9D%AF%E8%8C%B6"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void MainWindow::on_m_kernelShow_doubleClicked(const QModelIndex &index)
|
||||||
|
{
|
||||||
|
// 显示具体信息
|
||||||
|
QModelIndex list = index;
|
||||||
|
int row = list.row();
|
||||||
|
if(row < 0) {
|
||||||
|
// 未选中任何内容
|
||||||
|
QMessageBox::critical(this, tr("Error"), tr("Nothing to choose"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 获取 ID
|
||||||
|
QModelIndex chooseIndex = ui->m_kernelShow->model()->index(row, 0);
|
||||||
|
int id = ui->m_kernelShow->model()->data(chooseIndex).toUInt();
|
||||||
|
// 获取选中行
|
||||||
|
KernelInformationDialog dialog(kernelInformation->get_kernelData(id));
|
||||||
|
dialog.exec();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -45,6 +45,8 @@ private slots:
|
|||||||
|
|
||||||
void on_actionDonate_triggered();
|
void on_actionDonate_triggered();
|
||||||
|
|
||||||
|
void on_m_kernelShow_doubleClicked(const QModelIndex &index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::MainWindow *ui;
|
Ui::MainWindow *ui;
|
||||||
KernelInformation *kernelInformation;
|
KernelInformation *kernelInformation;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user