RabbitCommon v2.3.3
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
RabbitCommon::CTools Class Reference

Tools. More...

#include <RabbitCommonTools.h>

Inheritance diagram for RabbitCommon::CTools:

Public Types

enum class  TranslationType { Application , Library , Plugin }
 

Public Member Functions

void Init (QString szApplicationName=QCoreApplication::applicationName(), QString szApplicationDirPath=QCoreApplication::applicationDirPath(), QString szApplicationInstallRoot=QString(), const QString szLanguage=QLocale::system().name())
 Initialize the resource, which is called only once at the beginning of the program,.
 
void Init (int argc, char *argv[], QString szApplicationName=QString())
 Init.
 
void Clean ()
 
int SetLanguage (const QString szLanguage)
 
QString GetLanguage ()
 
QSharedPointer< QTranslator > InstallTranslator (const QString szName=QString(), TranslationType type=TranslationType::Application, const QString szPluginDir="plugins", const QString szLanguage=QLocale::system().name())
 Install translation.
 
int RemoveTranslator (QSharedPointer< QTranslator > translator)
 

Static Public Member Functions

static CToolsInstance ()
 
static QString Version ()
 RabbitCommon version.
 
static QString Information ()
 RabbitCommon information.
 
static bool EnableCoreDump (bool bPrompt=true)
 Enable core dump.
 
static bool HasAdministratorPrivilege ()
 Has administrator privilege.
 
static bool executeByRoot (const QString &program, const QStringList &arguments=QStringList())
 executeByRoot: Run with administrator privileges
 
static bool ExecuteWithAdministratorPrivilege (const QString &program, const QStringList &arguments=QStringList())
 
static bool StartWithAdministratorPrivilege (bool bQuitOld=false)
 
static int InstallStartRun (const QString &szName=QString(), const QString &szPath=QString(), bool bAllUser=false)
 InstallStartRun: auto run when startup.
 
static int RemoveStartRun (const QString &szName=QString(), bool bAllUser=false)
 
static bool IsStartRun (const QString &szName=QString(), bool bAllUser=false)
 
static QString GetCurrentUser ()
 
static QString GetHostName ()
 
static int GenerateDesktopFile (const QString &szPath=QString(), const QString &szName=QString())
 GenerateDesktopFile: Generate desktop file.
 
static int AndroidRequestPermission (const QStringList &permissions)
 
static int AndroidRequestPermission (const QString &permission)
 

Private Member Functions

void InitResource ()
 
void CleanResource ()
 
QSharedPointer< QTranslator > InstallTranslatorFile (const QString szFile)
 

Private Attributes

QVector< QSharedPointer< QTranslator > > m_Translator
 
QString m_szLanguage
 
bool m_Initialized
 
bool m_bShowMaxWindow
 

Detailed Description

Tools.

Definition at line 42 of file RabbitCommonTools.h.

Member Enumeration Documentation

◆ TranslationType

enum class RabbitCommon::CTools::TranslationType
strong

Definition at line 151 of file RabbitCommonTools.h.

Constructor & Destructor Documentation

◆ CTools()

RabbitCommon::CTools::CTools ( )
private

Definition at line 109 of file RabbitCommonTools.cpp.

◆ ~CTools()

RabbitCommon::CTools::~CTools ( )
privatevirtual

Definition at line 118 of file RabbitCommonTools.cpp.

Member Function Documentation

◆ AndroidRequestPermission() [1/2]

int RabbitCommon::CTools::AndroidRequestPermission ( const QString &  permission)
static

Definition at line 247 of file RabbitCommonTools.cpp.

◆ AndroidRequestPermission() [2/2]

int RabbitCommon::CTools::AndroidRequestPermission ( const QStringList &  permissions)
static

Definition at line 267 of file RabbitCommonTools.cpp.

◆ Clean()

void RabbitCommon::CTools::Clean ( )
Note
Free up the resource and call it only once before the program ends

Definition at line 377 of file RabbitCommonTools.cpp.

◆ CleanResource()

