فهرست منبع

An neues Framework angepasst

Kolja Strohm 5 سال پیش
والد
کامیت
b4fb0076e3

+ 1 - 1
ksgScript/Befehl/KSGSKlasse.cpp

@@ -203,7 +203,7 @@ MausEreignis KSGSKlasseInstanz::getMausEreignis() const
 			tmp->release();
 			return ret;
 		}
-		return MausEreignis{ 0, 0, 0, 0, 0, 0 };
+		return MausEreignis{ 0, 0, 0, 0, 1 };
 	}
 }
 

+ 137 - 205
ksgScript/Editor/Editor.cpp

@@ -46,6 +46,135 @@ Editor::~Editor()
         parser->release();
 }
 
+// Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
+//  me: Das Ereignis
+void Editor::doMausEreignis( MausEreignis &me, bool userRet )
+{
+    if( hatStyleNicht( Style::Erlaubt ) || !userRet )
+    {
+        int rbr = 0;
+        if( rahmen )
+            rbr = rahmen->getRBreite();
+        if( ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ||
+            ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ) &&
+            me.mx > rbr && me.mx < gr.x - rbr &&
+            me.my > rbr && me.my < gr.y - rbr )
+        {
+            me.verarbeitet |= vertikalScrollBar->doMausMessage( gr.x - rbr - 15, rbr, 15, gr.y - rbr * 2, me );
+            me.verarbeitet |= horizontalScrollBar->doMausMessage( rbr, gr.y - rbr * 2 - 15, gr.x - rbr * 2 - ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? 15 : 0 ), 15, me );
+        }
+        mausKlick = 0;
+        return;
+    }
+    if( !me.verarbeitet )
+    {
+        if( me.id == ME_Betritt )
+            mausKlick = 0;
+        int rbr = 0;
+        if( rahmen )
+            rbr = rahmen->getRBreite();
+        if( vertikalScrollBar && hatStyle( Style::VScroll ) )
+        {
+            if( vertikalScrollBar->doMausMessage( gr.x - rbr - 15, rbr, 15, gr.y - rbr * 2, me ) )
+            {
+                me.verarbeitet = 1;
+                return;
+            }
+        }
+        if( horizontalScrollBar && hatStyle( Style::HScroll ) )
+        {
+            if( horizontalScrollBar->doMausMessage( rbr, gr.y - rbr - 15, gr.x - rbr * 2 - ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? 15 : 0 ), 15, me ) )
+            {
+                me.verarbeitet = 1;
+                return;
+            }
+        }
+        if( me.mx < gr.x - rbr - 15 )
+        {
+            if( textRd )
+            {
+                textRd->setSchriftSize( 12 );
+                bool shift = getTastenStand( T_Shift );
+                if( me.id == Framework::ME_PLinks )
+                {
+                    int tbr = textRd->getTextBreite( script->getText() );
+                    int thi = textRd->getTextHeight( script->getText() );
+                    int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
+                    int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
+                    int xxx = me.mx - rbr + scrollBr;
+                    int yyy = me.my - rbr + scrollHi;
+                    int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
+                    int pos = textRd->textPos( script->getText(), xxx, yyy );
+                    if( pos != -1 )
+                    {
+                        if( shift )
+                            begF = pos;
+                        else
+                        {
+                            cPos = pos;
+                            begF = pos;
+                        }
+                        rend = 1;
+                        if( vertikalScrollBar && hatStyle( Style::VScroll ) )
+                            updateVScroll( begF );
+                        if( horizontalScrollBar && hatStyle( Style::HScroll ) )
+                            updateHScroll( begF );
+                    }
+                    mausKlick = 1;
+                }
+                if( me.id == ME_Bewegung && mausKlick )
+                {
+                    int tbr = textRd->getTextBreite( script->getText() );
+                    int thi = textRd->getTextHeight( script->getText() );
+                    int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
+                    int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
+                    int xxx = me.mx - rbr + scrollBr;
+                    int yyy = me.my - rbr + scrollHi;
+                    int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
+                    int scrollHeight = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) * 15;
+                    int pos = textRd->textPos( script->getText(), xxx, yyy );
+                    if( pos != -1 )
+                    {
+                        if( begF != pos )
+                            rend = 1;
+                        begF = pos;
+                        if( vertikalScrollBar && hatStyle( Style::VScroll ) )
+                            updateVScroll( begF );
+                        if( horizontalScrollBar && hatStyle( Style::HScroll ) )
+                            updateHScroll( begF );
+                    }
+                }
+                if( me.id == ME_RLinks )
+                {
+                    if( !shift )
+                    {
+                        int tbr = textRd->getTextBreite( script->getText() );
+                        int thi = textRd->getTextHeight( script->getText() );
+                        int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
+                        int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
+                        int xxx = me.mx - rbr + scrollBr;
+                        int yyy = me.my - rbr + scrollHi;
+                        int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
+                        int scrollHeight = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) * 15;
+                        int pos = textRd->textPos( script->getText(), xxx, yyy );
+                        if( pos != -1 )
+                        {
+                            begF = pos;
+                            if( vertikalScrollBar && hatStyle( Style::VScroll ) )
+                                updateVScroll( begF );
+                            if( horizontalScrollBar && hatStyle( Style::HScroll ) )
+                                updateHScroll( begF );
+                        }
+                        rend = 1;
+                    }
+                    mausKlick = 0;
+                }
+            }
+        }
+    }
+    me.verarbeitet = 1;
+}
+
 void Editor::updateHScroll( int pos )
 {
     if( pos == -1 )
@@ -119,7 +248,7 @@ void Editor::updateVScroll( int pos )
 
 // Setzt die zu verwendende Schrift
 //  s: Die Schrift
-void Editor::setSchriftZ( Schrift *s )
+void Editor::setSchriftZ( Schrift * s )
 {
     if( !textRd )
         textRd = new TextRenderer( s );
@@ -129,7 +258,7 @@ void Editor::setSchriftZ( Schrift *s )
 
 // Setzt den zu verwendenden Text Renderer
 //  t: Der Text Renderer
-void Editor::setTextRendererZ( TextRenderer *t )
+void Editor::setTextRendererZ( TextRenderer * t )
 {
     if( textRd )
         textRd->release();
@@ -138,7 +267,7 @@ void Editor::setTextRendererZ( TextRenderer *t )
 
 // Setzt den Text (das Script was verändert werden soll)
 //  txt: Der Text
-void Editor::setText( Text *txt )
+void Editor::setText( Text * txt )
 {
     lockZeichnung();
     if( script )
@@ -154,7 +283,7 @@ void Editor::setText( Text *txt )
 }
 
 // Gibt den aktuellen Text zurück
-Text *Editor::zText() const
+Text * Editor::zText() const
 {
     return script;
 }
@@ -185,206 +314,9 @@ bool Editor::getWarningDetection() const
     return warningDetection;
 }
 
-// Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
-//  me: Das Ereignis
-void Editor::doMausEreignis( MausEreignis &me )
-{
-    bool nmakc = !me.verarbeitet;
-    if( hatStyleNicht( Style::Erlaubt ) || hatStyleNicht( Style::Sichtbar ) )
-    {
-        if( toolTip )
-            toolTip->setMausIn( 0 );
-        me.mx -= pos.x, me.my -= pos.y;
-        int rbr = 0;
-        if( rahmen )
-            rbr = rahmen->getRBreite();
-        if( ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ||
-            ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ) &&
-            me.mx > rbr && me.mx < gr.x - rbr &&
-            me.my > rbr && me.my < gr.y - rbr )
-        {
-            vertikalScrollBar->doMausMessage( gr.x - rbr - 15, rbr, 15, gr.y - rbr * 2, me );
-            horizontalScrollBar->doMausMessage( rbr, gr.y - rbr * 2 - 15, gr.x - rbr * 2 - ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? 15 : 0 ), 15, me );
-            me.verarbeitet = 1;
-        }
-        me.mx += pos.x, me.my += pos.y;
-        mausKlick = 0;
-        return;
-    }
-    bool removeFokus = 0;
-    if( me.verarbeitet || !( me.mx >= pos.x && me.mx <= pos.x + gr.x && me.my >= pos.y && me.my <= pos.y + gr.y ) )
-    {
-        if( mausIn )
-        {
-            mausIn = 0;
-            if( toolTip )
-                toolTip->setMausIn( 0 );
-            MausEreignis me2;
-            me2.id = ME_Leaves;
-            me2.mx = me.mx;
-            me2.my = me.my;
-            me2.verarbeitet = 0;
-            doMausEreignis( me2 );
-            return;
-        }
-        removeFokus = 1;
-    }
-    if( !( me.mx >= pos.x && me.mx <= pos.x + gr.x && me.my >= pos.y && me.my <= pos.y + gr.y ) && me.id != ME_Leaves )
-    {
-        if( removeFokus && me.id == ME_RLinks )
-        {
-            me.mx -= pos.x, me.my -= pos.y;
-            if( hatStyle( Style::Fokus ) && mak && ( me.verarbeitet || mak( makParam, this, me ) ) )
-                removeStyle( Style::Fokus );
-            if( nmakc && me.verarbeitet && nMak )
-                me.verarbeitet = nMak( nmakParam, this, me );
-            me.mx += pos.x, me.my += pos.y;
-        }
-        if( toolTip )
-            toolTip->setMausIn( 0 );
-        return;
-    }
-    if( !mausIn && me.id != ME_Leaves )
-    {
-        mausIn = 1;
-        if( toolTip )
-            toolTip->setMausIn( 1 );
-        MausEreignis me2;
-        me2.id = ME_Betritt;
-        me2.mx = me.mx;
-        me2.my = me.my;
-        me2.verarbeitet = 0;
-        doMausEreignis( me2 );
-    }
-    me.mx -= pos.x, me.my -= pos.y;
-    if( mak && ( me.verarbeitet || mak( makParam, this, me ) ) )
-    {
-        if( removeFokus && me.id == ME_RLinks )
-            removeStyle( Style::Fokus );
-        if( !me.verarbeitet )
-        {
-            if( hatStyleNicht( Style::Fokus ) )
-            {
-                mausKlick = 0;
-                if( me.id == Framework::ME_PLinks )
-                    addStyle( Style::Fokus );
-            }
-            int rbr = 0;
-            if( rahmen )
-                rbr = rahmen->getRBreite();
-            if( vertikalScrollBar && hatStyle( Style::VScroll ) )
-            {
-                if( vertikalScrollBar->doMausMessage( gr.x - rbr - 15, rbr, 15, gr.y - rbr * 2, me ) )
-                {
-                    if( nmakc && me.verarbeitet && nMak )
-                        me.verarbeitet = nMak( nmakParam, this, me );
-                    me.mx += pos.x, me.my += pos.y;
-                    return;
-                }
-            }
-            if( horizontalScrollBar && hatStyle( Style::HScroll ) )
-            {
-                if( horizontalScrollBar->doMausMessage( rbr, gr.y - rbr - 15, gr.x - rbr * 2 - ( ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? 15 : 0 ), 15, me ) )
-                {
-                    if( nmakc && me.verarbeitet && nMak )
-                        me.verarbeitet = nMak( nmakParam, this, me );
-                    me.mx += pos.x, me.my += pos.y;
-                    return;
-                }
-            }
-            if( me.mx < gr.x - rbr - 15 )
-            {
-                if( textRd )
-                {
-                    textRd->setSchriftSize( 12 );
-                    bool shift = getTastenStand( T_Shift  );
-                    if( me.id == Framework::ME_PLinks )
-                    {
-                        int tbr = textRd->getTextBreite( script->getText() );
-                        int thi = textRd->getTextHeight( script->getText() );
-                        int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
-                        int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
-                        int xxx = me.mx - rbr + scrollBr;
-                        int yyy = me.my - rbr + scrollHi;
-                        int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
-                        int pos = textRd->textPos( script->getText(), xxx, yyy );
-                        if( pos != -1 )
-                        {
-                            if( shift )
-                                begF = pos;
-                            else
-                            {
-                                cPos = pos;
-                                begF = pos;
-                            }
-                            rend = 1;
-                            if( vertikalScrollBar && hatStyle( Style::VScroll ) )
-                                updateVScroll( begF );
-                            if( horizontalScrollBar && hatStyle( Style::HScroll ) )
-                                updateHScroll( begF );
-                        }
-                        mausKlick = 1;
-                    }
-                    if( me.id == ME_Bewegung && mausKlick )
-                    {
-                        int tbr = textRd->getTextBreite( script->getText() );
-                        int thi = textRd->getTextHeight( script->getText() );
-                        int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
-                        int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
-                        int xxx = me.mx - rbr + scrollBr;
-                        int yyy = me.my - rbr + scrollHi;
-                        int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
-                        int scrollHeight = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) * 15;
-                        int pos = textRd->textPos( script->getText(), xxx, yyy );
-                        if( pos != -1 )
-                        {
-                            if( begF != pos )
-                                rend = 1;
-                            begF = pos;
-                            if( vertikalScrollBar && hatStyle( Style::VScroll ) )
-                                updateVScroll( begF );
-                            if( horizontalScrollBar && hatStyle( Style::HScroll ) )
-                                updateHScroll( begF );
-                        }
-                    }
-                    if( me.id == ME_RLinks )
-                    {
-                        if( !shift )
-                        {
-                            int tbr = textRd->getTextBreite( script->getText() );
-                            int thi = textRd->getTextHeight( script->getText() );
-                            int scrollHi = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) ? vertikalScrollBar->getScroll() : 0;
-                            int scrollBr = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) ? horizontalScrollBar->getScroll() : 0;
-                            int xxx = me.mx - rbr + scrollBr;
-                            int yyy = me.my - rbr + scrollHi;
-                            int scrollBreite = ( vertikalScrollBar && hatStyle( Style::VScroll ) ) * 15;
-                            int scrollHeight = ( horizontalScrollBar && hatStyle( Style::HScroll ) ) * 15;
-                            int pos = textRd->textPos( script->getText(), xxx, yyy );
-                            if( pos != -1 )
-                            {
-                                begF = pos;
-                                if( vertikalScrollBar && hatStyle( Style::VScroll ) )
-                                    updateVScroll( begF );
-                                if( horizontalScrollBar && hatStyle( Style::HScroll ) )
-                                    updateHScroll( begF );
-                            }
-                            rend = 1;
-                        }
-                        mausKlick = 0;
-                    }
-                }
-            }
-        }
-        me.verarbeitet = 1;
-    }
-    if( nmakc && me.verarbeitet && nMak )
-        me.verarbeitet = nMak( nmakParam, this, me );
-    me.mx += pos.x, me.my += pos.y;
-}
-
 // Verarbeitet ein Tastatur Ereignis. Wird vom Framework automatisch aufgerufen
 //  te: Das Ereignis
