File indexing completed on 2023-05-30 11:40:28

0001 /*
0002     Auto away-presence setter-class
0003     Copyright (C) 2011  Martin Klapetek <martin.klapetek@gmail.com>
0004 
0005     This library is free software; you can redistribute it and/or
0006     modify it under the terms of the GNU Lesser General Public
0007     License as published by the Free Software Foundation; either
0008     version 2.1 of the License, or (at your option) any later version.
0009 
0010     This library is distributed in the hope that it will be useful,
0011     but WITHOUT ANY WARRANTY; without even the implied warranty of
0012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0013     Lesser General Public License for more details.
0014 
0015     You should have received a copy of the GNU Lesser General Public
0016     License along with this library; if not, write to the Free Software
0017     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
0018 */
0019 
0020 
0021 #ifndef AUTOAWAY_H
0022 #define AUTOAWAY_H
0023 
0024 #include "telepathy-kded-module-plugin.h"
0025 
0026 class AutoAway : public TelepathyKDEDModulePlugin
0027 {
0028     Q_OBJECT
0029 
0030 public:
0031     explicit AutoAway(QObject *parent = 0);
0032     ~AutoAway();
0033 
0034     QString pluginName() const;
0035 
0036 public Q_SLOTS:
0037     void reloadConfig();
0038 
0039 private Q_SLOTS:
0040     void timeoutReached(int id);
0041     void backFromIdle();
0042 
0043 private:
0044     int m_awayTimeoutId;
0045     int m_extAwayTimeoutId;
0046 
0047     Tp::Presence m_awayPresence;
0048     Tp::Presence m_extAwayPresence;
0049 };
0050 
0051 #endif // AUTOAWAY_H