Index: sources/main.h =================================================================== diff -u -r8d5fe7d63e3d86e9d89d5f824347d34479e4e9ec -r5687815256ae070a9a207107088e3f72dd464da0 --- sources/main.h (.../main.h) (revision 8d5fe7d63e3d86e9d89d5f824347d34479e4e9ec) +++ sources/main.h (.../main.h) (revision 5687815256ae070a9a207107088e3f72dd464da0) @@ -1,13 +1,13 @@ /*! * - * Copyright (c) 2019-2023 Diality Inc. - All Rights Reserved. + * Copyright (c) 2019-2024 Diality Inc. - All Rights Reserved. * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file main.h * \author (last) Behrouz NematiPour - * \date (last) 18-Jul-2023 + * \date (last) 04-Apr-2024 * \author (original) Behrouz NematiPour * \date (original) 28-Oct-2019 * @@ -103,8 +103,13 @@ extern bool gEnableManufacturing ; extern bool gEnableUpdating ; extern bool gUseRootHome ; +extern QString gStandard_tmp ; +extern bool gLogLongName ; +extern bool gLogUpload ; +extern bool gLogCompress ; + //--------------------------------------------------------------------------------// //--------------------------------------------------------------------------------// #define SKIPPER_DEF(X) \ @@ -126,6 +131,14 @@ if ( !ok ) LOG_DEBUG("incorrect configuration value for " #vVARIABLE); \ } //--------------------------------------------------------------------------------// +#define FROMVARIANT_WITHRETURN(vVARIABLE, vGROUP, vKEY, vCONVERSION, vOVERALL_OK) \ +{ \ + bool ok = false; \ + vVARIABLE( _Settings.value(mCategory, vGROUP, vKEY).to##vCONVERSION(&ok) ); \ + if ( !ok ) LOG_DEBUG("incorrect configuration value for " #vVARIABLE); \ + vOVERALL_OK = vOVERALL_OK && ok; \ +} +//--------------------------------------------------------------------------------// #define PROPERTY_SLOT( vTYPE , vVARIABLE ) \ protected : \ /*! \brief Property setter @@ -312,6 +325,26 @@ READONLY( vTYPE , vVARIABLE##Max , vDEFVALUE ) \ READONLY( vTYPE , vVARIABLE##Res , vDEFVALUE ) \ READONLY( vTYPE , vVARIABLE##Def , vDEFVALUE ) +//--------------------------------------------------------------------------------// +#define MEMBER( vTYPE , vVARIABLE , vDEFVALUE ) \ + private: \ + vTYPE _##vVARIABLE = vDEFVALUE; \ + public: \ + /*! \brief Property setter + \details The property setter which update the private variable \n + \param new value + */\ + void vVARIABLE ( const vTYPE & v##vVARIABLE ) { \ + _##vVARIABLE = v##vVARIABLE; \ + } \ + public: \ + /*! \brief Property getter + \details The property getter which reads the private variable + \return current value + */\ + vTYPE vVARIABLE () const { \ + return _##vVARIABLE ; \ + } //--------------------------------------------------------------------------------// #define CONSTANT( vTYPE , vVARIABLE , vDEFVALUE ) \ @@ -540,9 +573,28 @@ } \ emit did##vMETHOD( vData); \ } \ -Q_SIGNALS : void did##vMETHOD(vTYPE); \ -private Q_SLOTS : void on##vMETHOD(vTYPE); + Q_SIGNALS : void did##vMETHOD(vTYPE); \ + private Q_SLOTS : void on##vMETHOD(vTYPE); //--------------------------------------------------------------------------------// +#define SAFE_CALL_EX2( vMETHOD,vTYPE1 ,vTYPE2 ) \ +public Q_SLOTS : void vMETHOD(vTYPE1 vDATA1 ,vTYPE2 vDATA2 ) { \ + static bool init = false; \ + if ( ! init ) { \ + connect(this, SIGNAL( did##vMETHOD(vTYPE1 ,vTYPE2 )), \ + this, SLOT( on##vMETHOD(vTYPE1 ,vTYPE2 )));\ + init = true; \ + } \ + emit did##vMETHOD( vDATA1 , vDATA2 ); \ + } \ + Q_SIGNALS : void did##vMETHOD(vTYPE1 ,vTYPE2 ); \ + private Q_SLOTS : void on##vMETHOD(vTYPE1 ,vTYPE2 ); +//--------------------------------------------------------------------------------// +#define TIME_CALL( vMETHOD,vCOUNT ) \ +{ \ + static quint8 counter = 0; \ + if ( ! counter-- ) { counter = vCOUNT; vMETHOD; } \ +} \ +//--------------------------------------------------------------------------------// #define REGISTER_METATYPE(vTYPE) \ qRegisterMetaType < vTYPE > (#vTYPE); //--------------------------------------------------------------------------------//