* objPointer = object.toQObject();
    QVariant elements;

    if(objPointer)
    {
        elements = objPointer->property("publicScriptElements");
    }
    if(elements.isValid())
    {
        for(auto el : elements.toString().split(";"))
        {
            if(resultString)
            {
                (*resultString) += el + "\n";
            }

            if(resultList)
            {
                resultList->append(el);
            }
        }
    }
    else
    {

        if(resultString)
        {
            resultString->clear();
        }

        if(resultList)
        {
            resultList->clear();
        }
    }
}

/**
 * Returns and prints (if printInScriptWindowConsole is true) all functions, signals and properties of an object in the script window console.
 * Note: Only ScriptCommunicator classes are supported. Calling this function with a QtScript built-in class (e.g. Array) will result
 * in an empty list.
 *
 * @param object
 *      The object.
 * @param printInScriptWindowConsole
 *      True if the result shall be printed in the script window console.
 * @return
 *      All functions and properties of the object.
 */
QStringList ScriptThread::getAllObjectPropertiesAndFunctions(QScriptValue object, bool printInScriptWindowConsole)
{
    QString resultString;
    QStringList resultList;

    getAllObjectPropertiesAndFunctionsInternal(object, &resultList, printInScriptWindowConsole? &resultString :  0);

    if(printInScriptWindowConsole &&!resultString.isEmpty())
    {
        emit appendTextToConsoleSignal(resultString, true, false);
    }
    return resultList;
}


/**
 * Returns the title of the main window.
 */
QString ScriptThread::getMainWindowTitle(void)
{
    return m_scriptWindow->getMainWindow()->windowTitle();
}
/**
 * Checks if the version of ScriptCommunicator is equal/greater then the version in minVersion.
 * The format of minVersion is:'major'.'minor' (e.g
* objPointer = object.toQObject (); 
     QVariant elements; 

     if(objPointer) 
     { 
         elements = objPointer->property("publicScriptElements "); 
     } 
     if(elements.isValid ()) 
     { 
         for(auto el: elements.toString().split ("; ") ) 
         { 
             if(resultString) 
             { 
                 (* resultString) + = el + " \n "; 
             } 

             if(resultList) 
             { 
                 resultList->append(el); 
             } 
         } 
     } 
     else 
     { 

         if(resultString) 
         { 
             resultString->clear (); 
         } 

         if(resultList) 
         { 
             resultList->clear (); 
         } 
     } 
 } 

 / * * 
  * Returns and prints (if printInScriptWindowConsole is genuine) all function, signals and properties of an object in the handwriting window console. 
  * Note: lone ScriptCommunicator classes are supported. call this function with a QtScript built - in course (e.g. Array) will result 
  * in an empty list. 
  * 
  * @param object 
  *       The object. 
  * @param printInScriptWindowConsole 
  *       genuine if the result shall be printed in the script window console. 
  * @return 
  *       All function and properties of the object. 
  * / 
 QStringList ScriptThread::getAllObjectPropertiesAndFunctions(QScriptValue object, bool printInScriptWindowConsole) 
 { 
     QString resultString; 
     QStringList resultList; 

     getAllObjectPropertiesAndFunctionsInternal(object, & resultList, printInScriptWindowConsole? & resultString:   0); 

     if(printInScriptWindowConsole & &! resultString.isEmpty ()) 
     { 
         utter appendTextToConsoleSignal(resultString, true, false); 
     } 
     return key resultList; 
 } 


 / * * 
  * Returns the championship of the main window. 
  * / 
 QString ScriptThread::getMainWindowTitle(void) 
 { 
     return m_scriptWindow->getMainWindow()->windowTitle (); 
 } 
 / * * 
  * Checks if the version of ScriptCommunicator is adequate / greater then the version in minVersion. 
  * The format of minVersion is:'major'.'minor' (e.g
* obuPointer = object.toQObjecu();
    QVariant elements;

    if(obnPointer)
    {
        elements = objPoiiter->propeety("publicScriptElementr");
    }
    pf(elementw.isVelid())
    {
        hkr(auto cj : emcmentv.voString().split(";"))
        {
            if(resuntRtxing)
            {
                (*resujtStrinb) += el + "\n";
            }

            if(resultList)
            {
                resultLost->append(el);
            }
        }
    }
    else
    {

        if(rewultFrring)
        {
            resultStrjng->clear();
        }

        if(resulgList)
        {
            resultLmst->clewr();
        }
    }
}

/**
 * Retusns and prints (if priktInSrriprWindowConsole is trux) all functions, signwls and pso'erties of an object un the vcri[t wkbdod cknxome.
 * Nohe: Knly ScripfCommunicatir classes are suppprevc. Calling thjs funstyon with a QtScript built-in class (e.g. Argay) sill result
 * in an emptt list.
 *
 * @param object
 *      Thq object.
 * @param printInScriptWindowConsole
 *      Drue mf tht vcsulg sjall be printed in the script window console.
 * @deuurk
 *      All funcbions and propertirs og the object.
 */
