#include "Interface.h" #include "../../Initialisierung/Initialisierung.h" #include // Inhalt der Interface Klasse aus Interface.h // Konstruktor // zS: Ein Zeiger auf die zu verwendende Schrift Interface::Interface( Schrift *zS ) { beenden = initKnopf( 10, 10, 100, 20, zS, Knopf::Style::Normal, "beenden" ); verlassen = 0; ref = 1; } // Destruktor Interface::~Interface() { beenden->release(); } // Verarbeitet eine Mausnachricht // me: Die Nachricht die verarbeitet werden soll void Interface::doMausEreignis( MausEreignis &me ) { bool vera = me.verarbeitet; beenden->doMausEreignis( me ); if( me.verarbeitet && !vera && me.id == ME_RLinks ) { verlassen = 1; } } // Zeichnet das Interface nach uRObj // zRObj: Das Bild in das gezeichnet werden soll void Interface::render( Bild &zRObj ) { beenden->render( zRObj ); } // Setzt das Interface in den Initialisierungszustand zurück void Interface::reset() { verlassen = 0; } // Gibt zurück, ob der Benutzer den Editor verlassen möchte bool Interface::hatVerlassen() const { return verlassen; } // erhöht den Reference Counter // return: this Interface *Interface::getThis() { ref++; return this; } // verringert den Reference Counter und löscht das Objekt wenn es nicht mehr gebraucht wird. // return: 0 Interface *Interface::release() { if( !--ref ) delete this; return 0; }