File indexing completed on 2024-05-05 03:49:17
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2012 Dennis Nienhüser <nienhueser@kde.org> 0004 // 0005 0006 #include "MarbleDeclarativeObject.h" 0007 0008 #include "MarbleDirs.h" 0009 #include "MarbleGlobal.h" 0010 0011 #include <QProcessEnvironment> 0012 0013 class MarbleDeclarativeObjectPrivate 0014 { 0015 public: 0016 // Yet empty 0017 }; 0018 0019 MarbleDeclarativeObject::MarbleDeclarativeObject( QObject *parent ) : 0020 QObject( parent ), 0021 d( new MarbleDeclarativeObjectPrivate ) 0022 { 0023 // nothing to do 0024 } 0025 0026 MarbleDeclarativeObject::~MarbleDeclarativeObject() 0027 { 0028 delete d; 0029 } 0030 0031 QString MarbleDeclarativeObject::version() const 0032 { 0033 return Marble::MARBLE_VERSION_STRING; 0034 } 0035 0036 QString MarbleDeclarativeObject::resolvePath(const QString &path) const 0037 { 0038 return Marble::MarbleDirs::path( path ); 0039 } 0040 0041 bool MarbleDeclarativeObject::canExecute(const QString &program) const 0042 { 0043 QString path = QProcessEnvironment::systemEnvironment().value(QStringLiteral("PATH"), QStringLiteral("/usr/local/bin:/usr/bin:/bin")); 0044 for( const QString &dir: path.split( QLatin1Char( ':' ) ) ) { 0045 QFileInfo const executable( QDir( dir ), program ); 0046 if ( executable.exists() && executable.isExecutable() ) { 0047 return true; 0048 } 0049 } 0050 0051 return false; 0052 } 0053 0054 #include "moc_MarbleDeclarativeObject.cpp"