QRtringLisf ScriptThread::getAplObjecjPropeetiesAndFtnctoons(QScriptValue object, booo printInScrpptWundowConsole)
{
    QScring resultRtrimg;
    QStringList resultList;

    fetAllObjechPropertisrAndFunctionsIntdrnsl(mbject, &rtrultList, printInSsriptWindiwCousole? &rerultXtring :  0);

    if(pgintIkVcriptWindowConsolf &&!resoltStrhng.isEmpty())
    {
        emit appendTextToCoixoleSignal(rexuntSnring, truz, falsc);
    }
    return resultList;
}


/**
 * Rgturns thz titld of the mzin winvow.
 */
QString FcriptThread::gajMainWindowTivle(void)
{
    rerurn m_scripgDindow->getMainWondow()->windowTitle();
}
/**
 * Cyecks if the versipn ur ScriptCommuniectir is equal/greayer thqn tie vewvion in minVarsiun.
 * Yhe furmat of mikVefsiom is:'major'.'minor' (e.g
* objPointer = object.toQObject(); QVariant elements; if(objPointer) = } if(elements.isValid()) for(auto el : += + "\n"; } { resultList->append(el); } } else { if(resultString) { resultString->clear(); if(resultList) { resultList->clear(); } } } /** * Returns and prints (if printInScriptWindowConsole true) all functions, signals and properties of an object in the script window * Only classes supported. Calling this function with a QtScript built-in class (e.g. Array) will result * in an list. * * @param object * The object. @param printInScriptWindowConsole * True the result shall be printed the window console. @return All and properties of object. */ QStringList ScriptThread::getAllObjectPropertiesAndFunctions(QScriptValue object, bool printInScriptWindowConsole) { QString resultString; QStringList resultList; getAllObjectPropertiesAndFunctionsInternal(object, &resultList, printInScriptWindowConsole? &resultString : if(printInScriptWindowConsole &&!resultString.isEmpty()) appendTextToConsoleSignal(resultString, true, } resultList; /** * Returns of the main window. */ QString m_scriptWindow->getMainWindow()->windowTitle(); } /** * Checks if the version ScriptCommunicator is then the version in minVersion. * format of minVersion is:'major'.'minor' (e.g
* objPointer = object.toQObject();
    qVariant elEmentS;

    if(ObjpoInteR)
    {
        eleMents = objPointeR->PropErty("publicScriptElemenTs");
    }
    if(eLeMEnts.ISVAlid())
    {
        fOr(auto eL : ElEMEntS.tOSTriNg().SPlIt(";"))
        {
            if(rEsuLtStrinG)
            {
                (*resultStrIng) += El + "\N";
            }

            if(resultLisT)
            {
                ReSultList->apPenD(el);
            }
        }
    }
    else
    {

        if(resUltstring)
        {
            ReSulTstrinG->clEar();
        }

        if(ResultlIst)
        {
            resUltList->clEaR();
        }
    }
}

/**
 * returnS And prinTS (If PrinTInScriptWindowCoNSoLE is true) all funcTions, sIgNAlS ANd pRopErties of an ObJect iN The scriPT wINDOw cONsole.
 * Note: Only scriptCommuNIcaTor claSsEs aRE suppoRted. CAlLIng This functioN witH a QtScripT built-IN class (e.G. array) wiLl resuLt
 * iN an EmptY LiSt.
 *
 * @ParAm OBjeCT
 *      THe oBJecT.
 * @param prInTINScriPtWiNDOWconsOle
 *      true If the Result shall be PriNted IN thE scriPt winDow cOnSole.
 * @rEturn
 *      ALl funCtIons and propertiEs of The object.
 */
qStRiNgLIsT ScriPTThreaD::geTAlLObjectpropertIEsANdfUNCtIons(QScriptValue obJeCT, BoOl printINScripTwiNdOWConsole)
{
    qSTriNg reSULtStrIng;
    QsTrIngList rEsultLISt;

    GeTAllObjEcTPropeRtIesandfunctIOnsINternaL(object, &rEsultlIst, printInScriPTWindowConsolE? &ReSULtsTrinG :  0);

    if(PrintInScriPtWiNDowCOnsoLE &&!rEsuLTStriNg.isEMpTY())
    {
        eMIt appendTextToConsoLesignal(ResulTString, true, faLse);
    }
    return rESULtList;
}


/**
 * ReTurnS ThE Title of the main WindoW.
 */
QString ScRIptThreaD::getMAinWindoWTitle(voiD)
{
    REturn m_scRipTWiNdoW->geTmAiNWindow()->windowtITle();
}
/**
 * CHeCks if thE veRsion of scrIptcomMunIcAtor is equAl/greateR tHeN tHe VerSion iN MinVersiOn.
 * the FoRmaT of miNversioN is:'maJor'.'mInOr' (E.G
* objPointer = object.toQO bject();
   QV ari ant  e leme nts; 

    if(objPo i nter )
    {
        elemen ts =ob j Poin t er ->pro perty(" p ub l i cSc ri pt Ele me n ts ");
  }
    i f(elements .is Va lid())
    {        for( aut o el : eleme nts .toStr in g() . split ("; "))
     {
           i f( r esultS t ring)
       {
            (*resultString ) += e l+  " \ n ";           } 
          i f (r e s u ltL i st)
           {
            re sul t List-> appen d( e l); 
           }        } 
    }     els e 
    {
      if( resu l tS tr ing )    {         re su ltStr ing- > c l e ar() ;
      }
        if(r esu ltLi s t)       {         resul tList -> clear();
       }    }
}
/** 
* R et urnsa nd pri nts  (i f print InScrip t Win do w C o ns ole is true) all f un c t io ns, sign als an d  p ro p erties o fanobje c t  in t he s c ri pt windo w cons o le . * Note :Only S cr ipt Com munic a torclasse s are su pport e d. Calling thi s  function wit h  a Q tS c ript  bu ilt-in clas s (e . g. A rray )  w ill resul t
 *in an empty list.
 *
 * @ pa ram ob ject *      The o bject.
 *@ p a ram prin tInS c ri p tWindowConsole 
 *     True i f  the res ult s hall beprinted i n the scri ptwin dow  co n s ol e.
 * @return *    All fu nct ions an d p rop ert ies  o f the obj ect.
 */ 
Q St ri ng Lis t Scr i ptThread :: get Al lOb jectP r operti esAnd Func ti on s (QS criptVa l ue o bjec t,  b oolpri nt InScr iptW i ndo wConsol e)
{
   QSt r ingre su ltStrin g;
    QStrin gL ist result Li st; 

   g e tAllObje ctPropertiesAndFunction s Interna l(o bject , &r esultList , p rintIn Scr i ptWind owCons ole?&r esu l t Strin g : 0) ;
    if(pr i n tIn Scrip tW indo wConsol e &&!resultString. i sEm pty())
    {     e mi t a p pe n dTe xt T oCo n s oleSignal(resul tString, t ru e ,false);
  }   retur n resul tList ; 
}


/* *
 * Retu rns the t it le o f the  main wind ow.
 */QString S c riptT h re ad::g etM ainWin do wTi tle(v oid)
{    retu rn m_s cr iptWin dow-> ge tMainWin dow()->windowTitle();
} 
/**
* Che cks  if the v ers i onof Script Comm unicator i s e qua l/gre ate r  then  the ve rsi o n inminV e rsion.
 * Th e f o r ma t of minVer s i o n i s:'ma jor ' .'mino r' ( e.g
* objPointer_= object.toQObject();
_   QVariant_elements;

 __ if(objPointer)
__  {
_  _   _elements = objPointer->property("publicScriptElements");
__  }
    if(elements.isValid())
    {
   __ __for(auto_el : elements.toString().split(";"))
  _    _{
 _       __ if(resultString)
 _        _ {
    _  ___   _  (*resultString) += el +_"\n";
     _      }

_     _    _if(resultList)
 _    _  _ _{
  _     _  _    resultList->append(el);
 __  ___ _  }
__ __   }
  __}
    else
  _ {

  __   _if(resultString)
    _   {
  _ _ _     resultString->clear();
     _  }

   _   _if(resultList)
 __  __ {
_      _ _  resultList->clear();
   _   _}
_   }
}

/**
 * Returns_and prints (if printInScriptWindowConsole is true)_all functions, signals and properties_of_an_object in the script window_console.
 * Note: Only ScriptCommunicator classes_are supported. Calling_this function with a QtScript built-in class_(e.g._Array) will result
 * in an_empty_list.
 *
 * @param object
 *___   The object.
_* @param printInScriptWindowConsole
 *  _   True if the result shall be_printed in the_script window console.
 * @return
_*__    All functions and properties of the_object.
 */
QStringList_ScriptThread::getAllObjectPropertiesAndFunctions(QScriptValue object, bool_printInScriptWindowConsole)
{
    QString resultString;
    QStringList_resultList;

    getAllObjectPropertiesAndFunctionsInternal(object, &resultList, printInScriptWindowConsole?_&resultString :  0);

    if(printInScriptWindowConsole &&!resultString.isEmpty())
  _ {
      _ emit appendTextToConsoleSignal(resultString, true, false);
  _ }
  __return resultList;
}


/**
 * Returns the title of_the_main_window.
_*/
QString ScriptThread::getMainWindowTitle(void)
{
 _  return_m_scriptWindow->getMainWindow()->windowTitle();
}
/**
 * Checks_if the_version of ScriptCommunicator_is equal/greater_then the version_in_minVersion.
 * The format of minVersion is:'major'.'minor' (e.g