|
@@ -39,6 +39,40 @@ UIDialog::UIDialog( Schrift *schrift )
|
|
|
UIDialog::~UIDialog()
|
|
|
{}
|
|
|
|
|
|
+void UIDialog::adjustSize()
|
|
|
+{
|
|
|
+ Punkt max = Punkt( 0, 0 );
|
|
|
+ for( auto m = getMembers(); m; m++ )
|
|
|
+ {
|
|
|
+ max.x = MAX( max.x, m->getX() + m->getBreite() + 5 );
|
|
|
+ max.y = MAX( max.y, m->getY() + m->getHeight() + 5 );
|
|
|
+ }
|
|
|
+ setSize( max + Punkt( getRBreite() * 2, getRBreite() * 2 + zTTextFeld()->getHeight() ) );
|
|
|
+}
|
|
|
+
|
|
|
+// Fügt dem Fenster eine Zeichnung hinzu
|
|
|
+// obj: Die Zeichnung
|
|
|
+void UIDialog::addMember( Zeichnung *obj )
|
|
|
+{
|
|
|
+ Fenster::addMember( obj );
|
|
|
+ adjustSize();
|
|
|
+}
|
|
|
+
|
|
|
+// Entfernt eine Zeichnung aus dem Fenster
|
|
|
+// zObj: Die Zeichnung (ohne erhöhten reference Counter)
|
|
|
+void UIDialog::removeMember( Zeichnung *zObj )
|
|
|
+{
|
|
|
+ Fenster::removeMember( zObj );
|
|
|
+ adjustSize();
|
|
|
+}
|
|
|
+
|
|
|
+// Entfernt alle Zeichnungen aus dem Fenster
|
|
|
+void UIDialog::removeAll()
|
|
|
+{
|
|
|
+ Fenster::removeAll();
|
|
|
+ adjustSize();
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
UIMessageDialog::UIMessageDialog( const char *titel, const char *message, Schrift *schrift )
|
|
|
: UIDialog( schrift )
|