void RabbitCommon::CTools::CleanResource ( )
private

Definition at line 488 of file RabbitCommonTools.cpp.

◆ EnableCoreDump()

bool RabbitCommon::CTools::EnableCoreDump ( bool  bPrompt = true)
static

Enable core dump.

Parameters
bPromptprompt
Note
It must be called first in the main function

Definition at line 512 of file RabbitCommonTools.cpp.

◆ executeByRoot()

bool RabbitCommon::CTools::executeByRoot ( const QString &  program,
const QStringList &  arguments = QStringList() 
)
static

executeByRoot: Run with administrator privileges

Parameters
program
arguments

Definition at line 549 of file RabbitCommonTools.cpp.

◆ ExecuteWithAdministratorPrivilege()

bool RabbitCommon::CTools::ExecuteWithAdministratorPrivilege ( const QString &  program,
const QStringList &  arguments = QStringList() 
)
static

Definition at line 540 of file RabbitCommonTools.cpp.

◆ GenerateDesktopFile()

int RabbitCommon::CTools::GenerateDesktopFile ( const QString &  szPath = QString(),
const QString &  szName = QString() 
)
static

GenerateDesktopFile: Generate desktop file.

Parameters
szPaththe path of desktop file.
szNamethe name of desktop file. Default: "org.Rabbit." + qApp->applicationName() + ".desktop"

Definition at line 676 of file RabbitCommonTools.cpp.

◆ GetCurrentUser()

QString RabbitCommon::CTools::GetCurrentUser ( )
static

Definition at line 710 of file RabbitCommonTools.cpp.

◆ GetHostName()

QString RabbitCommon::CTools::GetHostName ( )
static

Definition at line 727 of file RabbitCommonTools.cpp.

◆ GetLanguage()

QString RabbitCommon::CTools::GetLanguage ( )

Definition at line 141 of file RabbitCommonTools.cpp.

◆ HasAdministratorPrivilege()

bool RabbitCommon::CTools::HasAdministratorPrivilege ( )
static

Has administrator privilege.

Since v2.3.0

Definition at line 531 of file RabbitCommonTools.cpp.

◆ Information()

QString RabbitCommon::CTools::Information ( )
static

RabbitCommon information.

Definition at line 167 of file RabbitCommonTools.cpp.

◆ Init() [1/2]

void RabbitCommon::CTools::Init ( int  argc,
char *  argv[],
QString  szApplicationName = QString() 
)

Init.

It can called before QApplication a(argc, argv); It is parse the application name and path from command line parameters.

Parameters
szApplicationNameSet if the application name is not same the program.
See also
void Init()

Definition at line 275 of file RabbitCommonTools.cpp.

◆ Init() [2/2]

void RabbitCommon::CTools::Init ( QString  szApplicationName = QCoreApplication::applicationName(),
QString  szApplicationDirPath = QCoreApplication::applicationDirPath(),
QString  szApplicationInstallRoot = QString(),
const QString  szLanguage = QLocale::system().name() 
)

Initialize the resource, which is called only once at the beginning of the program,.

Note
  • Be called after QApplication a(argc, argv) at the beginning of the main() function
    int main(int argc, char* argv[]) {
    QApplication a(argc, argv);
    a.setApplicationName(......);
    RabbitCommon::CTools::Instance->Init();
    ......
    }
    void Init(QString szApplicationName=QCoreApplication::applicationName(), QString szApplicationDirPath=QCoreApplication::applicationDirPath(), QString szApplicationInstallRoot=QString(), const QString szLanguage=QLocale::system().name())
    Initialize the resource, which is called only once at the beginning of the program,...
  • If you are called before QApplication a(argc, argv)
    • you need to call:
      • QCoreApplication::setApplicationName()
      • CDir::Instance()->SetDirApplication()
      • CDir::Instance()->SetDirApplicationInstallRoot()
        int main(int argc, char* argv[]) {
        QCoreApplication::setApplicationName(...);
        CDir::Instance()->SetDirApplication(...);
        CDir::Instance()->SetDirApplicationInstallRoot(...);
        RabbitCommon::CTools::Instance->Init();
        QApplication a(argc, argv);
        ......
        }
  • Be called with the parameters
    int main(int argc, char* argv[]) {
    RabbitCommon::CTools::Instance->Init(szName, szPath, szInstallRoot);
    QApplication a(argc, argv);
    ......
    }
