reactivated KDE4 plugin
git-svn-id: https://svn.code.sf.net/p/keepassx/code/trunk@178 b624d157-de02-0410-bad0-e51aec6abb33
This commit is contained in:
parent
317397e063
commit
ed3baff013
|
@ -91,7 +91,10 @@
|
||||||
#include "Database.h"
|
#include "Database.h"
|
||||||
#include "KpxConfig.h"
|
#include "KpxConfig.h"
|
||||||
|
|
||||||
|
#include "plugins/interfaces/IIconTheme.h"
|
||||||
|
|
||||||
extern QString PluginLoadError;
|
extern QString PluginLoadError;
|
||||||
|
extern IIconTheme* IconLoader;
|
||||||
extern KpxConfig *config;
|
extern KpxConfig *config;
|
||||||
extern QString AppDir;
|
extern QString AppDir;
|
||||||
extern QString HomeDir;
|
extern QString HomeDir;
|
||||||
|
|
|
@ -144,8 +144,7 @@ const QIcon& getIcon(const QString& name){
|
||||||
if(CachedIcon)
|
if(CachedIcon)
|
||||||
return *CachedIcon;
|
return *CachedIcon;
|
||||||
QIcon* NewIcon=NULL;
|
QIcon* NewIcon=NULL;
|
||||||
//TODO plugins
|
if(IconLoader){
|
||||||
/*if(IconLoader){
|
|
||||||
NewIcon=new QIcon(IconLoader->getIcon(name));
|
NewIcon=new QIcon(IconLoader->getIcon(name));
|
||||||
if(NewIcon->isNull()){
|
if(NewIcon->isNull()){
|
||||||
delete NewIcon;
|
delete NewIcon;
|
||||||
|
@ -153,7 +152,7 @@ const QIcon& getIcon(const QString& name){
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
IconCache.insert(name,NewIcon);
|
IconCache.insert(name,NewIcon);
|
||||||
}*/
|
}
|
||||||
if(!NewIcon)
|
if(!NewIcon)
|
||||||
{
|
{
|
||||||
NewIcon=new QIcon(getImageFile(name+".png"));
|
NewIcon=new QIcon(getImageFile(name+".png"));
|
||||||
|
|
89
src/main.cpp
89
src/main.cpp
|
@ -19,16 +19,15 @@
|
||||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
/*
|
|
||||||
#include "plugins/interfaces/IFileDialog.h"
|
#include "plugins/interfaces/IFileDialog.h"
|
||||||
#include "plugins/interfaces/IKdeInit.h"
|
#include "plugins/interfaces/IKdeInit.h"
|
||||||
#include "plugins/interfaces/IGnomeInit.h"
|
#include "plugins/interfaces/IGnomeInit.h"
|
||||||
#include "plugins/interfaces/IIconTheme.h"
|
#include "plugins/interfaces/IIconTheme.h"
|
||||||
#include "lib/FileDialogs.h"
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
#include <QLibraryInfo>
|
#include <QLibraryInfo>
|
||||||
|
#include <QPluginLoader>
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "crypto/yarrow.h"
|
#include "crypto/yarrow.h"
|
||||||
|
@ -48,29 +47,26 @@ QString DetailViewTemplate;
|
||||||
bool EventOccurred;
|
bool EventOccurred;
|
||||||
|
|
||||||
QPixmap* EntryIcons;
|
QPixmap* EntryIcons;
|
||||||
//IIconTheme* IconLoader=NULL; //TODO plugins
|
IIconTheme* IconLoader=NULL;
|
||||||
|
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
QApplication* app;
|
QApplication* app=NULL;
|
||||||
#if defined(Q_WS_X11) && defined(GLOBAL_AUTOTYPE)
|
|
||||||
app = new KeepassApplication(argc,argv);
|
|
||||||
#else
|
|
||||||
app = new QApplication(argc,argv);
|
|
||||||
#endif
|
|
||||||
initAppPaths(argc,argv);
|
initAppPaths(argc,argv);
|
||||||
CmdLineArgs args;
|
CmdLineArgs args;
|
||||||
args.parse(QApplication::arguments());
|
if(!args.preparse(argc,argv)){ // searches only for the -cfg parameter
|
||||||
qDebug(CSTR(AppDir));
|
qCritical(CSTR(args.error()));
|
||||||
qDebug(CSTR(DataDir));
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
//Load Config
|
//Load Config
|
||||||
QString IniFilename;
|
QString IniFilename;
|
||||||
if(args.configLocation().isEmpty()){
|
if(args.configLocation().isEmpty()){
|
||||||
if(!QDir(HomeDir).exists()){
|
if(!QDir(HomeDir).exists()){
|
||||||
QDir conf(QDir::homePath());
|
QDir conf(QDir::homePath());
|
||||||
if(!QDir().mkpath(HomeDir))
|
if(!QDir().mkpath(HomeDir))
|
||||||
qDebug("Warning: Could not create directory '%s'", CSTR(HomeDir));
|
qWarning("Warning: Could not create directory '%s'", CSTR(HomeDir));
|
||||||
}
|
}
|
||||||
IniFilename=HomeDir+"/config";
|
IniFilename=HomeDir+"/config";
|
||||||
}
|
}
|
||||||
|
@ -80,8 +76,9 @@ int main(int argc, char **argv)
|
||||||
config = new KpxConfig(IniFilename);
|
config = new KpxConfig(IniFilename);
|
||||||
fileDlgHistory.load();
|
fileDlgHistory.load();
|
||||||
|
|
||||||
// TODO Plugins
|
// PlugIns
|
||||||
/*if(config->integrPlugin()!=KpxConfig::NoIntegr){
|
|
||||||
|
if(config->integrPlugin()!=KpxConfig::NoIntegr){
|
||||||
QString LibName="libkeepassx-";
|
QString LibName="libkeepassx-";
|
||||||
if(config->integrPlugin()==KpxConfig::KDE)
|
if(config->integrPlugin()==KpxConfig::KDE)
|
||||||
LibName+="kde.so";
|
LibName+="kde.so";
|
||||||
|
@ -122,7 +119,16 @@ int main(int argc, char **argv)
|
||||||
qWarning(CSTR(QString("Could not load desktop integration plugin: File '%1' not found.").arg(LibName)));
|
qWarning(CSTR(QString("Could not load desktop integration plugin: File '%1' not found.").arg(LibName)));
|
||||||
PluginLoadError=QObject::tr("Could not locate library file.");
|
PluginLoadError=QObject::tr("Could not locate library file.");
|
||||||
}
|
}
|
||||||
}*/
|
}
|
||||||
|
if(!app){
|
||||||
|
#if defined(Q_WS_X11) && defined(GLOBAL_AUTOTYPE)
|
||||||
|
app = new KeepassApplication(argc,argv);
|
||||||
|
#else
|
||||||
|
app = new QApplication(argc,argv);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
args.parse(QApplication::arguments());
|
||||||
|
|
||||||
|
|
||||||
//Internationalization
|
//Internationalization
|
||||||
QLocale loc;
|
QLocale loc;
|
||||||
|
@ -225,20 +231,6 @@ bool CmdLineArgs::parse(const QStringList& argv){
|
||||||
Help=true;
|
Help=true;
|
||||||
break; // break, because other arguments will be ignored anyway
|
break; // break, because other arguments will be ignored anyway
|
||||||
}
|
}
|
||||||
if(argv[i]=="-cfg"){
|
|
||||||
if(argv.size()==i+1){
|
|
||||||
Error="Missing argument for '-cfg'.";
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(argv[i+1].left(1)=="-"){
|
|
||||||
Error=QString("Expected a path as argument for '-cfg' but got '%1.'").arg(argv[i+1]);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
QFileInfo file(argv[i+1]);
|
|
||||||
ConfigLocation=file.absoluteFilePath();
|
|
||||||
i++;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if(argv[i]=="-lang"){
|
if(argv[i]=="-lang"){
|
||||||
if(argv.size()==i+1){
|
if(argv.size()==i+1){
|
||||||
Error="Missing argument for '-lang'.";
|
Error="Missing argument for '-lang'.";
|
||||||
|
@ -252,6 +244,11 @@ bool CmdLineArgs::parse(const QStringList& argv){
|
||||||
i++;
|
i++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if(argv[i]=="-cfg"){
|
||||||
|
//already done in preparse() -> skip
|
||||||
|
i++;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if(argv[i]=="-min"){
|
if(argv[i]=="-min"){
|
||||||
StartMinimized=true;
|
StartMinimized=true;
|
||||||
continue;
|
continue;
|
||||||
|
@ -270,6 +267,26 @@ bool CmdLineArgs::parse(const QStringList& argv){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CmdLineArgs::preparse(int argc,char** argv){
|
||||||
|
for(int i=1;i<argc;i++){
|
||||||
|
if(QString(argv[i])=="-cfg"){
|
||||||
|
if(argc==i+1){
|
||||||
|
Error="Missing argument for '-cfg'.";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if(QString(argv[i+1]).left(1)=="-"){
|
||||||
|
Error=QString("Expected a path as argument for '-cfg' but got '%1.'").arg(argv[i+1]);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
QFileInfo file(argv[i+1]);
|
||||||
|
ConfigLocation=file.absoluteFilePath();
|
||||||
|
i++;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
void CmdLineArgs::printHelp(){
|
void CmdLineArgs::printHelp(){
|
||||||
cout << "KeePassX" << APP_VERSION << endl;
|
cout << "KeePassX" << APP_VERSION << endl;
|
||||||
cout << "Usage: keepassx [Filename] [Options]" << endl;
|
cout << "Usage: keepassx [Filename] [Options]" << endl;
|
||||||
|
@ -285,23 +302,13 @@ void CmdLineArgs::printHelp(){
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//TODO Plugins
|
|
||||||
/*
|
|
||||||
QString findPlugin(const QString& filename){
|
QString findPlugin(const QString& filename){
|
||||||
QFileInfo info;
|
QFileInfo info;
|
||||||
|
|
||||||
info.setFile(AppDir+"/../lib/"+filename);
|
info.setFile(AppDir+"/../lib/"+filename);
|
||||||
if(info.exists() && info.isFile())
|
if(info.exists() && info.isFile())
|
||||||
return AppDir+"/../lib/"+filename;
|
return AppDir+"/../lib/"+filename;
|
||||||
|
|
||||||
return QString();
|
return QString();
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
#ifndef _MAIN_H_
|
#ifndef _MAIN_H_
|
||||||
#define _MAIN_H_
|
#define _MAIN_H_
|
||||||
|
|
||||||
//QString findPlugin(const QString& filename); //TODO Plugins
|
QString findPlugin(const QString& filename);
|
||||||
void loadImages();
|
void loadImages();
|
||||||
bool loadTranslation(QTranslator* tr,const QString& prefix,const QString& LocaleCode,const QStringList& SearchPaths);
|
bool loadTranslation(QTranslator* tr,const QString& prefix,const QString& LocaleCode,const QStringList& SearchPaths);
|
||||||
void initAppPaths(int argc, char **argv);
|
void initAppPaths(int argc, char **argv);
|
||||||
|
@ -29,6 +29,7 @@ class CmdLineArgs {
|
||||||
public:
|
public:
|
||||||
CmdLineArgs();
|
CmdLineArgs();
|
||||||
bool parse(const QStringList& argv);
|
bool parse(const QStringList& argv);
|
||||||
|
bool preparse(int argc,char** argv);
|
||||||
static void printHelp();
|
static void printHelp();
|
||||||
QString error() {return Error;}
|
QString error() {return Error;}
|
||||||
QString file() {return File;}
|
QString file() {return File;}
|
||||||
|
|
|
@ -157,13 +157,13 @@ QApplication* KdePlugin::getMainAppObject(int argc, char** argv){
|
||||||
return dynamic_cast<QApplication*>( new KpKApplication() );
|
return dynamic_cast<QApplication*>( new KpKApplication() );
|
||||||
#else
|
#else
|
||||||
return dynamic_cast<QApplication*>( new KApplication() );
|
return dynamic_cast<QApplication*>( new KApplication() );
|
||||||
#emdif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
QIcon KdePlugin::getIcon(const QString& name){
|
QIcon KdePlugin::getIcon(const QString& name){
|
||||||
KIconLoader loader;
|
KIconLoader loader;
|
||||||
QPixmap pxm=loader.loadIcon(IconMap.value(name),K3Icon::Desktop,0,K3Icon::DefaultState,QStringList(),NULL,true);
|
QPixmap pxm=loader.loadIcon(IconMap.value(name),KIconLoader::Desktop,0,KIconLoader::DefaultState,QStringList(),NULL,true);
|
||||||
if(pxm.isNull())return QIcon();
|
if(pxm.isNull())return QIcon();
|
||||||
QIcon icon(pxm);
|
QIcon icon(pxm);
|
||||||
return icon;
|
return icon;
|
||||||
|
|
Loading…
Reference in New Issue