1 #ifndef CARDFRAME_H 2 #define CARDFRAME_H 3 4 #include "carddatabase.h" 5 6 #include <QTabWidget> 7 8 class AbstractCardItem; 9 class CardInfoPicture; 10 class CardInfoText; 11 class QVBoxLayout; 12 class QSplitter; 13 14 class CardFrame : public QTabWidget 15 { 16 Q_OBJECT 17 private: 18 CardInfoPtr info; 19 CardInfoPicture *pic; 20 CardInfoText *text; 21 bool cardTextOnly; 22 QWidget *tab1, *tab2, *tab3; 23 QVBoxLayout *tab1Layout, *tab2Layout, *tab3Layout; 24 QSplitter *splitter; 25 26 public: 27 enum ViewMode 28 { 29 ImageOnlyView, 30 TextOnlyView, 31 ImageAndTextView 32 }; 33 explicit CardFrame(const QString &cardName = QString(), QWidget *parent = nullptr); 34 void retranslateUi(); 35 36 public slots: 37 void setCard(CardInfoPtr card); 38 void setCard(const QString &cardName); 39 void setCard(AbstractCardItem *card); 40 void clearCard(); 41 void setViewMode(int mode); 42 }; 43 44 #endif 45