view ui/trayicon.h @ 1332:8362e30f7b55

(issue139) Check that pid is not running if the lock can be aquired If the lock on the lockfile can be aquired it might still be possible that another process is running. So we read the pid from the lockfile and check if another process with the same installation prefix as us is running.
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 15 Oct 2014 14:19:46 +0200
parents 2a1aa9df8f11
children
line wrap: on
line source
#ifndef TRAYICON_H
#define TRAYICON_H
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU GPL (v>=2)
 * and comes with ABSOLUTELY NO WARRANTY!
 * See LICENSE.txt for details.
 */

#include <QWidget>
#include <QSystemTrayIcon>


class QMessageBox;

/**@brief User notification interface
 *
 * This class provides an inherited implmentation of QSystemTrayIcon
 * to be more flexible on platforms where no SystemTray is available.
 *
 * This class should become obsolete once Qt improves the support for
 * StatusNotifier icons that are used in Plasma 5 and Unity.
 */
class TrayIcon :  public QSystemTrayIcon
{
    Q_OBJECT
public:
    TrayIcon (QObject *parent);

    void show();
    bool isAlternative() {return useAlt;}

public Q_SLOTS:
    void showMessage(const QString &title, const QString &msg,
                     QSystemTrayIcon::MessageIcon icon = QSystemTrayIcon::Information, int msecs = 10000,
                     const QString &okBtnText = QString());
private Q_SLOTS:
    void messageDestroyed();

private:
    bool useAlt;
    QMessageBox *mMessageBox;
};

#endif // TRAYICON_H

http://wald.intevation.org/projects/trustbridge/