This way children do not need to include the full header to get access to some utility functions for changing the titles and icons of tabpages (and in fact do not need to know that there are tabs, could be something else)
20 lines
595 B
C++
20 lines
595 B
C++
#ifndef IDATABASEWINDOW_H
|
|
#define IDATABASEWINDOW_H
|
|
|
|
#include <QIcon>
|
|
#include <QString>
|
|
|
|
class OpenDatabase;
|
|
class QWidget;
|
|
/** Abstract class definition to make some functions
|
|
* available to other classes without having to know everything about the window.
|
|
*/
|
|
class IDatabaseWindow {
|
|
public:
|
|
virtual void setTitleForWidget(QWidget* widget, QString title, QString hint) = 0;
|
|
virtual void setIconForWidget(QWidget* widget, QIcon icon) = 0;
|
|
virtual std::shared_ptr<OpenDatabase> openDatabase() = 0;
|
|
virtual void showStatusBarMessage(QString message) = 0;
|
|
};
|
|
|
|
#endif // IDATABASEWINDOW_H
|