Exemple #1
0
void MainWindow::updateTrayIcon()
{
    QSettings settings;
    if (bool(m_trayIcon) == settings.value(QLatin1String("ui/main/closeToTray"), false))
        return;

    if (m_trayIcon)
    {
        m_trayIcon->hide();
        m_trayIcon->deleteLater();
        m_trayIcon = 0;
    }
    else
    {
        m_trayIcon = new QSystemTrayIcon(windowIcon(), this);
		m_trayIcon->setToolTip(tr("Bluecherry Client"));

		QMenu *menu = new QMenu(this);
		menu->setDefaultAction(menu->addAction(tr("Open Bluecherry Client"), this, SLOT(showFront())));
		menu->addAction(tr("Quit"), qApp, SLOT(quit()));
		m_trayIcon->setContextMenu(menu);

        connect(m_trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
                SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

        m_trayIcon->show();
    }
}
Exemple #2
0
Tray::Tray( QWidget * parent, const QString & UserName):
   QSystemTrayIcon( parent),
   icon( afqt::stoq( af::Environment::getAfRoot()) + "/icons/talk_tray.png"),
   icon_msg( afqt::stoq( af::Environment::getAfRoot()) + "/icons/talk_tray_msg.png"),
   icon_flashing( false),
   icon_state( false),
   username( UserName),
   trayToolTipHeader("afTalk users:")
{
   connect( this, SIGNAL(     activated( QSystemTrayIcon::ActivationReason )),
            this, SLOT(   trayActivated( QSystemTrayIcon::ActivationReason )));

   QAction * restoreAction = new QAction(tr("&Hide|Raise"), this);
   connect(  restoreAction,  SIGNAL( triggered()), parent, SLOT( hideRaiseDialog()));
   QAction * quitAction    = new QAction(tr("&Quit" ), this);
   connect(  quitAction,     SIGNAL( triggered()), qApp,   SLOT( quit()));

   QMenu *trayIconMenu = new QMenu( parent);
   trayIconMenu->addAction( restoreAction);
   trayIconMenu->addSeparator();
   trayIconMenu->addAction( quitAction);
   setContextMenu(trayIconMenu);

   timer = new QTimer( this);
   timer->setInterval( 500);
   connect( timer, SIGNAL( timeout()), this, SLOT( changeIcon()));

   setIcon( icon);
   setToolTip("af Talk");
   show();
}
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    setWindowIcon(QIcon(":icons/icon.png"));
    setWindowTitle("quickly translate");
    QSystemTrayIcon * trayIcon = new QSystemTrayIcon(this);
    mNetManager = new QNetworkAccessManager(this);
    mLangageModel = new LanguageModel;

    trayIcon->setIcon(QIcon(":icons/icon.png"));

    trayIcon->setContextMenu(ui->menuFile);
    trayIcon->show();

    ui->dockWidget->hide();
    ui->sourceComboBox->setModel(mLangageModel);
    ui->targetComboBox->setModel(mLangageModel);

    QDesktopWidget * desktop = new QDesktopWidget;

    QPoint startPos = QPoint(desktop->geometry().bottomRight() );
    QPoint finalPos = desktop->geometry().center() - QPoint(width()/2,height()/2);

    move(finalPos);
    connect(trayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),this,SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
    connect(ui->actionExit,SIGNAL(triggered()),this,SLOT(exit()));
    connect(ui->translateButton,SIGNAL(clicked()),this,SLOT(translate()));
    connect(ui->sourceTextEdit,SIGNAL(returnPressed()),this,SLOT(translate()));
    connect(ui->swapButton,SIGNAL(clicked()),this,SLOT(swapLangages()));

    connect(ui->actionCopy,SIGNAL(triggered()),this,SLOT(copy()));
    connect(ui->actionCut,SIGNAL(triggered()),this,SLOT(cut()));
    connect(ui->actionPast,SIGNAL(triggered()),this,SLOT(past()));
    connect(ui->actionPreferences,SIGNAL(triggered()),this,SLOT(showPreferences()));
    connect(ui->actionAboutQt,SIGNAL(triggered()),this,SLOT(showAboutQt()));
    connect(ui->actionAbout,SIGNAL(triggered()),this,SLOT(showAbout()));
    connect(ui->actionTTS,SIGNAL(triggered()),this,SLOT(showTextTTS()));


    connect(ui->sourceSoundButton,SIGNAL(clicked()),this,SLOT(textToSpeak()));
    connect(ui->targetSoundButton,SIGNAL(clicked()),this,SLOT(textToSpeak()));


    //    mPropertyAnimation  = new QPropertyAnimation(this, "pos");
    //    mPropertyAnimation->setDuration(800);
    //    mPropertyAnimation->setStartValue(startPos);
    //    mPropertyAnimation->setEndValue(finalPos);


    //load default langage

    QSettings settings;
    QString sourceId = settings.value("source").toString();
    QString targetId = settings.value("target").toString();
    ui->sourceComboBox->setCurrentIndex(mLangageModel->findLangageId(sourceId));
    ui->targetComboBox->setCurrentIndex(mLangageModel->findLangageId(targetId));

}
Exemple #4
0
void WpaGui::createTrayIcon(bool trayOnly)
{
	QApplication::setQuitOnLastWindowClosed(false);

	tray_icon = new QSystemTrayIcon(this);
	tray_icon->setToolTip(qAppName() + tr(" - wpa_supplicant user interface"));
	if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
		tray_icon->setIcon(QIcon(":/icons/wpa_gui.svg"));
	else
		tray_icon->setIcon(QIcon(":/icons/wpa_gui.png"));

	connect(tray_icon,
		SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
		this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

	ackTrayIcon = false;

	tray_menu = new QMenu(this);

	disconnectAction = new QAction(tr("&Disconnect"), this);
	reconnectAction = new QAction(tr("Re&connect"), this);
	connect(disconnectAction, SIGNAL(triggered()), this,
		SLOT(disconnect()));
	connect(reconnectAction, SIGNAL(triggered()), this,
		SLOT(connectB()));
	tray_menu->addAction(disconnectAction);
	tray_menu->addAction(reconnectAction);
	tray_menu->addSeparator();

	eventAction = new QAction(tr("&Event History"), this);
	scanAction = new QAction(tr("Scan &Results"), this);
	statAction = new QAction(tr("S&tatus"), this);
	connect(eventAction, SIGNAL(triggered()), this, SLOT(eventHistory()));
	connect(scanAction, SIGNAL(triggered()), this, SLOT(scan()));
	connect(statAction, SIGNAL(triggered()), this, SLOT(showTrayStatus()));
	tray_menu->addAction(eventAction);
	tray_menu->addAction(scanAction);
	tray_menu->addAction(statAction);
	tray_menu->addSeparator();

	showAction = new QAction(tr("&Show Window"), this);
	hideAction = new QAction(tr("&Hide Window"), this);
	quitAction = new QAction(tr("&Quit"), this);
	connect(showAction, SIGNAL(triggered()), this, SLOT(show()));
	connect(hideAction, SIGNAL(triggered()), this, SLOT(hide()));
	connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
	tray_menu->addAction(showAction);
	tray_menu->addAction(hideAction);
	tray_menu->addSeparator();
	tray_menu->addAction(quitAction);

	tray_icon->setContextMenu(tray_menu);

	tray_icon->show();

	if (!trayOnly)
		show();
	inTray = trayOnly;
}
Exemple #5
0
void MainWindow::createTrayIcon()
{
	_trayIcon = new QSystemTrayIcon(this);
	_trayIcon->setIcon(QIcon(":/Hussein.ico"));

	connect(_trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
	        this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
}
Exemple #6
0
void MainWindow::initApp()
{
    x11 = 0;
    ui->tabWidget->setDisabled(true);
    ui->statusBar->addPermanentWidget(ui->progressBar);
    ui->progressBar->hide();
    ui->pushButton->setEnabled(false);
    ui->queue->setHeaderHidden(false);

    tray = new QSystemTrayIcon(this);

    timer.start(); // get a time reference

    connect(&pkgsrc,SIGNAL(packageOptionsResult(QStringList)),this,SLOT(packageOptions(QStringList)));
    connect(&pkgsrc,SIGNAL(downloadFinished(int)),this,SLOT(pkgsrcDownloadFinished(int)));
    connect(&pkgsrc,SIGNAL(downloadStatus(qint64,qint64)),this,SLOT(pkgsrcDownloadStatus(qint64,qint64)));
    connect(&pkgsrc,SIGNAL(extractFinished(int)),this,SLOT(bootstrapExtractFinished(int)));
    connect(&pkgsrc,SIGNAL(extractStatus(QString)),this,SLOT(bootstrapExtractRead()));
    connect(&pkgsrc,SIGNAL(bootstrapFinished(int)),this,SLOT(bootstrapMakeFinished(int)));
    connect(&pkgsrc,SIGNAL(bootstrapStatus(QString)),this,SLOT(bootstrapMakeRead(QString)));
    connect(&pkgsrc,SIGNAL(bmakeFinished(int)),this,SLOT(queueFinished(int)));
    connect(&pkgsrc,SIGNAL(bmakeStatus(QString)),this,SLOT(queueRead(QString)));
    connect(&pkgsrc,SIGNAL(packageDependsResult(QStringList)),this,SLOT(packageDepends(QStringList)));
    connect(&pkgsrc,SIGNAL(packagesInstalledResult(QStringList)),this,SLOT(pkgsrcInstalledFinished(QStringList)));
    connect(&pkgsrc,SIGNAL(packageVersionResult(QString)),this,SLOT(pkgsrcPkgVersionFinished(QString)));
    connect(&pkgsrc,SIGNAL(packageNameResult(QString)),this,SLOT(pkgsrcPkgNameFinished(QString)));
    connect(&pkgsrc,SIGNAL(packagesVulnsResult(QStringList)),this,SLOT(pkgsrcPkgVulnCheckFinished(QStringList)));
    connect(&pkgsrc,SIGNAL(packageRemoveStatus(QString)),this,SLOT(delPackageLog(QString)));
    connect(&pkgsrc,SIGNAL(packageRemoveResult(int)),this,SLOT(delPackageDone(int)));
    connect(&pkgsrc,SIGNAL(pkgsrcReady()),this,SLOT(bootstrapCheck()));
    connect(&work,SIGNAL(updateListResult(QStringList)),this,SLOT(catchUpdates(QStringList)));
    connect(wiz.ui->save,SIGNAL(clicked()),this,SLOT(startWiz()));

    QSettings settings;
    settings.beginGroup("global");
    if (settings.value("firstrun").toInt()==1)
        pkgsrc.initPkgsrc(0,"",0,"");
    else {
        this->hide();
        wiz.show();
    }
    settings.endGroup();

    ui->actionSync->setDisabled(true); // sync can only be used after pkgsrcready and bmake must be blocked

    connect(tray,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),this,SLOT(trayActivated()));
    tray->setIcon(QIcon(":/files/tray.png"));
    tray->setToolTip("UserPKG");
    if (tray->isSystemTrayAvailable()) {
        tray->show();
    }
    if (tray->isVisible()) {
        for (int i = 0; i < QApplication::arguments().size(); ++i) {
            if (QApplication::arguments().at(i).contains("--tray"))
                this->hide();
        }
    }
}
Exemple #7
0
MixerTray::MixerTray() : QSystemTrayIcon(){
  starting = true;
  //Initialize the settings backend
  settings = new QSettings("TrueOS", "pc-mixer");
  //Initialize all the widgets
  isMuted = false;
  slider = new QSlider(Qt::Vertical, 0);
    slider->setRange(0,100);
    slider->setTickPosition(QSlider::NoTicks);
  slideA  = new QWidgetAction(0);
	slideA->setDefaultWidget(slider);
  mute = new QToolButton(0);
  muteA = new QWidgetAction(0);
	muteA->setDefaultWidget(mute);
  mixer = new QToolButton(0);
	mixer->setText(tr("Mixer"));
	mixer->setIcon(QIcon(":icons/configure.png"));
	mixer->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
  mixerA = new QWidgetAction(0);
	mixerA->setDefaultWidget(mixer);

  //Get output devices


  actionMenu = new QMenu(0);
	actionMenu->addAction(slideA);
	actionMenu->addAction(muteA);
	actionMenu->addSeparator();
    soundOutput = new QMenu(tr("Output"));
    slotFillOutputDevices();
    if (soundOutput->actions().size()>1)
        actionMenu->addMenu(soundOutput);
	actionMenu->addAction(mixerA);
  //Now initialize the GUI
  GUI = new MixerGUI(settings);

  //Connect the signals/slots
  connect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayActivated()) );
  connect(mixer, SIGNAL(clicked()), this, SLOT(openMixerGUI()) );
  connect(mute, SIGNAL(clicked()), this, SLOT(muteClicked()) );
  connect(slider, SIGNAL(valueChanged(int)), this, SLOT(sliderChanged(int)) );
  connect(GUI, SIGNAL(updateTray()), this, SLOT(loadVol()) );
  connect(GUI, SIGNAL(outChanged()), this, SLOT(slotFillOutputDevices()) );
  connect(actionMenu, SIGNAL(hovered(QAction*)), this, SLOT(hoverDisable(QAction*)) );
  
  //Show a quick icon to prevent a warning message
  this->setIcon(QIcon(":icons/audio-volume-high.png"));
  CVOL = 101; //quick default to maximize it
  CDIFF = 0;
  //Make sure no single-instance events for 30 seconds
  QTimer::singleShot(30000, this, SLOT(doneStarting()) );
  QTimer::singleShot(10, this, SLOT(loadVol()) ); //Update the UI
  
  //This timer will be fired in doneStarting()
  timer = new QTimer();
  timer->setInterval(500);
  connect(timer, SIGNAL(timeout()), this, SLOT(loadVol()) );
}
Exemple #8
0
void TimeGuard::setupTray()
{
  trayIcon = new QSystemTrayIcon(programIcon, this);
  trayIcon->setVisible(true);

  trayContextMenu = new QMenu(this);
  trayContextMenu->setStyleSheet("width: 125px");
  createActions();
  addActions();
  trayIcon->setContextMenu(trayContextMenu);

  connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
          this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
}
void
MainWindow::setupTrayIcon()
{

#ifndef Q_OS_MAC
    pTrayIcon = new QSystemTrayIcon(QIcon(":/logo"), this);
    pTrayIcon->setToolTip("Entomologist");
    connect(pTrayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
            this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
    pTrayIconMenu = new QMenu(this);
    pTrayIconMenu->addAction(ui->action_Quit);
    pTrayIcon->setContextMenu(pTrayIconMenu);
    pTrayIcon->show();
#endif
}
Exemple #10
0
StatusIcon::StatusIcon(QObject *parent) : QObject(parent)
{
    m_tray = new QmmpTrayIcon(this);
    connect(m_tray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
    //m_tray->show();
    m_core = SoundCore::instance();
    m_player = MediaPlayer::instance();
    QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
    settings.beginGroup("Tray");
    m_showMessage = settings.value("show_message",true).toBool();
    m_messageDelay = settings.value("message_delay", 2000).toInt();
    m_hideToTray = settings.value("hide_on_close", false).toBool();
    m_useStandardIcons = settings.value("use_standard_icons",false).toBool();
    m_tooltip = settings.value("show_tooltip",true).toBool();
    m_formatter.setPattern("%p%if(%p&%t, - ,)%t");
#ifdef Q_WS_X11
    m_tray->showNiceToolTip(m_tooltip);
#endif
    if(m_useStandardIcons)
        m_tray->setIcon(QApplication::style ()->standardIcon(QStyle::SP_MediaStop));
    else
        m_tray->setIcon(QIcon(":/tray_stop.png"));
    m_tray->show();
    settings.endGroup();
    //actions
    m_menu = new QMenu();
    QIcon playIcon = QApplication::style()->standardIcon(QStyle::SP_MediaPlay);
    QIcon pauseIcon = QApplication::style()->standardIcon(QStyle::SP_MediaPause);
    QIcon stopIcon = QApplication::style()->standardIcon(QStyle::SP_MediaStop);
    QIcon nextIcon = QApplication::style()->standardIcon(QStyle::SP_MediaSkipForward);
    QIcon previousIcon = QApplication::style()->standardIcon(QStyle::SP_MediaSkipBackward);
    m_menu->addAction(playIcon,tr("Play"), m_player, SLOT(play()));
    m_menu->addAction(pauseIcon,tr("Pause"), m_core, SLOT(pause()));
    m_menu->addAction(stopIcon,tr("Stop"), m_core, SLOT(stop()));
    m_menu->addSeparator();
    m_menu->addAction(nextIcon, tr("Next"), m_player, SLOT(next()));
    m_menu->addAction(previousIcon, tr("Previous"), m_player, SLOT(previous()));
    m_menu->addSeparator();
    m_menu->addAction(tr("Exit"), UiHelper::instance(), SLOT(exit()));
    m_tray->setContextMenu(m_menu);
    connect (m_core, SIGNAL(metaDataChanged ()), SLOT(showMetaData()));
    connect (m_core, SIGNAL(stateChanged (Qmmp::State)), SLOT(setState(Qmmp::State)));
    setState(m_core->state()); //update state
    if (m_core->state() == Qmmp::Playing) //show test message
        QTimer::singleShot(1500, this, SLOT(showMetaData()));
}
Exemple #11
0
TrayIcon::TrayIcon(App& app)
    : app_(app),
      makeScreenshotAction_("Сделать скриншот", this),
      updateAction_("Обновить", this),
      settingsAction_("Настройки", this),
      historyMenu_("История"),
      quitAction_("Выход", this) {

#ifndef Q_OS_MACOS
    connect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
            this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
#endif

    connect(&makeScreenshotAction_, SIGNAL(triggered()),
            this, SLOT(makeScreenshotSlot()));

    connect(&updateAction_, SIGNAL(triggered()),
            this, SLOT(updateSlot()));

    connect(&settingsAction_, SIGNAL(triggered()),
            this, SLOT(showSettings()));

    connect(&quitAction_, SIGNAL(triggered()),
            qApp, SLOT(quit()));


#if defined(Q_OS_LINUX)
    setIcon(QIcon(":/icons/icon-22.png"));
#elif defined(Q_OS_WIN32)
    setIcon(QIcon(":/icons/icon-16.png"));
#elif defined(Q_OS_MACOS)
    setIcon(QIcon(":/icons/icon-22.png"));
#endif

    setToolTip("Screenshotgun");

    iconMenu_.addAction(&makeScreenshotAction_);
#if defined(Q_OS_WIN32) || defined(Q_OS_MACOS)
    iconMenu_.addAction(&updateAction_);
#endif
    iconMenu_.addAction(&settingsAction_);
    iconMenu_.addMenu(&historyMenu_);
    iconMenu_.addAction(&quitAction_);

    setContextMenu(&iconMenu_);
}
Exemple #12
0
Watcher::Watcher(QObject *parent) :
    WatcherBase(parent) {
    watcher = new QFileSystemWatcher(this);

    trayIconOff = QIcon(":/icons/res_tray_icon_black.png");
    trayIconOn  = QIcon(":/icons/res_tray_icon_color.png");
    trayMenu = new QSystemTrayIcon(this);
    connect(trayMenu, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
    trayIconToOff();
    QMenu *trayElements = new QMenu(Global::mainWindow);
    trayElements->addAction(tr("Show timeline"), this, SLOT(trayActivateApp()));
    trayElements->addAction(tr("Write a note"),  this, SLOT(writeNote()));
    trayMenu->setContextMenu(trayElements);
    trayMenu->show();

    feeling = new WatcherFeeling();
    feeling->setStyleSheet(Global::mainWindow->styleSheet());
}
Exemple #13
0
Qt4TrayIcon::Qt4TrayIcon(QWidget *parent) : Movie(0)
{
	kdebugf();

	setIcon(QIcon(docking_manager->defaultPixmap()));

	connect(docking_manager, SIGNAL(trayPixmapChanged(const QIcon&)), this, SLOT(setTrayPixmap(const QIcon&)));
	connect(docking_manager, SIGNAL(trayTooltipChanged(const QString&)), this, SLOT(setTrayTooltip(const QString&)));
	connect(docking_manager, SIGNAL(searchingForTrayPosition(QPoint&)), this, SLOT(findTrayPosition(QPoint&)));
	connect(docking_manager, SIGNAL(trayMovieChanged(const QString &)), this, SLOT(setTrayMovie(const QString &)));

	connect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

	show();
	setContextMenu(docking_manager->dockMenu());
	
	docking_manager->setDocked(true);

	kdebugf2();
}
Exemple #14
0
Qt4TrayIcon::~Qt4TrayIcon()
{
	kdebugf();

	if (Movie)
	{
		Movie->stop();
		Movie->deleteLater();
		Movie = 0;
	}

	disconnect(docking_manager, SIGNAL(trayMovieChanged(const QString &)), this, SLOT(setTrayMovie(const QString &)));
	disconnect(docking_manager, SIGNAL(trayPixmapChanged(const QIcon&)), this, SLOT(setTrayPixmap(const QIcon&)));
	disconnect(docking_manager, SIGNAL(trayTooltipChanged(const QString&)), this, SLOT(setTrayTooltip(const QString&)));
	disconnect(docking_manager, SIGNAL(searchingForTrayPosition(QPoint&)), this, SLOT(findTrayPosition(QPoint&)));

	disconnect(this, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

	docking_manager->setDocked(false);

	kdebugf2();
}
statswinimpl::statswinimpl(Hero *h) 
: QWidget(0,0)
{
	setupUi(this);
	hero = h;
	hwin = new herowinimpl(hero);
	diary = new diarywinimpl();
	
	stayontopToggle(false);
	connect(hero, SIGNAL(done(QString)), this, SLOT(loginDone(QString)));
	
	//трей

#ifdef Q_WS_WIN
        QResource res = QResource("bin/icon.bmp");
#else
        QResource res = QResource("src/icon_128.png");
#endif
	QPixmap pix;
        pix.loadFromData(res.data(), res.size());
	QIcon ico = QIcon(pix);
	tray = new QSystemTrayIcon(ico);
	tray->setVisible(true);
	connect(tray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
	
	//меню
	QMenu *menu = new QMenu();
	QAction *hideshow = menu->addAction(tr("Скрыть/Показать"));
	connect(hideshow, SIGNAL(triggered()), this, SLOT(hideshow()));
	menu->addSeparator();
	showmess = menu->addAction(tr("Показывать сообщения"));
	showmess->setCheckable(true);
	showmess->setChecked(true);
	QAction *stayontop = menu->addAction(tr("Поверх всех окон"));
	stayontop->setCheckable(true);
	stayontop->setChecked(false);
	connect(stayontop, SIGNAL(toggled(bool)), this, SLOT(stayontopToggle(bool)));
	menu->addSeparator();
	
	QAction *herotrbt = menu->addAction(tr("Герой"));
	connect(herotrbt, SIGNAL(triggered()), this, SLOT(on_btInfo_pressed()));
	QAction *diarytrbt = menu->addAction(tr("Дневник"));
	connect(diarytrbt, SIGNAL(triggered()), this, SLOT(on_btDiary_pressed()));
	menu->addSeparator();

        settingsDialog = new Dialog(this);
        connect(settingsDialog,SIGNAL(accepted()),this,SLOT(updateSettings()));
        QAction *settingstrbt = menu->addAction(tr("Настройки"));
        connect(settingstrbt,SIGNAL(triggered()),this,SLOT(settings()));
        menu->addSeparator();
        //settingstrbt->setEnabled(false);
	
	QAction *exit = menu->addAction(tr("Выход"));
	connect(exit, SIGNAL(triggered()), qApp, SLOT(quit()));
	connect(exit, SIGNAL(triggered()), tray, SLOT(hide()));
	
	tray->setContextMenu(menu);
	
	//таймер
	timer = new QTimer(this);
	timer->start(15000);
	connect(timer, SIGNAL(timeout()), this, SLOT(update()));
	
        mess = new HeroMessager();

        QSettings settings("godville.net", "godvilleQT");
        restoreGeometry(settings.value("statWinGeometry").toByteArray());
        this->setWindowOpacity(settings.value("statWinOp",100).toInt()/100);
}
Exemple #16
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    parent(parent),
    ui(new Ui::MainWindow),
    trayIcon(new QSystemTrayIcon(this)),
    trayIconMenu(new QMenu(this)),
    quitAction(new QAction("Zamknij", this)),
    restoreAction(new QAction("Przywróć", this)),
    wiadomosciAction(new QAction("Wiadomości", this)),
    wyslij(new QAction("Wyślij wiadomość", this)),
    info(new QAction("Informacje", this)),
    connection(new Connection(this))
{
    ui->setupUi(this);
    ui->Ustawienia_status->setText(QString("Rozłączony"));
    ui->Ustawienia_wersja->setText(QString("Wersja: ")+VERSION);
    connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));
    connect (ui->Ustawienia_b_aktualizuj, SIGNAL(clicked()), this, SLOT(aktualizujButtonClicked()));
    connect (ui->Ustawienia_b_zaloguj, SIGNAL(clicked()), this, SLOT(zalogujButtonClicked()));
    connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
    connect(restoreAction, SIGNAL(triggered()), this, SLOT(show()));
    connect(wiadomosciAction, SIGNAL(triggered()), this, SLOT(showWiadomosciDialog()));
    connect(ui->Grupy_list, SIGNAL(itemClicked(QListWidgetItem *)), this, SLOT(setGrupaDane(QListWidgetItem *)));
    connect(trayIcon, SIGNAL(messageClicked()), this, SLOT(trayMessageClicked()));
    setIconsAndTray();
    trayMessageState.first = QString("INFORMATION");
}
Exemple #17
0
Rekall::Rekall(const QStringList &arguments, QWidget *parent) :
    QDialog(parent) {
    trayIconWorking = false;
    trayIconIndex   = 0;
    trayIconIndexOld = 9999;
    Global::rekall = this;

    qApp->setAttribute(Qt::AA_UseHighDpiPixmaps);

    //Update
    updateManager = 0;
    forceUpdate = false;
    firstTimeOpened = newVersionOfRekall = false;
    if(arguments.contains("-forceupdate"))
        forceUpdate = true;

    //Tray icon
    trayTimer.setInterval(500);
    connect(&trayTimer,    SIGNAL(timeout()), SLOT(trayIconToOnPrivate()));
    connect(&trayTimerOff, SIGNAL(timeout()), SLOT(trayIconToOffPrivate()));
    QString prefix = "mac";
#ifdef Q_OS_WIN
    prefix = "win";
#endif
    for(quint16 i = 0 ; i <= 17 ; i++)
        trayIcons << QIcon(QString(":/icons/rekall-menubar-%1-%2.png").arg(prefix).arg(i, 2, 10, QChar('0')));
    trayIcon = new QSystemTrayIcon(this);
    trayIconToOffPrivate();
    trayTimer.start();
    connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), SLOT(trayActivated(QSystemTrayIcon::ActivationReason)));

    //Interfaces
    Global::userInfos = new UserInfos(this);
    Global::http      = new Http(this);
    Analyse *analyse  = new Analyse(this);
    Global::analyse   = analyse;
    connect(analyse, SIGNAL(trayChanged(QString,bool)), SLOT(analyseTrayChanged(QString,bool)));
    connect(analyse, SIGNAL(trayIconToOff()), SLOT(trayIconToOff()));
    connect(analyse, SIGNAL(trayIconToOn(qint16)), SLOT(trayIconToOn(qint16)));
    //Wrapper web
    Global::userInfos->setDockIcon(this, false);
    Global::webWrapper = new WebWrapper();

    /*
    VideoPlayer *player = new VideoPlayer();
    player->open(QUrl::fromLocalFile("/Users/guillaume/Documents/Rekall/Walden/Captations/captation WALDEN_TPV.mov"));
    player->seek(4000);
    */

    trayMenu = new QMenu(this);
    trayMenu->setSeparatorsCollapsible(true);
    trayAnalyse      = trayMenu->addAction(tr("File analysis…"));
    trayAnalysePause = trayMenu->addAction(tr("Pause analysis"));
    trayAnalysePause->setCheckable(true);
    connect(trayAnalysePause, SIGNAL(toggled(bool)), SLOT(trayAnalysePaused()));
    trayMenu->addSeparator();
    trayMenu->addAction(tr("Open welcome page"), this, SLOT(openWebPage()));
    trayMenu->addAction(tr("Open welcome page in webrowser"), this, SLOT(openWebPageInBrowser()));
    //trayMenu->addAction(tr("Create a new project"), this, SLOT(addProject()));
    trayMenu->addSeparator();
    trayMenuProjects = trayMenu->addAction(tr("Quit Rekall"), this, SLOT(closeRekall()));
    trayIcon->setContextMenu(trayMenu);
    trayIcon->show();
    trayIconToOnPrivate();

    QSettings settings;
    quint16 projectCount = settings.beginReadArray("projects");
    /*
    if(projectCount == 0) {
        addProject(new Project("walden",     "Walden", true, QFileInfo("/Users/guillaume/Documents/Rekall/Walden"), this));
        addProject(new Project("joris-test", "Joris", false, QFileInfo("/Users/guillaume/Documents/Rekall/joris-test"), this));
    }
    */
    connect(Global::udp, SIGNAL(outgoingMessage(QString,quint16,QString,QList<QVariant>)), SLOT(incomingMessage(QString,quint16,QString,QList<QVariant>)));

    for(quint16 projectIndex = 0 ; projectIndex < projectCount ; projectIndex++) {
        settings.setArrayIndex(projectIndex);
        Project *project = new Project(settings.value("name").toString(), settings.value("friendlyName").toString(), true, QFileInfo(settings.value("path").toString()), this);
        addProject(project);
    }
    settings.endArray();

    //foreach(ProjectInterface *project, Global::projects)
    //    project->load();


    //Global settings creation if needed
    globalSettings = new QSettings();
    if((globalSettings) && ((!globalSettings->childKeys().contains("id")) || (arguments.contains("-newuser")))) {
        firstTimeOpened = true;
        qsrand(QDateTime::currentDateTime().toTime_t());
        updateAnonymousId = QString::number(qrand());
        globalSettings->setValue("id", updateAnonymousId);
        globalSettings->setValue("version", "");
        globalSettings->setValue("updatePeriod", 1);
        globalSettings->setValue("lastUpdate",   QDateTime(QDate(2000, 01, 01)));
    }

    //Update management
    if((globalSettings) && (globalSettings->childKeys().contains("id"))) {
        QDateTime updateLastDate  = globalSettings->value("lastUpdate")  .toDateTime();
        quint16   updatePeriod    = globalSettings->value("updatePeriod").toUInt();
        updateAnonymousId         = globalSettings->value("id")          .toString();
        QString applicationVersionSettings = globalSettings->value("version").toString();
        if(applicationVersionSettings != QCoreApplication::applicationVersion()) {
            globalSettings->setValue("version", QCoreApplication::applicationVersion());
            firstTimeOpened = true;
        }

        qDebug("Last update : %s (should update each %d day(s))", qPrintable(updateLastDate.toString("dd/MM/yyyy hh:mm:ss")), updatePeriod);
        if((updateLastDate.daysTo(QDateTime::currentDateTime()) >= updatePeriod) || (forceUpdate))
            checkForUpdates();
    }

    askScreenshot = askAddProject = 0;
    startTimer(50);
    if(firstTimeOpened)
        showMessage(tr("Welcome!\nRekall is now running!"));
    else
        showMessage(tr("Rekall is now running!"));

    if(!arguments.contains("-silent"))
        openWebPage();

    /*
    QWebView *webView = new QWebView();
    webView->load(QUrl("http://127.0.0.1:23411"));
    webView->show();
    */
}