-void Editor::doTastaturEreignis( TastaturEreignis &te )
+void Editor::doTastaturEreignis( TastaturEreignis & te )
 {
     bool ntakc = !te.verarbeitet;
     if( te.verarbeitet || hatStyleNicht( Style::Fokus ) )
@@ -600,7 +532,7 @@ bool Editor::tick( double tickval )
         if( tickVal >= 1 )
         {
             lockZeichnung();
-            if( (reloadCounter -= 2 ) <= 0 )
+            if( ( reloadCounter -= 2 ) <= 0 )
             {
                 zm.messungStart();
                 parser->reload();
@@ -615,7 +547,7 @@ bool Editor::tick( double tickval )
 }
 
 // Zeichnet den Editor nach rObj
-void Editor::render( Bild &rObj )
+void Editor::render( Bild & rObj )
 {
     if( hatStyleNicht( Style::Sichtbar ) )
         return;
@@ -646,7 +578,7 @@ void Editor::render( Bild &rObj )
     {
         if( !parser )
             return colors[ KSGScriptEditor::ColorType::NORMAL_TEXT ];
-        int uC =  -1;
+        int uC = -1;
         int tC = colors[ parser->getNextColor( pos, uC ) ];
         if( uC >= 0 )
             rObj.drawLinieH( x, y + 12, 12, colors[ uC ] );

+ 3 - 3
ksgScript/Editor/Editor.h

@@ -32,6 +32,9 @@ namespace KSGScript
 
         void updateHScroll( int pos );
         void updateVScroll( int pos );
+        // Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
+        //  me: Das Ereignis
+        void doMausEreignis( MausEreignis &me, bool userRet ) override;
 
     public:
         // Konstructor
@@ -59,9 +62,6 @@ namespace KSGScript
         bool getErrorDetection() const override;
         // gibt 1 zurück, wenn die Warnungserkennung eingeschaltet ist
         bool getWarningDetection() const override;
-        // Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
-        //  me: Das Ereignis
-       void doMausEreignis( MausEreignis &me ) override;
         // Verarbeitet ein Tastatur Ereignis. Wird vom Framework automatisch aufgerufen
         //  te: Das Ereignis
         void doTastaturEreignis( TastaturEreignis &te ) override;

+ 2 - 2
ksgScript/Klassen/KSGSBildZ.cpp

@@ -89,8 +89,8 @@ KSGSVariable *KSGSBildZKlasse::startFunktion( int id, bool access, RCArray< KSGS
         {
             if( parameter->getEintragAnzahl() < 1 )
                 error( 20, {}, obj );
-            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 0, 0 };
-            val->doMausEreignis( me );
+            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 1 };
+            val->doPublicMausEreignis( me );
         }
         break;
     case 9: // void render( int, int, Bild )

+ 2 - 2
ksgScript/Klassen/KSGSFenster.cpp

@@ -265,8 +265,8 @@ KSGSVariable *KSGSFensterKlasse::startFunktion( int id, bool access, RCArray< KS
         {
             if( parameter->getEintragAnzahl() < 1 )
                 error( 20, {}, obj );
-            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 0, 0 };
-            val->doMausEreignis( me );
+            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 1 };
+            val->doPublicMausEreignis( me );
         }
         break;
     case 38: // void doTastaturEreignis( TastaturEreignis )

+ 2 - 2
ksgScript/Klassen/KSGSKnopf.cpp

@@ -141,8 +141,8 @@ KSGSVariable *KSGSKnopfKlasse::startFunktion( int id, bool access, RCArray< KSGS
         {
             if( parameter->getEintragAnzahl() < 1 )
                 error( 20, {}, obj );
-            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 0, 0 };
-            val->doMausEreignis( me );
+            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 1 };
+            val->doPublicMausEreignis( me );
         }
         break;
     case 19: // void render( int, int, Bild )if( 1 )

+ 10 - 18
ksgScript/Klassen/KSGSMausEreignis.cpp

@@ -40,21 +40,16 @@ KSGSVariable *KSGSMausEreignisKlasse::startFunktion( int id, bool access, RCArra
 			error( 20, {}, obj );
 		val.my = parameter->z( 0 ) ? parameter->z( 0 )->getInt() : 0;
 		break;
-	case 3: // void setRmx( int rmx )
-		if( parameter->getEintragAnzahl() < 1 )
-			error( 20, {}, obj );
-		val.rmx = parameter->z( 0 ) ? parameter->z( 0 )->getInt() : 0;
-		break;
-	case 4: // void setRmy( int rmy )
-		if( parameter->getEintragAnzahl() < 1 )
-			error( 20, {}, obj );
-		val.rmy = parameter->z( 0 ) ? parameter->z( 0 )->getInt() : 0;
-		break;
-	case 5: // void setVerarbeitet( bool verarbeitet )
+	case 3: // void setVerarbeitet( bool verarbeitet )
 		if( parameter->getEintragAnzahl() < 1 )
 			error( 20, {}, obj );
 		val.verarbeitet = parameter->z( 0 ) ? parameter->z( 0 )->getBool() : 0;
 		break;
+    case 4: // void setInsideParent( bool verarbeitet )
+        if( parameter->getEintragAnzahl() < 1 )
+            error( 20, {}, obj );
+        val.insideParent = parameter->z( 0 ) ? parameter->z( 0 )->getBool() : 0;
+        break;
 	default: // unbekannt
 		error( 19, {}, obj );
 		break;
@@ -108,15 +103,12 @@ KSGSVariable *KSGSMausEreignisKlasse::getVariable( int id, bool zugriff ) const
 	case 2: // int my
 		ret = new KSGSIntKlasse( obj, val.my );
 		break;
-	case 3: // int rmx
-		ret = new KSGSIntKlasse( obj, val.rmx );
-		break;
-	case 4: // int rmy
-		ret = new KSGSIntKlasse( obj, val.rmy );
-		break;
-	case 5: // bool verarbeitet
+	case 3: // bool verarbeitet
 		ret = new KSGSBoolKlasse( obj, val.verarbeitet );
 		break;
+    case 4: // bool insideParent
+        ret = new KSGSBoolKlasse( obj, val.insideParent );
+        break;
 	}
 	if( !ret )
 		error( 17, {}, obj );

+ 1 - 1
ksgScript/Klassen/KSGSMausEreignis.h

@@ -13,7 +13,7 @@ namespace KSGScript
 
 	public:
 		// Konstruktor
-		__declspec( dllexport ) KSGSMausEreignisKlasse( KSGScriptObj *zObj, MausEreignis std = { 0, 0, 0, 0, 0, 0 } );
+		__declspec( dllexport ) KSGSMausEreignisKlasse( KSGScriptObj *zObj, MausEreignis std = { 0, 0, 0, 0, 1 } );
 		// Destruktor
 		__declspec( dllexport ) ~KSGSMausEreignisKlasse();
 		// nicht constant

+ 2 - 2
ksgScript/Klassen/KSGSTextFeld.cpp

@@ -180,8 +180,8 @@ KSGSVariable *KSGSTextFeldKlasse::startFunktion( int id, bool access, RCArray< K
         {
             if( parameter->getEintragAnzahl() < 1 )
                 error( 20, {}, obj );
-            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 0, 0 };
-            val->doMausEreignis( me );
+            MausEreignis me = parameter->z( 0 ) ? parameter->z( 0 )->getMausEreignis() : MausEreignis{ 0, 0, 0, 0, 1 };
+            val->doPublicMausEreignis( me );
         }
         break;
     case 23: // void doTastaturEreignis( TastaturEreignis )

+ 2 - 4
ksgScript/Leser/KSGSCompile.cpp

@@ -254,15 +254,13 @@ KSGSCompKlassTable::KSGSCompKlassTable()
 	_MausEreignis->vars.addVariable( "id", new KSGSCompileVariable( KSGS_INT, 1 ) );
 	_MausEreignis->vars.addVariable( "mx", new KSGSCompileVariable( KSGS_INT, 1 ) );
 	_MausEreignis->vars.addVariable( "my", new KSGSCompileVariable( KSGS_INT, 1 ) );
-	_MausEreignis->vars.addVariable( "rmx", new KSGSCompileVariable( KSGS_INT, 1 ) );
-	_MausEreignis->vars.addVariable( "rmy", new KSGSCompileVariable( KSGS_INT, 1 ) );
 	_MausEreignis->vars.addVariable( "verarbeitet", new KSGSCompileVariable( KSGS_BOOL, 1 ) );
+    _MausEreignis->vars.addVariable( "insideParent", new KSGSCompileVariable( KSGS_BOOL, 1 ) );
 	_MausEreignis->funcs.addFunktion( "setId", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_INT } ) );
 	_MausEreignis->funcs.addFunktion( "setMx", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_INT } ) );
 	_MausEreignis->funcs.addFunktion( "setMy", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_INT } ) );
-	_MausEreignis->funcs.addFunktion( "setRmx", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_INT } ) );
-	_MausEreignis->funcs.addFunktion( "setRmy", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_INT } ) );
 	_MausEreignis->funcs.addFunktion( "setVerarbeitet", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_BOOL } ) );
+    _MausEreignis->funcs.addFunktion( "setInsideParent", new KSGSCompileFunktion( KSGS_VOID, 1, { KSGS_BOOL } ) );
 	// TastaturEreignis Standart
 	KSGSCompileKlasse *_TastaturEreignis = new KSGSCompileKlasse();
 	addKlasse( "TastaturEreignis", _TastaturEreignis );