removed some unused files,
made file dialog wrapper use native dialogs again, fixed password dialog not remembering last key location/type, disabled precompiled headers when buidling universal binaries, updated changelog, fixed size problems of some dialogs git-svn-id: https://svn.code.sf.net/p/keepassx/code/trunk@179 b624d157-de02-0410-bad0-e51aec6abb33
This commit is contained in:
parent
ed3baff013
commit
8446ef1f75
|
@ -2,7 +2,14 @@
|
||||||
0.3.1
|
0.3.1
|
||||||
---------------
|
---------------
|
||||||
- made key/password dialog more user friendly
|
- made key/password dialog more user friendly
|
||||||
|
- added option for automatic database locking on inactivity
|
||||||
|
- native file dialogs are used again under MacOS X and Windows
|
||||||
- program accepts Qt command line switches like "-style" again
|
- program accepts Qt command line switches like "-style" again
|
||||||
|
- parameter "-cfg" now accepts relative paths (Bug #1825446)
|
||||||
|
- fixed invalid entries in .desktop file (Bug #1906875)
|
||||||
|
- fixed potential compilation problem in AES implementation (Bug #1905810)
|
||||||
|
- fixed crash when re-arranging groups (Bug #1754998)
|
||||||
|
- fixed size problems of some dialogs
|
||||||
|
|
||||||
---------------
|
---------------
|
||||||
0.3.0a
|
0.3.0a
|
||||||
|
@ -17,7 +24,7 @@
|
||||||
- global Auto-Type
|
- global Auto-Type
|
||||||
- fully customizable HTML based detail view
|
- fully customizable HTML based detail view
|
||||||
- better structured settings dialog
|
- better structured settings dialog
|
||||||
- secure random number generator based on ‘Yarrow‘ including an optional entropy collector
|
- secure random number generator based on 'Yarrow' including an optional entropy collector
|
||||||
- new dialog to view expiered entries
|
- new dialog to view expiered entries
|
||||||
- calendar widget to edit expiration dates in a more confortable way
|
- calendar widget to edit expiration dates in a more confortable way
|
||||||
- restructured password generator
|
- restructured password generator
|
||||||
|
|
|
@ -1,246 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* Copyright (C) 2005 by Tarek Saidi *
|
|
||||||
* mail@tarek-saidi.de *
|
|
||||||
* *
|
|
||||||
* This program is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; either version 2 of the License, or *
|
|
||||||
* (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License *
|
|
||||||
* along with this program; if not, write to the *
|
|
||||||
* Free Software Foundation, Inc., *
|
|
||||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
#include "PwmConfig.h"
|
|
||||||
#include <qobject.h>
|
|
||||||
#include <qdir.h>
|
|
||||||
#include <iostream>
|
|
||||||
using namespace std;
|
|
||||||
|
|
||||||
#ifdef Q_WS_MAC
|
|
||||||
#define DEFAULT_MOUNT_DIR "/Volumes/"
|
|
||||||
#endif
|
|
||||||
#ifdef Q_WS_X11
|
|
||||||
#define DEFAULT_MOUNT_DIR "/media/"
|
|
||||||
#endif
|
|
||||||
#ifdef Q_WS_WIN
|
|
||||||
#define DEFAULT_MOUNT_DIR "/"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define CSTR(x)((const char*)x.toUtf8())
|
|
||||||
#define QSTR(x)(QString::fromUtf8((x).c_str()))
|
|
||||||
|
|
||||||
bool CConfig::loadFromIni(QString filename){
|
|
||||||
QString defaultSearchOptions = "001101111";
|
|
||||||
QString defaultPwGenOptions = "1111100001";
|
|
||||||
ini.SetPath((const char*)filename.toUtf8());
|
|
||||||
ini.ReadFile();
|
|
||||||
ClipboardTimeOut=ini.GetValueI("Options","ClipboardTimeOut",20);
|
|
||||||
Toolbar=ini.GetValueB("UI","ShowToolbar",true);
|
|
||||||
EntryDetails=ini.GetValueB("UI","ShowEntryDetails",true);
|
|
||||||
OpenLast=ini.GetValueB("Options","RememberLastFile",true);
|
|
||||||
LastFile=QSTR(ini.GetValue("Options","LastFile",""));
|
|
||||||
ParseColumnString(QSTR(ini.GetValue("UI","Columns","1111100000")),Columns);
|
|
||||||
BannerColor1=ParseColorString(QSTR(ini.GetValue("Options","BannerColor1","0,85,127")));
|
|
||||||
BannerColor2=ParseColorString(QSTR(ini.GetValue("Options","BannerColor2","0,117,175")));
|
|
||||||
BannerTextColor=ParseColorString(QSTR(ini.GetValue("Options","BannerTextColor","222,222,222")));
|
|
||||||
ShowPasswords=ini.GetValueB("Options","ShowPasswords",false);
|
|
||||||
ShowPasswordsPasswordDlg=ini.GetValueB("Options","ShowPasswordsPasswordDlg",false);
|
|
||||||
OpenUrlCommand=QSTR(ini.GetValue("Options","UrlCmd","kfmclient openURL %1"));
|
|
||||||
Language=QSTR(ini.GetValue("Options","LangFile",""));
|
|
||||||
ParseBoolString(QSTR(ini.GetValue("Options","SearchOptions",(const char*)defaultSearchOptions.toUtf8())),defaultSearchOptions,SearchOptions,9);
|
|
||||||
ListView_HidePasswords=ini.GetValueB("UI","HidePasswords",true);
|
|
||||||
ListView_HideUsernames=ini.GetValueB("UI","HideUsernames",false);
|
|
||||||
ParseBoolString(QSTR(ini.GetValue("Options","PwGenOptions",(const char*)defaultPwGenOptions.toUtf8())),defaultPwGenOptions,PwGenOptions,10);
|
|
||||||
PwGenLength=ini.GetValueI("Options","PwGenLength",25);
|
|
||||||
PwGenCharList=QSTR(ini.GetValue("Options","PwGenCharList",""));
|
|
||||||
ExpandGroupTree=ini.GetValueB("Options","ExpandGroupTree",true);
|
|
||||||
MainWinHeight=ini.GetValueI("UI","MainWinHeight",550);
|
|
||||||
MainWinWidth=ini.GetValueI("UI","MainWinWidth",900);
|
|
||||||
MainWinSplit1=ini.GetValueI("UI","MainWinSplit1",100);
|
|
||||||
MainWinSplit2=ini.GetValueI("UI","MainWinSplit2",300);
|
|
||||||
ParseIntString(QSTR(ini.GetValue("UI","ColumnSizes","15,10,10,10,10,10,10,10,10,10")),ColumnSizes,10);
|
|
||||||
ShowStatusbar=ini.GetValueB("UI","ShowStatusbar",true);
|
|
||||||
AlternatingRowColors=ini.GetValueB("Options","AlternatingRowColors",true);
|
|
||||||
MountDir=QSTR(ini.GetValue("Options","MountDir",DEFAULT_MOUNT_DIR));
|
|
||||||
RememberLastKey=ini.GetValueB("Options","RememberLastKey",true);
|
|
||||||
LastKeyLocation=QSTR(ini.GetValue("Options","LastKeyLocation",""));
|
|
||||||
LastKeyType=(tKeyType)ini.GetValueI("Options","LastKeyType",(int)PASSWORD);
|
|
||||||
if(!OpenLast)RememberLastKey=false;
|
|
||||||
ToolbarIconSize=ini.GetValueI("UI","ToolbarIconSize",16);
|
|
||||||
ShowSysTrayIcon=ini.GetValueB("Options","ShowSysTrayIcon",false);
|
|
||||||
MinimizeToTray=ini.GetValueB("Options","MinimizeToTray",false);
|
|
||||||
SaveFileDlgHistory=ini.GetValueB("Options","SaveFileDlgHistory",true);
|
|
||||||
EnableBookmarkMenu=ini.GetValueB("Options","EnableBookmarkMenu",true);
|
|
||||||
GroupTreeRestore=ini.GetValueI("Options","GroupTreeRestore",1);
|
|
||||||
QString IntegrPluginVal=QSTR(ini.GetValue("Options","IntegrPlugin","None"));
|
|
||||||
if(IntegrPluginVal=="None")
|
|
||||||
IntegrPlugin=NONE;
|
|
||||||
else if(IntegrPluginVal=="Gnome")
|
|
||||||
IntegrPlugin=GNOME;
|
|
||||||
else if(IntegrPluginVal=="KDE")
|
|
||||||
IntegrPlugin=KDE;
|
|
||||||
else
|
|
||||||
IntegrPlugin=NONE;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool CConfig::saveToIni(QString filename){
|
|
||||||
ini.SetValueI("Options","ClipboardTimeOut",ClipboardTimeOut);
|
|
||||||
ini.SetValueB("UI","ShowToolbar",Toolbar);
|
|
||||||
ini.SetValueB("UI","ShowEntryDetails",EntryDetails);
|
|
||||||
ini.SetValueB("Options","RememberLastFile",OpenLast);
|
|
||||||
if(OpenLast)ini.SetValue("Options","LastFile",(const char*)LastFile.toUtf8());
|
|
||||||
else ini.SetValue("Options","LastFile","");
|
|
||||||
ini.SetValue("UI","Columns",(const char*)CreateColumnString().toUtf8(),true);
|
|
||||||
ini.SetValue("Options","BannerColor1",(const char*)CreateColorString(BannerColor1).toUtf8(),true);
|
|
||||||
ini.SetValue("Options","BannerColor2",(const char*)CreateColorString(BannerColor2).toUtf8(),true);
|
|
||||||
ini.SetValue("Options","BannerTextColor",(const char*)CreateColorString(BannerTextColor).toUtf8(),true);
|
|
||||||
ini.SetValueB("Options","ShowPasswords",ShowPasswords,true);
|
|
||||||
ini.SetValueB("Options","ShowPasswordsPasswordDlg",ShowPasswordsPasswordDlg,true);
|
|
||||||
ini.SetValue("Options","UrlCmd",(const char*)OpenUrlCommand.toUtf8(),true);
|
|
||||||
ini.SetValue("Options","LangFile",(const char*)Language.toUtf8(),true);
|
|
||||||
ini.SetValue("Options","SearchOptions",(const char*)CreateBoolString(SearchOptions,9).toUtf8(),true);
|
|
||||||
ini.SetValueB("UI","HidePasswords",ListView_HidePasswords);
|
|
||||||
ini.SetValueB("UI","HideUsernames",ListView_HideUsernames);
|
|
||||||
ini.SetValue("Options","PwGenOptions",(const char*)CreateBoolString(PwGenOptions,10).toUtf8(),true);
|
|
||||||
ini.SetValueI("Options","PwGenLength",PwGenLength,true);
|
|
||||||
ini.SetValue("Options","PwGenCharList",(const char*)PwGenCharList.toUtf8(),true);
|
|
||||||
ini.SetValueB("Options","ExpandGroupTree",ExpandGroupTree,true);
|
|
||||||
ini.SetValueI("UI","MainWinHeight",MainWinHeight);
|
|
||||||
ini.SetValueI("UI","MainWinWidth",MainWinWidth);
|
|
||||||
ini.SetValueI("UI","MainWinSplit1",MainWinSplit1);
|
|
||||||
ini.SetValueI("UI","MainWinSplit2",MainWinSplit2);
|
|
||||||
ini.SetValue("UI","ColumnSizes",(const char*)CreateIntString(ColumnSizes,10).toUtf8(),true);
|
|
||||||
ini.SetValueB("UI","ShowStatusbar",ShowStatusbar);
|
|
||||||
ini.SetValueB("Options","AlternatingRowColors",AlternatingRowColors);
|
|
||||||
ini.SetValue("Options","MountDir",(const char*)MountDir.toUtf8());
|
|
||||||
ini.SetValueB("Options","RememberLastKey",RememberLastKey);
|
|
||||||
ini.SetValueB("Options","ShowSysTrayIcon",ShowSysTrayIcon);
|
|
||||||
ini.SetValueB("Options","MinimizeToTray",MinimizeToTray);
|
|
||||||
ini.SetValueB("Options","SaveFileDlgHistory",SaveFileDlgHistory);
|
|
||||||
ini.SetValueB("Options","EnableBookmarkMenu",EnableBookmarkMenu);
|
|
||||||
ini.SetValueI("Options","GroupTreeRestore",GroupTreeRestore);
|
|
||||||
|
|
||||||
if(RememberLastKey){
|
|
||||||
ini.SetValue("Options","LastKeyLocation",(const char*)LastKeyLocation.toUtf8());
|
|
||||||
ini.SetValueI("Options","LastKeyType",LastKeyType);}
|
|
||||||
else{
|
|
||||||
ini.SetValue("Options","LastKeyLocation","");
|
|
||||||
ini.SetValueI("Options","LastKeyType",0);}
|
|
||||||
ini.SetValueI("UI","ToolbarIconSize",ToolbarIconSize,true);
|
|
||||||
|
|
||||||
if(IntegrPlugin==NONE)
|
|
||||||
ini.SetValue("Options","IntegrPlugin","None");
|
|
||||||
if(IntegrPlugin==GNOME)
|
|
||||||
ini.SetValue("Options","IntegrPlugin","Gnome");
|
|
||||||
if(IntegrPlugin==KDE)
|
|
||||||
ini.SetValue("Options","IntegrPlugin","KDE");
|
|
||||||
|
|
||||||
if(!ini.WriteFile())return false;
|
|
||||||
else return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CConfig::ParseColumnString(QString str, bool* dst){
|
|
||||||
if(str.length()<10){
|
|
||||||
bool _default[]={true,true,true,true,true,false,false,false,false,false};
|
|
||||||
memcpy((char*)_default,(char*)dst,10*sizeof(bool));}
|
|
||||||
for(int i=0; i<10; i++){
|
|
||||||
if(str[i]==QChar('0'))
|
|
||||||
*(dst+i)=false;
|
|
||||||
else
|
|
||||||
*(dst+i)=true;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
QString CConfig::CreateColumnString(){
|
|
||||||
QString str="";
|
|
||||||
for(int i=0;i<10;i++){
|
|
||||||
if(Columns[i])str+="1";
|
|
||||||
else str+="0";
|
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
QColor CConfig::ParseColorString(QString str){
|
|
||||||
QStringList lst=str.split(',');
|
|
||||||
if(lst.size()!=3){
|
|
||||||
qWarning((QObject::tr("Warning:")+" CConfig::ParseColorString(QString):"+QObject::tr("Invalid RGB color value.\n")).toUtf8());
|
|
||||||
return QColor(0,0,0);}
|
|
||||||
bool err[3];
|
|
||||||
int r=lst[0].toUInt(err);
|
|
||||||
int g=lst[1].toUInt(err+1);
|
|
||||||
int b=lst[2].toUInt(err+2);
|
|
||||||
if(!err[0] || !err[1] || !err[2]){
|
|
||||||
qWarning((QObject::tr("Warning:")+" CConfig::ParseColorString(QString):"+QObject::tr("Invalid RGB color value.\n")).toUtf8());
|
|
||||||
return QColor(0,0,0);}
|
|
||||||
return QColor(r,g,b);
|
|
||||||
}
|
|
||||||
|
|
||||||
QString CConfig::CreateColorString(QColor c){
|
|
||||||
return (QString::number(c.red())+","+QString::number(c.green())+","+QString::number(c.blue()));
|
|
||||||
}
|
|
||||||
|
|
||||||
void CConfig::ParseBoolString(const QString &str,const QString &defaults,bool* dst, int count){
|
|
||||||
Q_ASSERT(defaults.count() == count);
|
|
||||||
for(int i=0; i<count; i++){
|
|
||||||
QChar setting;
|
|
||||||
if(i < str.count()) setting = str[i];
|
|
||||||
else setting = defaults[i];
|
|
||||||
|
|
||||||
if(setting==QChar('0'))
|
|
||||||
*(dst+i)=false;
|
|
||||||
else
|
|
||||||
*(dst+i)=true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QString CConfig::CreateBoolString(bool* src, int count){
|
|
||||||
QString str="";
|
|
||||||
for(int i=0;i<count;i++){
|
|
||||||
if(src[i])str+="1";
|
|
||||||
else str+="0";
|
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define DEFAULT_INT_VAL 20
|
|
||||||
|
|
||||||
void CConfig::ParseIntString(const QString &str,int* dst, int count){
|
|
||||||
QStringList lst=str.split(",");
|
|
||||||
if(lst.size()!=count)
|
|
||||||
qWarning("Warnig: CConfig::ParseIntString(): unexpected item count.\n");
|
|
||||||
int* values=new int[count];
|
|
||||||
bool err;
|
|
||||||
for(int i=0;i<lst.size() && i<count;i++){
|
|
||||||
values[i]=lst[i].toUInt(&err);
|
|
||||||
if(!err){
|
|
||||||
qWarning("Warnig: CConfig::ParseIntString(): invalid int value.\n");
|
|
||||||
values[i]=DEFAULT_INT_VAL;}
|
|
||||||
}
|
|
||||||
if(count > lst.size()){
|
|
||||||
for(int i=lst.size(); i<count; i++)
|
|
||||||
values[i]=DEFAULT_INT_VAL;}
|
|
||||||
|
|
||||||
memcpy(dst,values,count*sizeof(int));
|
|
||||||
delete [] values;
|
|
||||||
}
|
|
||||||
|
|
||||||
QString CConfig::CreateIntString(int* src, int count){
|
|
||||||
QString str;
|
|
||||||
for(int i=0;i<count;i++){
|
|
||||||
str+=QString::number(src[i]);
|
|
||||||
if(i<(count-1))str+=",";
|
|
||||||
}
|
|
||||||
return str;
|
|
||||||
}
|
|
|
@ -1,86 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* Copyright (C) 2005 by Tarek Saidi *
|
|
||||||
* mail@tarek-saidi.de *
|
|
||||||
* *
|
|
||||||
* This program is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; either version 2 of the License, or *
|
|
||||||
* (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License *
|
|
||||||
* along with this program; if not, write to the *
|
|
||||||
* Free Software Foundation, Inc., *
|
|
||||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
***************************************************************************/
|
|
||||||
#ifndef _PWMCONFIG_H_
|
|
||||||
#define _PWMCONFIG_H_
|
|
||||||
|
|
||||||
#include <QColor>
|
|
||||||
#include "main.h"
|
|
||||||
#include "lib/IniReader.h"
|
|
||||||
|
|
||||||
class CConfig{
|
|
||||||
public:
|
|
||||||
enum IntegrPluginType{NONE,KDE,GNOME};
|
|
||||||
int TimeFormat;
|
|
||||||
int ClipboardTimeOut;
|
|
||||||
int MainWinHeight;
|
|
||||||
int MainWinWidth;
|
|
||||||
int MainWinSplit1;
|
|
||||||
int MainWinSplit2;
|
|
||||||
int ToolbarIconSize;
|
|
||||||
int PwGenLength;
|
|
||||||
int GroupTreeRestore; // 0:Restore Last; 1:Expand All; 2:Don't Expand
|
|
||||||
int ColumnSizes[10];
|
|
||||||
bool Toolbar;
|
|
||||||
bool EntryDetails;
|
|
||||||
bool OpenLast;
|
|
||||||
bool ListView_HidePasswords;
|
|
||||||
bool ListView_HideUsernames;
|
|
||||||
bool SearchOptions[9];
|
|
||||||
bool PwGenOptions[10];
|
|
||||||
bool Columns[10];
|
|
||||||
bool ShowPasswords;
|
|
||||||
bool ShowPasswordsPasswordDlg;
|
|
||||||
bool ExpandGroupTree;
|
|
||||||
bool EnableKdePlugin;
|
|
||||||
bool ShowStatusbar;
|
|
||||||
bool AlternatingRowColors;
|
|
||||||
bool RememberLastKey;
|
|
||||||
bool ShowSysTrayIcon;
|
|
||||||
bool MinimizeToTray;
|
|
||||||
bool SaveFileDlgHistory;
|
|
||||||
bool EnableBookmarkMenu;
|
|
||||||
QString PwGenCharList;
|
|
||||||
QString MountDir;
|
|
||||||
QString LastKeyLocation;
|
|
||||||
QString OpenUrlCommand;
|
|
||||||
QString Language;
|
|
||||||
QString LastFile;
|
|
||||||
QColor BannerColor1;
|
|
||||||
QColor BannerColor2;
|
|
||||||
QColor BannerTextColor;
|
|
||||||
IntegrPluginType IntegrPlugin;
|
|
||||||
tKeyType LastKeyType;
|
|
||||||
|
|
||||||
bool loadFromIni(QString filename);
|
|
||||||
bool saveToIni(QString filename);
|
|
||||||
|
|
||||||
private:
|
|
||||||
CIniFile ini;
|
|
||||||
void ParseColumnString(QString str, bool* dst);
|
|
||||||
void ParseBoolString(const QString &str,const QString &defaults,bool* dst, int count);
|
|
||||||
void ParseIntString(const QString &str,int* dst, int count);
|
|
||||||
QString CreateBoolString(bool* src, int count);
|
|
||||||
QColor ParseColorString(QString str);
|
|
||||||
QString CreateColumnString();
|
|
||||||
QString CreateColorString(QColor);
|
|
||||||
QString CreateIntString(int* src, int count);
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -27,6 +27,9 @@ CDbSettingsDlg::CDbSettingsDlg(QWidget* parent,IDatabase* db, bool modal, Qt::W
|
||||||
{
|
{
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
database=dynamic_cast<IKdbSettings*>(db);
|
database=dynamic_cast<IKdbSettings*>(db);
|
||||||
|
adjustSize();
|
||||||
|
setMaximumSize(size());
|
||||||
|
setMinimumSize(size());
|
||||||
createBanner(&BannerPixmap,getPixmap("appsettings"),tr("Settings"),width());
|
createBanner(&BannerPixmap,getPixmap("appsettings"),tr("Settings"),width());
|
||||||
ComboAlgo->insertItem(0,tr("AES(Rijndael): 256 Bit (default)"));
|
ComboAlgo->insertItem(0,tr("AES(Rijndael): 256 Bit (default)"));
|
||||||
ComboAlgo->insertItem(1,tr("Twofish: 256 Bit"));
|
ComboAlgo->insertItem(1,tr("Twofish: 256 Bit"));
|
||||||
|
|
|
@ -34,6 +34,9 @@ CEditGroupDialog::CEditGroupDialog(IDatabase* database,IGroupHandle* Handle,QWid
|
||||||
connect( ButtonBox, SIGNAL( accepted() ), this, SLOT( OnOK() ) );
|
connect( ButtonBox, SIGNAL( accepted() ), this, SLOT( OnOK() ) );
|
||||||
connect( ButtonBox, SIGNAL( rejected() ), this, SLOT( OnCancel() ) );
|
connect( ButtonBox, SIGNAL( rejected() ), this, SLOT( OnCancel() ) );
|
||||||
connect( Button_Icon, SIGNAL( clicked() ), this, SLOT( OnIconDlg() ));
|
connect( Button_Icon, SIGNAL( clicked() ), this, SLOT( OnIconDlg() ));
|
||||||
|
adjustSize();
|
||||||
|
setMaximumSize(size());
|
||||||
|
setMinimumSize(size());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -265,6 +265,21 @@ void PasswordDialog::OnOK(){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((Mode==Mode_Ask || Mode==Mode_Set) && config->rememberLastKey()){
|
||||||
|
if(Check_Password->isChecked() && Check_KeyFile->isChecked()){
|
||||||
|
config->setLastKeyType(BOTH);
|
||||||
|
config->setLastKeyLocation(Combo_KeyFile->currentText());
|
||||||
|
}
|
||||||
|
else if(Check_Password->isChecked()){
|
||||||
|
config->setLastKeyType(PASSWORD);
|
||||||
|
config->setLastKeyLocation(QString());
|
||||||
|
}
|
||||||
|
else if(Check_KeyFile->isChecked()){
|
||||||
|
config->setLastKeyType(PASSWORD);
|
||||||
|
config->setLastKeyLocation(Combo_KeyFile->currentText());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
done(Exit_Ok);
|
done(Exit_Ok);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,9 +29,6 @@ CGenPwDialog::CGenPwDialog(QWidget* parent, bool StandAloneMode,Qt::WFlags fl)
|
||||||
: QDialog(parent,fl)
|
: QDialog(parent,fl)
|
||||||
{
|
{
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
setMinimumSize(size());
|
|
||||||
setMaximumSize(size());
|
|
||||||
createBanner(&BannerPixmap,getPixmap("dice"),tr("Password Generator"),width());
|
|
||||||
connect(ButtonGenerate,SIGNAL(clicked()),this,SLOT(OnGeneratePw()));
|
connect(ButtonGenerate,SIGNAL(clicked()),this,SLOT(OnGeneratePw()));
|
||||||
connect(Radio_1,SIGNAL(toggled(bool)),this,SLOT(OnRadio1StateChanged(bool)));
|
connect(Radio_1,SIGNAL(toggled(bool)),this,SLOT(OnRadio1StateChanged(bool)));
|
||||||
connect(Radio_2,SIGNAL(toggled(bool)),this,SLOT(OnRadio2StateChanged(bool)));
|
connect(Radio_2,SIGNAL(toggled(bool)),this,SLOT(OnRadio2StateChanged(bool)));
|
||||||
|
@ -74,6 +71,10 @@ CGenPwDialog::CGenPwDialog(QWidget* parent, bool StandAloneMode,Qt::WFlags fl)
|
||||||
OnRadio1StateChanged(pwGenOptions.at(0));
|
OnRadio1StateChanged(pwGenOptions.at(0));
|
||||||
OnRadio2StateChanged(!pwGenOptions.at(0));
|
OnRadio2StateChanged(!pwGenOptions.at(0));
|
||||||
Spin_Num->setValue(config->pwGenLength());
|
Spin_Num->setValue(config->pwGenLength());
|
||||||
|
adjustSize();
|
||||||
|
setMaximumSize(size());
|
||||||
|
setMinimumSize(size());
|
||||||
|
createBanner(&BannerPixmap,getPixmap("dice"),tr("Password Generator"),width());
|
||||||
}
|
}
|
||||||
|
|
||||||
CGenPwDialog::~CGenPwDialog(){
|
CGenPwDialog::~CGenPwDialog(){
|
||||||
|
|
|
@ -30,7 +30,6 @@ SearchDialog::SearchDialog(IDatabase* database,IGroupHandle* Group,QWidget* pare
|
||||||
connect( ButtonBox, SIGNAL( rejected() ), this, SLOT( OnClose() ) );
|
connect( ButtonBox, SIGNAL( rejected() ), this, SLOT( OnClose() ) );
|
||||||
db=database;
|
db=database;
|
||||||
group=Group;
|
group=Group;
|
||||||
createBanner(&BannerPixmap,getPixmap("search"),tr("Search"),width());
|
|
||||||
QBitArray searchOptions=config->searchOptions();
|
QBitArray searchOptions=config->searchOptions();
|
||||||
checkBox_Cs->setChecked(searchOptions.at(0));
|
checkBox_Cs->setChecked(searchOptions.at(0));
|
||||||
checkBox_regExp->setChecked(searchOptions.at(1));
|
checkBox_regExp->setChecked(searchOptions.at(1));
|
||||||
|
@ -46,6 +45,10 @@ SearchDialog::SearchDialog(IDatabase* database,IGroupHandle* Group,QWidget* pare
|
||||||
checkBox_Recursive->setChecked(false);
|
checkBox_Recursive->setChecked(false);
|
||||||
checkBox_Recursive->setEnabled(false);
|
checkBox_Recursive->setEnabled(false);
|
||||||
}
|
}
|
||||||
|
adjustSize();
|
||||||
|
setMaximumSize(size());
|
||||||
|
setMinimumSize(size());
|
||||||
|
createBanner(&BannerPixmap,getPixmap("search"),tr("Search"),width());
|
||||||
}
|
}
|
||||||
|
|
||||||
SearchDialog::~SearchDialog()
|
SearchDialog::~SearchDialog()
|
||||||
|
|
|
@ -18,13 +18,7 @@
|
||||||
<property name="minimumSize" >
|
<property name="minimumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>440</width>
|
<width>440</width>
|
||||||
<height>213</height>
|
<height>0</height>
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize" >
|
|
||||||
<size>
|
|
||||||
<width>440</width>
|
|
||||||
<height>213</height>
|
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle" >
|
<property name="windowTitle" >
|
||||||
|
|
|
@ -10,22 +10,10 @@
|
||||||
<height>120</height>
|
<height>120</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy" >
|
|
||||||
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize" >
|
<property name="minimumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>350</width>
|
<width>350</width>
|
||||||
<height>120</height>
|
<height>0</height>
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize" >
|
|
||||||
<size>
|
|
||||||
<width>350</width>
|
|
||||||
<height>120</height>
|
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle" >
|
<property name="windowTitle" >
|
||||||
|
|
|
@ -6,15 +6,9 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>462</width>
|
<width>462</width>
|
||||||
<height>458</height>
|
<height>466</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy" >
|
|
||||||
<sizepolicy vsizetype="Maximum" hsizetype="Maximum" >
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="windowTitle" >
|
<property name="windowTitle" >
|
||||||
<string>Password Generator</string>
|
<string>Password Generator</string>
|
||||||
</property>
|
</property>
|
||||||
|
|
|
@ -5,26 +5,14 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>390</width>
|
<width>458</width>
|
||||||
<height>280</height>
|
<height>306</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy" >
|
|
||||||
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize" >
|
<property name="minimumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>390</width>
|
<width>390</width>
|
||||||
<height>280</height>
|
<height>0</height>
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize" >
|
|
||||||
<size>
|
|
||||||
<width>390</width>
|
|
||||||
<height>280</height>
|
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle" >
|
<property name="windowTitle" >
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
* This program is free software; you can redistribute it and/or modify *
|
* This program is free software; you can redistribute it and/or modify *
|
||||||
* it under the terms of the GNU General Public License as published by *
|
* it under the terms of the GNU General Public License as published by *
|
||||||
* the Free Software Foundation; version 2 of the License. *
|
* the Free Software Foundation; version 2 of the License. *
|
||||||
|
|
||||||
* *
|
* *
|
||||||
* This program is distributed in the hope that it will be useful, *
|
* This program is distributed in the hope that it will be useful, *
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
@ -70,40 +69,51 @@ QString KpxFileDialogs::saveFile(QWidget* Parent, const QString& Name, const QSt
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString QtStandardFileDialogs::openExistingFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter){
|
|
||||||
if(SelectedFilter >= Filters.size())
|
|
||||||
SelectedFilter=0;
|
QString QtStandardFileDialogs::toSingleStringFilter(const QStringList& filterList){
|
||||||
QFileDialog FileDlg(parent,title,dir);
|
if(!filterList.size())
|
||||||
FileDlg.setFilters(Filters);
|
return QString();
|
||||||
FileDlg.setFileMode(QFileDialog::ExistingFile);
|
QString SingleString;
|
||||||
FileDlg.selectFilter(Filters[SelectedFilter]);
|
for(int i=0;i<filterList.size()-1;i++){
|
||||||
if(!FileDlg.exec())return QString();
|
SingleString += filterList[i] + ";;";
|
||||||
if(!FileDlg.selectedFiles().size())return QString();
|
}
|
||||||
LastFilter=FileDlg.filters().indexOf(FileDlg.selectedFilter());
|
SingleString += filterList.back();
|
||||||
return FileDlg.selectedFiles()[0];
|
return SingleString;
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList QtStandardFileDialogs::openExistingFilesDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter){
|
|
||||||
QFileDialog FileDlg(parent,title,dir);
|
|
||||||
FileDlg.setFilters(Filters);
|
QString QtStandardFileDialogs::openExistingFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilterIndex){
|
||||||
FileDlg.setFileMode(QFileDialog::ExistingFiles);
|
QString SelectedFilter;
|
||||||
if(!FileDlg.exec())return QStringList();
|
if(SelectedFilterIndex < Filters.size())
|
||||||
LastFilter=FileDlg.filters().indexOf(FileDlg.selectedFilter());
|
SelectedFilter=Filters[SelectedFilterIndex];
|
||||||
return FileDlg.selectedFiles();
|
QString filename = QFileDialog::getOpenFileName(parent,title,dir,toSingleStringFilter(Filters),&SelectedFilter);
|
||||||
|
LastFilter=Filters.indexOf(SelectedFilter);
|
||||||
|
return filename;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString QtStandardFileDialogs::saveFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter, bool ShowOverwriteWarning){
|
QStringList QtStandardFileDialogs::openExistingFilesDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilterIndex){
|
||||||
QFileDialog FileDlg(parent,title,dir);
|
QString SelectedFilter;
|
||||||
FileDlg.setFilters(Filters);
|
if(SelectedFilterIndex < Filters.size())
|
||||||
FileDlg.setFileMode(QFileDialog::AnyFile);
|
SelectedFilter=Filters[SelectedFilterIndex];
|
||||||
FileDlg.setAcceptMode(QFileDialog::AcceptSave);
|
QStringList filenames = QFileDialog::getOpenFileNames(parent,title,dir,toSingleStringFilter(Filters),&SelectedFilter);
|
||||||
FileDlg.setConfirmOverwrite(ShowOverwriteWarning);
|
LastFilter=Filters.indexOf(SelectedFilter);
|
||||||
if(!FileDlg.exec())return QString();
|
return filenames;
|
||||||
LastFilter=FileDlg.filters().indexOf(FileDlg.selectedFilter());
|
}
|
||||||
|
|
||||||
|
QString QtStandardFileDialogs::saveFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilterIndex, bool ShowOverwriteWarning){
|
||||||
|
QString SelectedFilter;
|
||||||
|
if(SelectedFilterIndex < Filters.size())
|
||||||
|
SelectedFilter=Filters[SelectedFilterIndex];
|
||||||
|
QString filepath = QFileDialog::getSaveFileName(parent,title,dir,toSingleStringFilter(Filters),&SelectedFilter,
|
||||||
|
ShowOverwriteWarning ? (QFileDialog::Option)0 : QFileDialog::DontConfirmOverwrite);
|
||||||
|
LastFilter=Filters.indexOf(SelectedFilter);
|
||||||
|
|
||||||
//Check whether the file has an extension which fits to the selected filter
|
//Check whether the file has an extension which fits to the selected filter
|
||||||
QString filepath=FileDlg.selectedFiles()[0];
|
QFileInfo file(filepath);
|
||||||
QString filename=filepath.right(filepath.length()-filepath.lastIndexOf("/")-1);
|
QString filename=file.fileName();
|
||||||
int a=Filters[LastFilter].indexOf('(');
|
int a=Filters[LastFilter].indexOf('(');
|
||||||
int b=Filters[LastFilter].indexOf(')');
|
int b=Filters[LastFilter].indexOf(')');
|
||||||
QStringList Extensions=Filters[LastFilter].mid(a+1,b-a-1).split(" ");
|
QStringList Extensions=Filters[LastFilter].mid(a+1,b-a-1).split(" ");
|
||||||
|
@ -113,10 +123,8 @@ QString QtStandardFileDialogs::saveFileDialog(QWidget* parent,QString title,QStr
|
||||||
for(int i=0;i<Extensions.size();i++)
|
for(int i=0;i<Extensions.size();i++)
|
||||||
Extensions[i].remove(0,2); //remove the *. from the extensions
|
Extensions[i].remove(0,2); //remove the *. from the extensions
|
||||||
|
|
||||||
if(filename.contains(".")){
|
if(!file.suffix().isEmpty()){
|
||||||
int p=filename.lastIndexOf(".");
|
if(Extensions.contains(file.suffix()))
|
||||||
QString ext=filename.right(filename.size()-p-1).toLower();
|
|
||||||
if(Extensions.contains(ext))
|
|
||||||
return filepath;
|
return filepath;
|
||||||
else
|
else
|
||||||
return filepath+"."+Extensions[0];
|
return filepath+"."+Extensions[0];
|
||||||
|
|
|
@ -39,8 +39,12 @@ class FileDlgHistory:public QObject{
|
||||||
Entry(){Filter=-1;}
|
Entry(){Filter=-1;}
|
||||||
QString Dir;
|
QString Dir;
|
||||||
int Filter;
|
int Filter;
|
||||||
bool isNull(){if(Filter==-1)return true;
|
bool isNull(){
|
||||||
else return false;}
|
if(Filter==-1)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
QHash<QString,Entry>History;
|
QHash<QString,Entry>History;
|
||||||
|
@ -50,42 +54,39 @@ class FileDlgHistory:public QObject{
|
||||||
|
|
||||||
class KpxFileDialogs{
|
class KpxFileDialogs{
|
||||||
public:
|
public:
|
||||||
static void setPlugin(IFileDialog* FileDlgPlugin);
|
static void setPlugin(IFileDialog* FileDlgPlugin);
|
||||||
static QString openExistingFile(QWidget* parent, const QString& Name,
|
static QString openExistingFile(QWidget* parent, const QString& Name,
|
||||||
const QString& Title,
|
const QString& Title,
|
||||||
const QStringList& Filters,
|
const QStringList& Filters,
|
||||||
QString Dir=QString(),
|
QString Dir=QString(),
|
||||||
int SelectedFilter=-1);
|
int SelectedFilter=-1);
|
||||||
static QStringList openExistingFiles(QWidget* parent, const QString& Name,
|
static QStringList openExistingFiles(QWidget* parent, const QString& Name,
|
||||||
const QString& Title,
|
const QString& Title,
|
||||||
const QStringList& Filters,
|
const QStringList& Filters,
|
||||||
const QString Dir=QString(),
|
const QString Dir=QString(),
|
||||||
int SelectedFilter=-1);
|
int SelectedFilter=-1);
|
||||||
static QString saveFile(QWidget* parent, const QString& Name,
|
static QString saveFile(QWidget* parent, const QString& Name,
|
||||||
const QString& Title,
|
const QString& Title,
|
||||||
const QStringList& Filters,
|
const QStringList& Filters,
|
||||||
bool ShowOverwriteWarning=true,
|
bool ShowOverwriteWarning=true,
|
||||||
QString Dir=QString(),
|
QString Dir=QString(),
|
||||||
int SelectedFilter=-1);
|
int SelectedFilter=-1);
|
||||||
private:
|
private:
|
||||||
static IFileDialog* iFileDialog;
|
static IFileDialog* iFileDialog;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class QtStandardFileDialogs:public QObject,public IFileDialog{
|
class QtStandardFileDialogs:public QObject,public IFileDialog{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
Q_INTERFACES(IFileDialog);
|
Q_INTERFACES(IFileDialog);
|
||||||
public:
|
public:
|
||||||
QString openExistingFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter);
|
QString openExistingFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter);
|
||||||
QStringList openExistingFilesDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter);
|
QStringList openExistingFilesDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter);
|
||||||
QString saveFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter,bool ShowOverwriteWarning);
|
QString saveFileDialog(QWidget* parent,QString title,QString dir,QStringList Filters,int SelectedFilter,bool ShowOverwriteWarning);
|
||||||
int getLastFilter();
|
int getLastFilter();
|
||||||
private:
|
private:
|
||||||
int LastFilter;
|
static QString toSingleStringFilter(const QStringList& filterList);
|
||||||
|
int LastFilter;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern FileDlgHistory fileDlgHistory;
|
extern FileDlgHistory fileDlgHistory;
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
|
|
||||||
#include "KdePlugin.h"
|
|
||||||
|
|
||||||
bool CKdePlugin::resolveSymbols(QLibrary& lib){
|
|
||||||
getAppObj=(QApplication*(*)(int,char**))lib.resolve("getAppObj");
|
|
||||||
if(getAppObj == NULL) return false;
|
|
||||||
return true;
|
|
||||||
}
|
|
|
@ -1,13 +0,0 @@
|
||||||
#ifndef _KDEPLUGIN_H_
|
|
||||||
#define _KDEPLUGIN_H_
|
|
||||||
#include <qlibrary.h>
|
|
||||||
#include <qapplication.h>
|
|
||||||
|
|
||||||
class CKdePlugin{
|
|
||||||
public:
|
|
||||||
bool resolveSymbols(QLibrary& lib);
|
|
||||||
QApplication*(*getAppObj)(int,char**);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,19 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* Copyright (C) 2005-2006 by Tarek Saidi *
|
|
||||||
* tarek.saidi@arcor.de *
|
|
||||||
* *
|
|
||||||
* This program is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; version 2 of the License. *
|
|
||||||
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License *
|
|
||||||
* along with this program; if not, write to the *
|
|
||||||
* Free Software Foundation, Inc., *
|
|
||||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
***************************************************************************/
|
|
|
@ -1,28 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* Copyright (C) 2005-2006 by Tarek Saidi *
|
|
||||||
* tarek.saidi@arcor.de *
|
|
||||||
* *
|
|
||||||
* This program is free software; you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU General Public License as published by *
|
|
||||||
* the Free Software Foundation; version 2 of the License. *
|
|
||||||
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License *
|
|
||||||
* along with this program; if not, write to the *
|
|
||||||
* Free Software Foundation, Inc., *
|
|
||||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
||||||
***************************************************************************/
|
|
||||||
|
|
||||||
#include <QFileIconProvider>
|
|
||||||
#include <QIcon>
|
|
||||||
|
|
||||||
class KpFileIconProvider : public QFileIconProvider{
|
|
||||||
public:
|
|
||||||
virtual QIcon icon(IconType type) const;
|
|
||||||
virtual QIcon icon(const QFileInfo& info) const;
|
|
||||||
};
|
|
13
src/src.pro
13
src/src.pro
|
@ -76,7 +76,10 @@ macx {
|
||||||
QMAKE_BUNDLE_DATA += data
|
QMAKE_BUNDLE_DATA += data
|
||||||
ICON = ../share/macx_bundle/icon.icns
|
ICON = ../share/macx_bundle/icon.icns
|
||||||
CONFIG += app_bundle
|
CONFIG += app_bundle
|
||||||
isEqual(ARCH,UNIVERSAL): CONFIG += x86 ppc
|
isEqual(ARCH,UNIVERSAL) {
|
||||||
|
CONFIG += x86 ppc
|
||||||
|
CONFIG -= precompile_header
|
||||||
|
}
|
||||||
isEqual(ARCH,INTEL): CONFIG += x86
|
isEqual(ARCH,INTEL): CONFIG += x86
|
||||||
isEqual(ARCH,PPC): CONFIG += ppc
|
isEqual(ARCH,PPC): CONFIG += ppc
|
||||||
SOURCES += main_macx.cpp
|
SOURCES += main_macx.cpp
|
||||||
|
@ -170,7 +173,6 @@ HEADERS += lib/UrlLabel.h \
|
||||||
# dialogs/TrashCanDlg.h \
|
# dialogs/TrashCanDlg.h \
|
||||||
lib/random.h \
|
lib/random.h \
|
||||||
Database.h \
|
Database.h \
|
||||||
# lib/KdePlugin.h \
|
|
||||||
lib/AutoType.h \
|
lib/AutoType.h \
|
||||||
lib/FileDialogs.h \
|
lib/FileDialogs.h \
|
||||||
lib/ShortcutWidget.h \
|
lib/ShortcutWidget.h \
|
||||||
|
@ -192,11 +194,10 @@ HEADERS += lib/UrlLabel.h \
|
||||||
crypto/sha1.h \
|
crypto/sha1.h \
|
||||||
lib/WaitAnimationWidget.h \
|
lib/WaitAnimationWidget.h \
|
||||||
plugins/interfaces/IFileDialog.h \
|
plugins/interfaces/IFileDialog.h \
|
||||||
# plugins/interfaces/IKdeInit.h \
|
plugins/interfaces/IKdeInit.h \
|
||||||
# plugins/interfaces/IGnomeInit.h \
|
plugins/interfaces/IGnomeInit.h \
|
||||||
plugins/interfaces/IIconTheme.h \
|
plugins/interfaces/IIconTheme.h \
|
||||||
KpxConfig.h \
|
KpxConfig.h \
|
||||||
# KpxFirefox.h \
|
|
||||||
dialogs/AddBookmarkDlg.h \
|
dialogs/AddBookmarkDlg.h \
|
||||||
lib/bookmarks.h \
|
lib/bookmarks.h \
|
||||||
dialogs/ManageBookmarksDlg.h
|
dialogs/ManageBookmarksDlg.h
|
||||||
|
@ -235,7 +236,6 @@ SOURCES += lib/UrlLabel.cpp \
|
||||||
lib/random.cpp \
|
lib/random.cpp \
|
||||||
Database.cpp \
|
Database.cpp \
|
||||||
lib/tools.cpp \
|
lib/tools.cpp \
|
||||||
# lib/KdePlugin.cpp \
|
|
||||||
lib/GroupView.cpp \
|
lib/GroupView.cpp \
|
||||||
lib/EntryView.cpp \
|
lib/EntryView.cpp \
|
||||||
lib/FileDialogs.cpp \
|
lib/FileDialogs.cpp \
|
||||||
|
@ -245,7 +245,6 @@ SOURCES += lib/UrlLabel.cpp \
|
||||||
crypto/yarrow.cpp \
|
crypto/yarrow.cpp \
|
||||||
lib/WaitAnimationWidget.cpp \
|
lib/WaitAnimationWidget.cpp \
|
||||||
KpxConfig.cpp \
|
KpxConfig.cpp \
|
||||||
# KpxFirefox.cpp \
|
|
||||||
dialogs/AddBookmarkDlg.cpp \
|
dialogs/AddBookmarkDlg.cpp \
|
||||||
lib/bookmarks.cpp \
|
lib/bookmarks.cpp \
|
||||||
dialogs/ManageBookmarksDlg.cpp \
|
dialogs/ManageBookmarksDlg.cpp \
|
||||||
|
|
Loading…
Reference in New Issue