Esempio n. 1
0
void MainWindow::setCurrentWindow(int id) {
    QString buttonToolTip ;
    QString buttonName = QString::number(id) + "_toolButton";
    QList<QPushButton*> buttons = rightPanelWidget->findChildren<QPushButton*>();
    foreach (QPushButton* button,buttons) {
        if (button->objectName() == buttonName) {
            button->setChecked(true);
            buttonToolTip = button->toolTip();
        }
        else
            button->setChecked(false);
    }

    stackedWidget->slideInIdx(id);

    // Update widget data.
    switch (id) {
    case ServiceLog:
        emit updateLogs();
        break;
    case ScreenshotMonitor:
        emit updateScreenshots();
        break;
    case UserSettings:
        emit updateStatistics();
    default:
        break;
    }

    currentPageLabel->setText("<font color=gray>"+buttonToolTip+"</font>");
    this->statusBar()->addPermanentWidget(currentPageLabel);
}
void LogManager::PushLog(const QString &log)
{
    QTime time = QTime::currentTime();
    QString currentTime = time.toString("hh:mm:ss.zzz");

    QString str = "[ " + currentTime + " ]  " + log;
    logs.append(str);
    emit updateLogs(str);    
}
Esempio n. 3
0
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{    
    HomeWidget* homeWidget = new HomeWidget;
    SettingsWidget* settingsWidget = new SettingsWidget;
    LogsWidget* logsWidget = new LogsWidget;
    ScreenshotWidget* screenshotWidget = new ScreenshotWidget;
    BrowseTimeWidget* browseTimeWidget = new BrowseTimeWidget;
    WebsiteLockerWidget* websiteLockerWidget = new WebsiteLockerWidget;
    ProgramLockerWidget* programLockerWidget = new ProgramLockerWidget;

    currentPageLabel = new QLabel;
    versionLabel = new QLabel;
    versionLabel->setObjectName("versionLabel");

    connect(homeWidget,SIGNAL(updateModel()),settingsWidget,SLOT(updateUsersModel()));
    connect(homeWidget,SIGNAL(updateModel()),logsWidget,SLOT(updateUsersModel()));
    connect(homeWidget,SIGNAL(updateModel()),screenshotWidget,SLOT(updateUsersModel()));
    connect(homeWidget,SIGNAL(updateModel()),browseTimeWidget,SLOT(updateUsersModel()));
    connect(homeWidget,SIGNAL(updateModel()),websiteLockerWidget,SLOT(updateUsersModel()));
    connect(homeWidget,SIGNAL(updateModel()),programLockerWidget,SLOT(updateUsersModel()));

    connect(homeWidget,SIGNAL(registerd()),this,SLOT(readAvailableDays()));

    connect(this,SIGNAL(updateLogs()),logsWidget,SLOT(updateLog()));
    connect(this,SIGNAL(updateScreenshots()),screenshotWidget,SLOT(updateScreenshot()));
    connect(this,SIGNAL(updateStatistics()),settingsWidget,SLOT(updateStatistics()));

    stackedWidget = new SlidingStackedWidget(this);
    stackedWidget->addWidget(homeWidget);
    stackedWidget->addWidget(settingsWidget);
    stackedWidget->addWidget(logsWidget);
    stackedWidget->addWidget(screenshotWidget);
    stackedWidget->addWidget(browseTimeWidget);
    stackedWidget->addWidget(websiteLockerWidget);
    stackedWidget->addWidget(programLockerWidget);
    stackedWidget->setSpeed(500);

    this->setCentralWidget(stackedWidget);
    createDockWidget();
    readAvailableDays();
    createStatusBar();

    this->setWindowTitle("نظام حاجب");
    this->setWindowIcon((QIcon(":/images/hajibIcon.ico")));
    this->setFixedWidth(800);
    this->setFixedHeight(600);

    this->setCurrentWindow(0);
}
void viewGVpropertieslayout::deleteCurrentLog() {

    // get the log index
    int dataIndex = datas->currentRow();

    // check that we have a selection
    if (dataIndex < 0)
        return;

    // delete the log file
    QDir dir;
    dir.remove(logs[dataIndex]->logFileXMLname);
    dir.remove(logs[dataIndex]->logFile.fileName());

    // remove the log
    logData * log = logs[dataIndex];
    logs.erase(logs.begin()+dataIndex);
    delete log;

    // refresh display
    updateLogs();

}
void viewGVpropertieslayout::loadDataFiles(QStringList fileNames, QDir * path) {

    // load the files
    for (int i = 0; i < fileNames.size(); ++i) {

        bool exists = false;

        QString logXMLname;
        if (path)
            logXMLname = path->absoluteFilePath(fileNames[i]);
        else
            logXMLname = fileNames[i];

        // check if we have the log
        for (int i = 0; i < logs.size(); ++i) {
            if (logs[i]->logFileXMLname == logXMLname) {
                refreshLog(logs[i]);
                exists = true;
            }
        }

        // otherwise...
        if (!exists) {
            logData * log = new logData();
            log->logFileXMLname = logXMLname;
            if (!log->setupFromXML()) {
                qDebug() << "Failed to read XML";
                delete log;
                continue;
            }
            logs.push_back(log);
        }
    }
    updateLogs();

}