RabbitCommon v2.3.4
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=GetLanguage())
 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 ()
 
QSharedPointer< QTranslator > InstallTranslator (const QString szName=QString(), TranslationType type=TranslationType::Application, const QString szPluginDir="plugins", const QString szLanguage=GetLanguage())
 Install translation.
 
int RemoveTranslator (QSharedPointer< QTranslator > translator)
 

Static Public Member Functions

static CToolsInstance ()
 
static int SetLanguage (const QString szLanguage)
 
static QString GetLanguage ()
 Get language Acquisition order:
 
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(), bool bDetached=true)
 
static bool StartWithAdministratorPrivilege (bool bQuitOld=false)
 Start program with administrator privilege.
 
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 QString MarkDownToHtml (const QString &szText)
 
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
 
bool m_Initialized
 
bool m_bShowMaxWindow
 

Detailed Description

Tools.

Definition at line 43 of file RabbitCommonTools.h.

Member Enumeration Documentation

◆ TranslationType

enum class RabbitCommon::CTools::TranslationType
strong

Definition at line 165 of file RabbitCommonTools.h.

Constructor & Destructor Documentation

◆ CTools()

RabbitCommon::CTools::CTools ( )
private

Definition at line 118 of file RabbitCommonTools.cpp.

◆ ~CTools()

RabbitCommon::CTools::~CTools ( )
privatevirtual

Definition at line 133 of file RabbitCommonTools.cpp.

Member Function Documentation

◆ AndroidRequestPermission() [1/2]

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

Definition at line 279 of file RabbitCommonTools.cpp.

◆ AndroidRequestPermission() [2/2]

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

Definition at line 299 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 417 of file RabbitCommonTools.cpp.

◆ CleanResource()

void RabbitCommon::CTools::CleanResource ( )
private

Definition at line 528 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 552 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 592 of file RabbitCommonTools.cpp.

◆ ExecuteWithAdministratorPrivilege()

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

Definition at line 580 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 728 of file RabbitCommonTools.cpp.

◆ GetCurrentUser()

QString RabbitCommon::CTools::GetCurrentUser ( )
static

Definition at line 762 of file RabbitCommonTools.cpp.

◆ GetHostName()

QString RabbitCommon::CTools::GetHostName ( )
static

Definition at line 779 of file RabbitCommonTools.cpp.

◆ GetLanguage()

QString RabbitCommon::CTools::GetLanguage ( )
static

Get language Acquisition order:

  • Environment Variable (LANG)
  • The value set by SetLanguage().
  • QLocale::system().name()

Definition at line 157 of file RabbitCommonTools.cpp.

◆ HasAdministratorPrivilege()

bool RabbitCommon::CTools::HasAdministratorPrivilege ( )
static

Has administrator privilege.

Since v2.3.0

Definition at line 571 of file RabbitCommonTools.cpp.

◆ Information()

QString RabbitCommon::CTools::Information ( )
static

RabbitCommon information.

Definition at line 193 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 307 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 = GetLanguage() 
)

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=GetLanguage())
    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 325 of file RabbitCommonTools.cpp.

◆ InitResource()

void RabbitCommon::CTools::InitResource ( )
private

Definition at line 523 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 639 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 = GetLanguage() 
)

Install translation.

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

Definition at line 453 of file RabbitCommonTools.cpp.

◆ InstallTranslatorFile()

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

Definition at line 427 of file RabbitCommonTools.cpp.

◆ Instance()

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

Definition at line 142 of file RabbitCommonTools.cpp.

◆ IsStartRun()

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

Definition at line 714 of file RabbitCommonTools.cpp.

◆ MarkDownToHtml()

QString RabbitCommon::CTools::MarkDownToHtml ( const QString &  szText)
static

Definition at line 786 of file RabbitCommonTools.cpp.

◆ RemoveStartRun()

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

Definition at line 691 of file RabbitCommonTools.cpp.

◆ RemoveTranslator()

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

Definition at line 511 of file RabbitCommonTools.cpp.

◆ SetLanguage()

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

Definition at line 151 of file RabbitCommonTools.cpp.

◆ StartWithAdministratorPrivilege()

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

Start program with administrator privilege.

Parameters
bQuitOldtrue, quit the old program
Returns

Definition at line 597 of file RabbitCommonTools.cpp.

◆ Version()

QString RabbitCommon::CTools::Version ( )
static

RabbitCommon version.

Definition at line 174 of file RabbitCommonTools.cpp.

Member Data Documentation

◆ m_bShowMaxWindow

bool RabbitCommon::CTools::m_bShowMaxWindow
private

Definition at line 340 of file RabbitCommonTools.h.

◆ m_Initialized

bool RabbitCommon::CTools::m_Initialized
private

Definition at line 338 of file RabbitCommonTools.h.

◆ m_Translator

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

Definition at line 336 of file RabbitCommonTools.h.


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