pgLab/pglab/IDatabaseWindow.h

27 lines
742 B
C
Raw Permalink Normal View History

#ifndef IDATABASEWINDOW_H
#define IDATABASEWINDOW_H
#include <QIcon>
#include <QString>
#include <memory>
namespace Pgsql {
class Result;
}
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;
virtual void newCodeGenPage(QString query, std::shared_ptr<const Pgsql::Result> dbres) = 0;
};
#endif // IDATABASEWINDOW_H