4#include <QLoggingCategory>
6#include "RabbitCommonTools.h"
8#include "./ui_MainWindow.h"
9#include "FileBrowser.h"
10#include "RabbitCommonDir.h"
11#include "FrmUpdater.h"
14static Q_LOGGING_CATEGORY(log,
"FileBrowser.MainWindow")
22#ifdef HAVE_RABBITCOMMON_GUI
23 RabbitCommon::CTools::InsertStyleMenu(ui->menuTools, ui->actionStatus_S);
24 ui->menuTools->insertMenu(ui->actionStatus_S, RabbitCommon::CTools::GetLogMenu(
this));
25 ui->menuTools->insertSeparator(ui->actionStatus_S);
29 setCentralWidget(pFB);
30 setWindowIcon(pFB->windowIcon());
31 setWindowTitle(pFB->windowTitle());
32 check = connect(pFB, SIGNAL(destroyed(QObject*)),
this, SLOT(close()));
34 check = connect(pFB, &CFileBrowser::sigChanged,
this,
35 [&](
const QString& szDir,
bool bDir){
40 QSettings set(RabbitCommon::CDir::Instance()->GetFileUserConfigure(),
41 QSettings::IniFormat);
43 = set.value(
"MainWindow/Status/Geometry").toByteArray();
44 if(!geometry.isEmpty())
45 restoreGeometry(geometry);
46 QByteArray state = set.value(
"MainWindow/Status/State").toByteArray();
50 bool bStatusBar = set.value(
"MainWindow/Status/Bar",
51 !statusBar()->isHidden()).toBool();
52 ui->actionStatus_S->setChecked(bStatusBar);
53 statusBar()->setVisible(bStatusBar);
56MainWindow::~MainWindow()
58 QSettings set(RabbitCommon::CDir::Instance()->GetFileUserConfigure(),
59 QSettings::IniFormat);
60 set.setValue(
"MainWindow/Status/Geometry", saveGeometry());
61 set.setValue(
"MainWindow/Status/State", saveState());
62 set.setValue(
"MainWindow/Status/Bar", !statusBar()->isHidden());
65 qDebug(log) <<
"MainWindow::~MainWindow()";
68void MainWindow::on_actionStatus_S_triggered(
bool checked)
70 statusBar()->setVisible(checked);
73void MainWindow::on_actionAbout_A_triggered()
77 dlg->setAttribute(Qt::WA_QuitOnClose,
true);
82void MainWindow::on_actionUpdate_U_triggered()
87 QIcon icon = windowIcon();
89 auto sizeList = icon.availableSizes();
90 if(!sizeList.isEmpty()) {
91 QPixmap p = icon.pixmap(*sizeList.begin());
92 m_pfrmUpdater->
SetTitle(p.toImage());
96 RC_SHOW_WINDOW(m_pfrmUpdater);
int SetTitle(QImage icon=QImage(), const QString &szTitle=QString())
SetTitle.
int SetInstallAutoStartup(bool bAutoStart=true)
Set install and automation startup.