Show webfinger if displayName is unknown for an author.
[larjonas-pumpa.git] / src / objectwidgetwithsignals.h
blob6652dae803a26fbb190471980b1b464e71112c97
1 /*
2 Copyright 2013-2015 Mats Sjöberg
4 This file is part of the Pumpa programme.
6 Pumpa is free software: you can redistribute it and/or modify it
7 under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
11 Pumpa is distributed in the hope that it will be useful, but WITHOUT
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
14 License for more details.
16 You should have received a copy of the GNU General Public License
17 along with Pumpa. If not, see <http://www.gnu.org/licenses/>.
20 #ifndef _OBJECTWIDGETWITHSIGNALS_H_
21 #define _OBJECTWIDGETWITHSIGNALS_H_
23 #include <QFrame>
24 #include "qactivitystreams.h"
26 //------------------------------------------------------------------------------
28 class ObjectWidgetWithSignals : public QFrame {
29 Q_OBJECT
31 public:
32 ObjectWidgetWithSignals(QWidget* parent = 0);
34 virtual void changeObject(QASAbstractObject* obj) = 0;
36 virtual QASAbstractObject* asObject() const = 0;
38 static void connectSignals(ObjectWidgetWithSignals* ow, QWidget* w);
40 static void disconnectSignals(ObjectWidgetWithSignals* ow, QWidget* w);
42 virtual void refreshTimeLabels() = 0;
44 signals:
45 void linkHovered(const QString&);
46 void like(QASObject*);
47 void share(QASObject*);
48 void newReply(QASObject*, QASObjectList*, QASObjectList*);
49 void follow(QString, bool);
50 void deleteObject(QASObject*);
51 void editObject(QASObject*);
52 void request(QString, int);
54 protected:
55 void refreshObject(QASAbstractObject* obj);
58 #endif /* _OBJECTWIDGETWITHSIGNALS_H_ */