#pragma once

#include "Fenster.h"

namespace Framework
{
    class UIDialog : public Fenster
    {
    protected:
        DLLEXPORT void adjustSize();

    public:
        DLLEXPORT UIDialog(Schrift* schrift);
        DLLEXPORT virtual ~UIDialog();
        //! Fügt dem Fenster eine Zeichnung hinzu
        //! \param obj Die Zeichnung
        DLLEXPORT virtual void addMember(Zeichnung* obj) override;
        //! Entfernt eine Zeichnung aus dem Fenster
        //! \param zObj Die Zeichnung (ohne erhöhten reference Counter)
        DLLEXPORT virtual void removeMember(Zeichnung* zObj) override;
        //! Entfernt alle Zeichnungen aus dem Fenster
        DLLEXPORT virtual void removeAll() override;
    };

    class UIMessageDialog : public UIDialog
    {
    public:
        DLLEXPORT UIMessageDialog(
            const char* titel, const char* message, Schrift* schrift);
        DLLEXPORT virtual ~UIMessageDialog();
    };

} // namespace Framework