See also
Init(int argc, char* argv[], QString szApplicationName)

Definition at line 293 of file RabbitCommonTools.cpp.

◆ InitResource()

void RabbitCommon::CTools::InitResource ( )
private

Definition at line 483 of file RabbitCommonTools.cpp.

◆ InstallStartRun()

int RabbitCommon::CTools::InstallStartRun ( const QString &  szName = QString(),
const QString &  szPath = QString(),
bool  bAllUser = false 
)
static

InstallStartRun: auto run when startup.

Parameters
szNameThe programe name
  • Windows: is programe name
  • Linux: the name of desktop file.
szPath
bAllUser
  • true: all user
  • false: current user

Definition at line 587 of file RabbitCommonTools.cpp.

◆ InstallTranslator()

QSharedPointer< QTranslator > RabbitCommon::CTools::InstallTranslator ( const QString  szName = QString(),
TranslationType  type = TranslationType::Application,
const QString  szPluginDir = "plugins",
const QString  szLanguage = QLocale::system().name() 
)

Install translation.

Parameters
szNametranslation name
szLanguagelanguage
typeTranslationType
szPluginDirplugin directory
Returns
QSharedPointer<QTranslator>
See also
CDir::GetDirTranslations cmake/Translations.cmake

Definition at line 413 of file RabbitCommonTools.cpp.

◆ InstallTranslatorFile()

QSharedPointer< QTranslator > RabbitCommon::CTools::InstallTranslatorFile ( const QString  szFile)
private

Definition at line 387 of file RabbitCommonTools.cpp.

◆ Instance()

CTools * RabbitCommon::CTools::Instance ( )
static

Definition at line 127 of file RabbitCommonTools.cpp.

◆ IsStartRun()

bool RabbitCommon::CTools::IsStartRun ( const QString &  szName = QString(),
bool  bAllUser = false 
)
static

Definition at line 662 of file RabbitCommonTools.cpp.

◆ RemoveStartRun()

int RabbitCommon::CTools::RemoveStartRun ( const QString &  szName = QString(),
bool  bAllUser = false 
)
static

Definition at line 639 of file RabbitCommonTools.cpp.

◆ RemoveTranslator()

int RabbitCommon::CTools::RemoveTranslator ( QSharedPointer< QTranslator >  translator)

Definition at line 471 of file RabbitCommonTools.cpp.

◆ SetLanguage()

int RabbitCommon::CTools::SetLanguage ( const QString  szLanguage)

Definition at line 135 of file RabbitCommonTools.cpp.

◆ StartWithAdministratorPrivilege()

bool RabbitCommon::CTools::StartWithAdministratorPrivilege ( bool  bQuitOld = false)
static

Definition at line 554 of file RabbitCommonTools.cpp.

◆ Version()

QString RabbitCommon::CTools::Version ( )
static

RabbitCommon version.

Definition at line 148 of file RabbitCommonTools.cpp.

Member Data Documentation

◆ m_bShowMaxWindow

bool RabbitCommon::CTools::m_bShowMaxWindow
private

Definition at line 310 of file RabbitCommonTools.h.

◆ m_Initialized

bool RabbitCommon::CTools::m_Initialized
private

Definition at line 308 of file RabbitCommonTools.h.

◆ m_szLanguage

QString RabbitCommon::CTools::m_szLanguage
private

Definition at line 307 of file RabbitCommonTools.h.

◆ m_Translator

QVector<QSharedPointer<QTranslator> > RabbitCommon::CTools::m_Translator
private

Definition at line 305 of file RabbitCommonTools.h.


The documentation for this class was generated from the following files: