From ad2f445503982b1c3d96806a4dd297587798477b Mon Sep 17 00:00:00 2001 From: tariq Date: Tue, 10 Jan 2006 23:27:44 +0000 Subject: [PATCH] nomsg git-svn-id: https://svn.code.sf.net/p/keepassx/code/trunk@8 b624d157-de02-0410-bad0-e51aec6abb33 --- share/keepass/book.png | Bin 1086 -> 0 bytes share/keepass/i18n/russian.qm | Bin 0 -> 21560 bytes share/keepass/{ => icons}/clientic.png | Bin share/keepass/{ => icons}/i18n.png | Bin share/keepass/{ => icons}/key.png | Bin .../icons/nuvola/32x32/actions/configure.png | Bin 0 -> 1907 bytes .../icons/nuvola/32x32/actions/edit.png | Bin 0 -> 1395 bytes .../icons/nuvola/32x32/actions/edit_add.png | Bin 0 -> 1790 bytes .../icons/nuvola/32x32/actions/editdelete.png | Bin 0 -> 1805 bytes .../icons/nuvola/32x32/actions/exit.png | Bin 0 -> 2446 bytes .../icons/nuvola/32x32/actions/fileclose.png | Bin 0 -> 2265 bytes .../icons/nuvola/32x32/actions/fileexport.png | Bin 0 -> 1596 bytes .../icons/nuvola/32x32/actions/filenew.png | Bin 0 -> 1857 bytes .../icons/nuvola/32x32/actions/fileopen.png | Bin 0 -> 1714 bytes .../icons/nuvola/32x32/actions/filesave.png | Bin 0 -> 1741 bytes .../icons/nuvola/32x32/actions/filesaveas.png | Bin 0 -> 2346 bytes .../icons/nuvola/32x32/actions/kgpg_info.png | Bin 0 -> 1997 bytes share/keepass/{ => icons}/ok.png | Bin share/keepass/{ => icons}/search.png | Bin share/keepass/{ => icons}/settings.png | Bin src/PwManager.cpp | 29 +- src/forms/AboutDlg.ui | 159 ++++++ src/forms/ChangeKeyDlg.ui | 264 +++++++++ src/forms/DatabaseSettingsDlg.ui | 176 ++++++ src/forms/EditEntryDlg.ui | 521 ++++++++++++++++++ src/forms/EditGroupDlg.ui | 133 +++++ src/forms/LanguageDlg.ui | 172 ++++++ src/forms/MainWindow.ui | 347 ++++++++++++ src/forms/PasswordDlg.ui | 330 +++++++++++ src/forms/PasswordGenDlg.ui | 435 +++++++++++++++ src/forms/SearchDlg.ui | 268 +++++++++ src/forms/SettingsDlg.ui | 378 +++++++++++++ src/forms/SimplePasswordDlg.ui | 115 ++++ src/lib/EntryView.cpp | 125 +++++ src/lib/EntryView.h | 51 ++ src/lib/GroupView.cpp | 157 ++++++ src/lib/GroupView.h | 60 ++ src/main.h | 57 ++ src/src.pro | 8 +- 39 files changed, 3769 insertions(+), 16 deletions(-) delete mode 100755 share/keepass/book.png create mode 100644 share/keepass/i18n/russian.qm rename share/keepass/{ => icons}/clientic.png (100%) rename share/keepass/{ => icons}/i18n.png (100%) rename share/keepass/{ => icons}/key.png (100%) create mode 100644 share/keepass/icons/nuvola/32x32/actions/configure.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/edit.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/edit_add.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/editdelete.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/exit.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/fileclose.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/fileexport.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/filenew.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/fileopen.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/filesave.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/filesaveas.png create mode 100644 share/keepass/icons/nuvola/32x32/actions/kgpg_info.png rename share/keepass/{ => icons}/ok.png (100%) rename share/keepass/{ => icons}/search.png (100%) rename share/keepass/{ => icons}/settings.png (100%) create mode 100644 src/forms/AboutDlg.ui create mode 100644 src/forms/ChangeKeyDlg.ui create mode 100644 src/forms/DatabaseSettingsDlg.ui create mode 100644 src/forms/EditEntryDlg.ui create mode 100644 src/forms/EditGroupDlg.ui create mode 100644 src/forms/LanguageDlg.ui create mode 100644 src/forms/MainWindow.ui create mode 100644 src/forms/PasswordDlg.ui create mode 100644 src/forms/PasswordGenDlg.ui create mode 100644 src/forms/SearchDlg.ui create mode 100644 src/forms/SettingsDlg.ui create mode 100644 src/forms/SimplePasswordDlg.ui create mode 100644 src/lib/EntryView.cpp create mode 100644 src/lib/EntryView.h create mode 100644 src/lib/GroupView.cpp create mode 100644 src/lib/GroupView.h create mode 100644 src/main.h diff --git a/share/keepass/book.png b/share/keepass/book.png deleted file mode 100755 index 31f2bbb24d51a26fbc2b9744a022c27d0b9f2d37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1086 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 literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/edit.png b/share/keepass/icons/nuvola/32x32/actions/edit.png new file mode 100644 index 0000000000000000000000000000000000000000..f3ec32ed823f83494cba8314290b0205578184cb GIT binary patch literal 1395 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 literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/editdelete.png b/share/keepass/icons/nuvola/32x32/actions/editdelete.png new file mode 100644 index 0000000000000000000000000000000000000000..ab71fae93f7832c3c3009c0773635f05ddbb062e GIT binary patch literal 1805 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 literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/fileexport.png b/share/keepass/icons/nuvola/32x32/actions/fileexport.png new file mode 100644 index 0000000000000000000000000000000000000000..9e278996530c07ab249b315a5274d1a8d195ff57 GIT binary patch literal 1596 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 C7xKmc literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/filesave.png b/share/keepass/icons/nuvola/32x32/actions/filesave.png new file mode 100644 index 0000000000000000000000000000000000000000..ae13a151d5ad11239194edd1fd91199f8dd72f4e GIT binary patch literal 1741 zcmV;;1~U1HP)|f|?2FH71}*ARmH#2?}N;pMop}hB72t{zDuGi6Vp; z*sOoQ8Ke~T8Duq#8UFwMgOTL`0&qnJNdSN#2-Ga6|36rhED|7bcOl0=`Q_o}VI6Wd+pB9(8B07A<3e@GgD6;jMt%3Xi}!bpU$-~=T?Mn*J8FhW8CB>ESUY2b$ZgQf3(&}<4$ zsEpt!fTa-@EDit&AdED?0L=v~u)K!_fKoFo3o=0yBsdX5qXsPYAL2@o17HOtHsb&S z2qO)^asd-C!oGg_!SL(fFJSQf162$RpnBmytXKwSe300`e-I3k`wR3cSS={k1NqFr zqL`JHg#lD(#W#n3o}6;g1={6~ZsObx_Q;0g(xRsQ^E zX7~wAI7}?qLjWLvFdP61LQtGN`~=htOlhCL154E3h};3A|3cFWm=7%lL4^`1de~VJ zYW_j%4PH)22%`gl0K%FGK?No=Q0B$`-wfRE-ZRLE0v+)eQQ09^zlbWBfdLrW4EJ9! zF&w|j&cH9k%phsN$-oFqOMm|0PJ{pfgpmedK?-s`-*<+iXMo23f)+r~90996(E&gJv7qHLuutGY4CMU;`ux{F7KXPUe=__6 zN^r6=GjMRQVa*+^z@P(#o}eHD13w=VymEp?9k!wvAb^f;_k9AEaK9M7f5*h%zWoB{1U_CS25xR9c>4jCNU?#W^@rU8Z4=mvcDhGh_{J;=k=VoMh4NcI0 zp^23dixz+YV!;&!;2IAY1;2qI@bf3o$3G!e;O{>W{?DIGSRDXzARiAC11m5J{(WPF zG*qB1Dr_MD5J1@51OFhY1C(&S{rJW3<^wZ>x7jxaJ%vvUYLb5$-o9rB=XrGS8`xj~ zrvW}-9l#091>Zm=A|t$>z?KF80tnRsOpGj`77ftTz}7H?{_^<;!`pWZ4B83|3|^aL$)Sv_DA>hJ$QzZp2bKLZx6pmLv)U@r$4 z*bG1Zu`~SRkpLzaU=I2VZNjlKFh9Qj;^E~JkIVo6FWrf(2OxkL2fA+v5I_UoHv|Zv j0e1jE01dbU00ImEejxC)$7P#?00000NkvXXu0mjfTPNqK literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/filesaveas.png b/share/keepass/icons/nuvola/32x32/actions/filesaveas.png new file mode 100644 index 0000000000000000000000000000000000000000..55ca1ec25e656a0feddc1287427f2817a40b9a54 GIT binary patch literal 2346 zcmW-jX;>5Y7RF~XFbOb11cgMpp>FkrKL&;S+Ex+Di%~AiNOd$ zS=?A$68fN6>y@Brv05P{Dm!@VLW^Y;ECLc1B|?&E?1%sVea@Hn!}&euJtr?VX5$j; z71jU%EQyK?+iF(VkB@9_Q>eh>fLf5iYb1T&|O` zCBvt0*J=C7lwgKJJYRnMhx5ZzOClm*dAYC?1uTd*S0ajKrY&l)01;z8bb~=%wQun(*H2^&1&AG;9yfHjZU?}eQ3)2!T75=ZvP~f^8KY<#uvom$YX8EL zW?(?yrN@R7{`+&Oy4L*@>+4O=k<9zINH?{L7STHF-rwEsZer!NP_xNf$-1w<>}~n8 z&>A^~B#^cBCO~s6Z;;vT#;G>oe;uPdb;H<$7E8Q1z9B!(Fk?+j$T`qi^Yd#a$)aXE z&OJ6xhFb0HQ`xj_;d@rmF4=2PsbQ&RRw*IIbz zu6-~}-6uK;Si;RS4Y7zVj~W{dokiJA$MdF{kc|V{BQ_@X_;}^3ug!o^(f1If`BHhT z=y$1gABslWpei3sFz{-@?vAsoB-W*|v!g}R@~BbwZVjZdNF@o z`_Y2jI)XjkeHWDzx$@hax$GETfb3F2aQA^juzYH>#5x8VK9?_*E>biLUK3(rSLs@P zmo}|pgz}$7$bxtcDsvrkNg;P1peiSo1D4e^YUHQ^v*Y^r)OIU{V1+oP<1_e%q62yE zwTBhHgVnYZ$a-K$qD>%35JoCY9pEI#tuQYB|KOdq1qHb&wnSDm$qk5l%E31-m)bk~ z_LL{4B)>d3gQ6FDj}#B~=i9@jRj5)Ki1zt`S+&l|{&)zYL7M4LF%ngABT0Y7iQqfA zwim<1WERN+z!4sT?J6SRFDWOxSaQPA{K|85pHOXv};2+6~VRwqfS(galaOvs6)ZwPSm zg@fR*;muFINKp)*q34w`RHBWL%t-8({VXli+ph0Soiw(q7I}y!wT;I~lU&I8x(WA@ zNaK+68JKk!SmlviH~<7JK6zJ-yqM?H^;KRBk<}G5)8Mv7-FHhN&3HQNy`Q`n-$!?8 zaCyifmbEsv&L{?_C}q{LAPexRJOMy;-H8H$Rs^&!t+{kxxZ$qb3AOvyV(Dg5T3(>S;2 zg$6vpIe4$BN>L91=7#MD7;9D+DYDcLMYEF>IaBO55>)Rg;3s9=J7^`Vd9n?*`U?lk zON+>)w{r~iK0aWG#?VZqQ^=#MYK0l&0jCGY{r1QeFCG9L_8k3msnrE)dF|6A^Nbw3 z1d}R98XvxhM#QFCA0YpbT%r7tk%a&AX zj2ufZWRN!KP;_RDZV2={D;cjx!A75s@G{cE+$CaX%4db&paRp z^b^c*+;J){1aOt0A;2gQEC29e(k}Gwyb#_Tx?V13-IcAqL{Ba!`xs0M=LV}o5NN)r z25H#0SJ-nnMk4JMQ#G5I+vLO5s~BOoMLwvBo219zT>du@>uGpgLI82ORu^X#;Fe({ z{%i&d>Zz|M1!w8CqD2z~@7TQq9_^=*gR>TzRkKp6=H)mWF|cjODTW|YnaRZA2$BRu zM}dI2%;L@(N#0a{Lhj*#tBoJoaoIF0cI6y?1y1?sp*h_2@5X7GYiFxT-@61g>4p{= z@HX;N`FtuykNhs4q5o!d{sxS%pVJXEuYaMD`(B>na-R9|Rr9snf#r@oy>Zq(38r&d+;xgsC7&_$nG@jY`hr>2rA>#PGx(GZ7WFiHUJ+L3pgIpHpkc-GWd|Ens}q zJSkYLx2h`l>HS?SwX{`z(6(u`jW}cqW4isYTy?_4{Sx}P!hndl^_-mNHvJ7oZpLh3 ziF)@GLsrm?hj(2TBdL7{!6hcy9+HD+Yc_PtTeVVcRbbBvowKVOT6`?|3p6`8S{6hr zD{PZt^c_QDQ%Or`VBF7|FJ*^Ul(6GXekyf~RyW$QbHaN+CvVmmc(nq)b4B8&8()4^ zYCTO@WQvSUIejWBVvsodzJzp2+;;kdi05`hR>9R>w_tqS_WeCz;G;W1%1LO93% E0m~RHwEzGB literal 0 HcmV?d00001 diff --git a/share/keepass/icons/nuvola/32x32/actions/kgpg_info.png b/share/keepass/icons/nuvola/32x32/actions/kgpg_info.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9599228f104d165b75adef7b887ab745932060 GIT binary patch literal 1997 zcmXAqYgCfy7RO(B0a0E7vlKK1#f*xIOBYQY@P0W~WUi!|lZXL1r_##Pbm0Vu!%&vp zZ1Pwq$!_X6#*8)Dh005rJNpWeeO#K*GjO#pd;>46Ip`_89qXFQ)aU=T7d)J+uA1}z?o-4`!GV8Dy zh~Aqk5>t~8WJ$$o;;g;L54DOT0l+OYIW9W=*lW=|408=Uqyi{8|HMrSs1nn4yA=pGBm)64^+5AMg^5T^%%KyYFEVhk-YI)5B zRJWTu6v#c6_2<}|rt-^g0f|I{Nzf)P1ExXF1PiJ@-w*jI*VCc~di(PZ0 zt6l%pel4hWhM=mv8U-4*9>n|{WixesHn$;DkTM+9|EB3|Ap^71W5VvRjZxs)@oYAK z2u#IO6=wWwi(Yt}-lFf;BbLmz>UG&HT&!uT4thB=nr&*LtAaYFeL?VBq^e<DOdjBRtI8Tth8tDe$&F2? z+RWq{{Ly6~j-sk4rW;y%Z6qghwRF%doOL^^hN-g@QP2hmSzTQX6%-Ws7;l0^UY?t^ zj$>*yD$L@z{gpMUZNh0ufiT!B2oz6E>TIES81~gm0A0+{|sQ> zw-zz!RpadIeg8Teo%*8C^1qi&#LVE`XBG!j)l>=%#Pw{@g8Yf7k0h)gA`A`+mlX1f zpGHVW)0UTj=$c5VVo@ZNdm}2F=)G4o+tr17NDMHOc|uSG$K9XnFp02Hwg z!F96xWVXOkd=D-`GGG=K)(<Z{#yrog_Bslm=mXIp^eyyEM3fQVBcC=Xg7cwwD!dCjd5PbdsH?PY5At6^hey6u41g9_-VuWOj0U7P-=3%2ZQ}c z%5~m7SD~c^5N`Pq<_LH2x&HRzc5_B)r*-TlLE9&%W3C*9$)(Z5|8~YQX-E$5mfPGiVs<=nlthm$_^V}yLNy)<`$n@dKH|Pe9+b+I zmy*q|&RMv$Gr3tem1fSfI{Htbt1CJxOnb+AGEWDq>W9WCf``;8YavF5zFKwqD=!At!`%xJit!STI|hAe zWos|WV2aNsqCt-yZi3BkNl`ArYS4-PqL+9628}6~)zbZSk&50-Dwx^0&~7bq5K=4# z#q&W813P|+N&&%$Z}ww}JVAiIt)u4~fsxu)g=5TQQmZk1tj3+i)@XoO^F~_AQrf)} zm;s`4)96^{NRG>yx=lc-&+W&rh&e#$+@LL2{c_C7p0}XyDl_G*>d&X%lEOW$lWgH; z&;>0GudntOK2Luv@=?WBp~1B@9RzpdlizD4S2RSNN(<1K9;EM^xnSA>%}PuPXz~bF z00j}|sLE}~>2-YT@WUt2weru!nl#h~ZE5MvyDT=R!GY>1(DP>e9~TeabzR)<-oMm|usty$eAq<=@)3r^0zdBcl7npAhDXp##OeB+??@8HCho@Ctv zci7O8m=h0v^lMEL9@x=&Wb~@qt{(~o_3h{J(xq-x4HxC?jCqF;qKq{0vYUp<(d3jlAtAw_~JDRK(usdG@PeE Z06D4B)s1fe*!3R+$?;p_YGZ^2{|A>+Y)}9I literal 0 HcmV?d00001 diff --git a/share/keepass/ok.png b/share/keepass/icons/ok.png similarity index 100% rename from share/keepass/ok.png rename to share/keepass/icons/ok.png diff --git a/share/keepass/search.png b/share/keepass/icons/search.png similarity index 100% rename from share/keepass/search.png rename to share/keepass/icons/search.png diff --git a/share/keepass/settings.png b/share/keepass/icons/settings.png similarity index 100% rename from share/keepass/settings.png rename to share/keepass/icons/settings.png diff --git a/src/PwManager.cpp b/src/PwManager.cpp index 902ba9b..0bdba5d 100755 --- a/src/PwManager.cpp +++ b/src/PwManager.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include "crypto/sha256.h" #include "crypto/rijndael.h" #include "crypto/twoclass.h" @@ -946,25 +947,25 @@ for(int i=0; i<64; i+=2){ } void memcpyFromLEnd32(Q_UINT32* dst,char* src){ -#ifdef KEEPASS_LITTLE_ENDIAN + +if(QSysInfo::ByteOrder==QSysInfo::BigEndian){ + memcpy(((char*)dst)+3,src+0,1); + memcpy(((char*)dst)+2,src+1,1); + memcpy(((char*)dst)+1,src+2,1); + memcpy(((char*)dst)+0,src+3,1); +} +else memcpy(dst,src,4); -#endif -#ifdef KEEPASS_BIG_ENDIAN - memcpy(dst+3,src+0,1); - memcpy(dst+2,src+1,1); - memcpy(dst+1,src+2,1); - memcpy(dst+0,src+3,1); -#endif } void memcpyFromLEnd16(Q_UINT16* dst,char* src){ -#ifdef KEEPASS_LITTLE_ENDIAN + +if(QSysInfo::ByteOrder==QSysInfo::BigEndian){ + memcpy(((char*)dst)+1,src+0,1); + memcpy(((char*)dst)+0,src+1,1); +} +else memcpy(dst,src,2); -#endif -#ifdef KEEPASS_BIG_ENDIAN - memcpy(dst+1,src+0,1); - memcpy(dst+0,src+1,1); -#endif } const QDateTime Date_Never(QDate(2999,12,28),QTime(23,59,59)); diff --git a/src/forms/AboutDlg.ui b/src/forms/AboutDlg.ui new file mode 100644 index 0000000..3ba26a4 --- /dev/null +++ b/src/forms/AboutDlg.ui @@ -0,0 +1,159 @@ + + + + + AboutDlg + + + + 0 + 0 + 419 + 211 + + + + + 0 + 0 + 0 + 0 + + + + + 419 + 211 + + + + + 211 + 32767 + + + + Über... + + + + + 10 + 120 + 400 + 20 + + + + QFrame::HLine + + + QFrame::Sunken + + + + + + 10 + 140 + 60 + 20 + + + + Homepage: + + + + + + 0 + 0 + 420 + 50 + + + + image0 + + + true + + + + + + 10 + 160 + 54 + 20 + + + + EMail: + + + + + + 326 + 183 + 80 + 20 + + + + Schlie&ßen + + + Alt+ß + + + + + + 10 + 100 + 400 + 20 + + + + Keepass/L steht unter der General Public License. + + + + + + 10 + 80 + 240 + 20 + + + + Copyright (c) Tarek Saidi 2005 + + + + + + 10 + 60 + 220 + 20 + + + + Keepass/L Version %1 + + + + + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/ChangeKeyDlg.ui b/src/forms/ChangeKeyDlg.ui new file mode 100644 index 0000000..abe8f0c --- /dev/null +++ b/src/forms/ChangeKeyDlg.ui @@ -0,0 +1,264 @@ + + + + + ChangeKeyDialog + + + + 0 + 0 + 560 + 270 + + + + + 0 + 0 + 0 + 0 + + + + + 560 + 270 + + + + + 560 + 270 + + + + Hauptschlüssel ändern + + + + + 0 + 0 + 560 + 50 + + + + + 0 + 0 + 0 + 0 + + + + + + + true + + + + + + 10 + 80 + 540 + 150 + + + + Schlüssel + + + Qt::Vertical + + + + + 200 + 30 + 310 + 20 + + + + + + + 200 + 60 + 310 + 20 + + + + + + + 10 + 120 + 521 + 16 + + + + Passwort UND Schlüsseldatei verwenden + + + + + + 10 + 90 + 191 + 20 + + + + Schlüsseldatei oder Datenträger: + + + + + + 10 + 60 + 191 + 20 + + + + Passwortwiederholung: + + + + + + 10 + 30 + 191 + 20 + + + + Passwort: + + + + + + 510 + 30 + 20 + 20 + + + + ... + + + + + + 450 + 90 + 80 + 22 + + + + W&ählen... + + + Alt+Ä + + + + + + 201 + 90 + 240 + 21 + + + + + + + + 0 + 56 + 450 + 16 + + + + QFrame::NoFrame + + + QFrame::Plain + + + Geben Sie das Passwort ein und/oder wählen Sie eine Schlüsseldatei. + + + + + + 457 + 240 + 90 + 26 + + + + Abb&rechen + + + Alt+R + + + + + + 360 + 240 + 90 + 26 + + + + O&K + + + Alt+K + + + + + + + + Q3GroupBox + +
Qt3Support/Q3GroupBox
+ 1 + +
+
+ + Edit_Password + Edit_Password_2 + Combo_Dirs + Button_Browse + CheckBox_Both + ButtonOK + ButtonCancel + ButtonChangeEchoMode + + + +
diff --git a/src/forms/DatabaseSettingsDlg.ui b/src/forms/DatabaseSettingsDlg.ui new file mode 100644 index 0000000..9cc7ab5 --- /dev/null +++ b/src/forms/DatabaseSettingsDlg.ui @@ -0,0 +1,176 @@ + + + + + dbsettingdlg_base + + + + 0 + 0 + 440 + 213 + + + + + 0 + 0 + 0 + 0 + + + + + 440 + 213 + + + + + 440 + 213 + + + + Datenbankeinstellungen + + + + + 10 + 60 + 420 + 110 + + + + Verschlüsselung + + + + + 10 + 30 + 90 + 20 + + + + Algorithmus: + + + + + + 390 + 0 + 20 + 20 + + + + ? + + + + + + + + + 109 + 30 + 300 + 21 + + + + + + + 180 + 70 + 230 + 21 + + + + + + + 10 + 70 + 150 + 20 + + + + Verschlüsselungsrunden: + + + + + + + 0 + 0 + 440 + 51 + + + + image0 + + + true + + + + + + 210 + 180 + 102 + 23 + + + + O&K + + + Alt+K + + + + + + 320 + 180 + 102 + 23 + + + + Abbre&chen + + + Alt+C + + + + + + + ComboAlgo + EditRounds + ButtonOK + ButtonCancel + pushButton1 + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/EditEntryDlg.ui b/src/forms/EditEntryDlg.ui new file mode 100644 index 0000000..2572227 --- /dev/null +++ b/src/forms/EditEntryDlg.ui @@ -0,0 +1,521 @@ + + + + + EditEntryDialog + + + + 0 + 0 + 493 + 526 + + + + + 0 + 0 + 0 + 0 + + + + + 493 + 526 + + + + + 493 + 526 + + + + Eintrag bearbeiten + + + true + + + + + 111 + 90 + 370 + 21 + + + + + + + 111 + 200 + 330 + 21 + + + + + + + 111 + 120 + 370 + 21 + + + + + + + 111 + 180 + 330 + 21 + + + + + + + 110 + 60 + 220 + 21 + + + + + + + 431 + 60 + 50 + 21 + + + + + + + 10 + 120 + 90 + 21 + + + + Benutzername: + + + + + + 10 + 200 + 97 + 21 + + + + Passwort Wdhlg.: + + + + + + 10 + 90 + 90 + 20 + + + + Titel: + + + + + + 10 + 150 + 90 + 21 + + + + URL: + + + + + + 10 + 180 + 100 + 21 + + + + Passwort: + + + + + + 10 + 225 + 90 + 16 + + + + Qualität: + + + + + + 10 + 250 + 100 + 21 + + + + Kommentar: + + + + + + 10 + 410 + 100 + 21 + + + + gültig bis: + + + + + + 111 + 150 + 370 + 21 + + + + + + + 10 + 60 + 90 + 21 + + + + Gruppe: + + + + + + 380 + 497 + 104 + 23 + + + + Abbre&chen + + + Alt+C + + + + + + 110 + 461 + 120 + 16 + + + + 5,30 MB + + + + + + 0 + 0 + 493 + 50 + + + + + 7 + 5 + 0 + 0 + + + + true + + + + + + 400 + 60 + 27 + 21 + + + + Icon: + + + + + + 400 + 228 + 44 + 14 + + + + 120 Bits + + + + + + 450 + 200 + 31 + 21 + + + + Ge&n. + + + + + + 450 + 180 + 31 + 21 + + + + ... + + + + + + 270 + 497 + 103 + 23 + + + + O&K + + + Alt+K + + + + + + 111 + 250 + 370 + 151 + + + + + + + 110 + 410 + 194 + 22 + + + + + + + 320 + 410 + 161 + 21 + + + + läuft nicht ab + + + + + + 110 + 227 + 281 + 15 + + + + 24 + + + false + + + Qt::Horizontal + + + + + + 10 + 440 + 90 + 21 + + + + Anhang: + + + + + false + + + + 110 + 440 + 280 + 21 + + + + + + + 390 + 440 + 30 + 21 + + + + + + + + + + + + + 420 + 440 + 31 + 21 + + + + + + + + + + + + + 450 + 440 + 31 + 21 + + + + + + + + + + + + + 0 + 476 + 490 + 16 + + + + QFrame::HLine + + + QFrame::Sunken + + + Qt::Horizontal + + + + + + + + Q3TextEdit + +
q3textedit.h
+ 0 + +
+
+ + Combo_Group + Combo_IconPicker + Edit_Title + Edit_UserName + Edit_URL + Edit_Password + Edit_Password_w + Edit_Comment + Edit_Attachment + ButtonOpenAttachment + ButtonSaveAttachment + ButtonDeleteAttachment + ButtonEchoMode + ButtonGenPw + + + +
diff --git a/src/forms/EditGroupDlg.ui b/src/forms/EditGroupDlg.ui new file mode 100644 index 0000000..72f21b8 --- /dev/null +++ b/src/forms/EditGroupDlg.ui @@ -0,0 +1,133 @@ + + + + + EditGroupDialog + + + + 0 + 0 + 302 + 105 + + + + + 200 + 105 + + + + + 302 + 100 + + + + Gruppeneigenschaften + + + + + 10 + 62 + 290 + 16 + + + + QFrame::HLine + + + QFrame::Sunken + + + + + + 70 + 10 + 230 + 21 + + + + + + + 10 + 10 + 27 + 20 + + + + Titel: + + + + + + 10 + 40 + 43 + 20 + + + + Symbol: + + + + + + 70 + 40 + 50 + 21 + + + + + + + 226 + 80 + 70 + 20 + + + + Abbre&chen + + + Alt+C + + + + + + 147 + 80 + 70 + 20 + + + + O&K + + + Alt+K + + + + + qPixmapFromMimeSource + + EditTitle + ComboIconPicker + ButtonOK + ButtonCancel + + diff --git a/src/forms/LanguageDlg.ui b/src/forms/LanguageDlg.ui new file mode 100644 index 0000000..5bd0744 --- /dev/null +++ b/src/forms/LanguageDlg.ui @@ -0,0 +1,172 @@ + + + + + LanguageDlg + + + + 0 + 0 + 500 + 252 + + + + + 0 + 0 + 0 + 0 + + + + + 500 + 252 + + + + + 500 + 252 + + + + Keepass + + + false + + + + + 0 + 0 + 500 + 50 + + + + image0 + + + true + + + + + + 407 + 220 + 80 + 23 + + + + Schlie&ßen + + + Alt+ß + + + + + + 10 + 60 + 480 + 150 + + + + true + + + true + + + Q3ListView::NoColumn + + + + * + + + true + + + true + + + + + Sprache + + + true + + + true + + + + + Version + + + true + + + true + + + + + Autor + + + true + + + true + + + + + + + 20 + 220 + 80 + 23 + + + + Fes&tlegen + + + Alt+T + + + + + + Legt die aktuell markierte Sprache +als Übersetzung für Keepass fest. + + + + + + + List + ButtonApply + ButtonClose + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/MainWindow.ui b/src/forms/MainWindow.ui new file mode 100644 index 0000000..92d4a1b --- /dev/null +++ b/src/forms/MainWindow.ui @@ -0,0 +1,347 @@ + + + + + MainWindow + + + + 0 + 0 + 724 + 468 + + + + true + + + Keepass Passwort-Manager + + + + + 9 + + + 6 + + + + + + 7 + 7 + 0 + 60 + + + + Qt::Horizontal + + + + false + + + + 7 + 7 + 30 + 0 + + + + true + + + true + + + false + + + + + false + + + + 7 + 7 + 70 + 0 + + + + QAbstractItemView::ExtendedSelection + + + false + + + + + + + + false + + + + 7 + 7 + 0 + 10 + + + + + + + + + + 0 + 0 + 724 + 29 + + + + + Hilfe + + + + + Datei + + + + Importieren aus + + + + + + + + + + + + + + + + + + + + + Extras + + + + + Ansicht + + + + + Bearbeiten + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + 7 + 0 + 0 + + + + + 51 + 31 + + + + + 16777215 + 22 + + + + Qt::Horizontal + + + + 16 + 16 + + + + 4 + + + + + Neue Datenbank... + + + + + Datenbank öffnen... + + + + + Datenbank schließen + + + + + Datenbank speichern + + + + + Datenbank speichern unter... + + + + + Datenbank-Einstellungen... + + + + + Hauptschlüssel ändern... + + + + + Beenden + + + + + PwManager-Datei (*.pwm) + + + + + KWallet XML-Datei (*.xml) + + + + + Neue Gruppe hinzufügen... + + + + + Gruppe bearbeiten... + + + + + Gruppe löschen + + + + + Passwort in Zwischenablage kopieren + + + + + Benutzername in Zwischenablage kopieren + + + + + URL öffnen + + + + + Anhang speichern unter... + + + + + Neuen Eintrag hinzufügen... + + + + + Eintrag anzeigen/bearbeiten... + + + + + Eintrag löschen + + + + + Eintrag duplizieren + + + + + In Datenbank suchen... + + + + + In dieser Gruppe suchen... + + + + + + + KeepassGroupView + QTreeWidget +
../../src/lib/GroupView.h
+ 0 + +
+ + KeepassEntryView + QTreeWidget +
../../src/lib/EntryView.h
+ 0 + +
+
+ + +
diff --git a/src/forms/PasswordDlg.ui b/src/forms/PasswordDlg.ui new file mode 100644 index 0000000..4d061df --- /dev/null +++ b/src/forms/PasswordDlg.ui @@ -0,0 +1,330 @@ + + + + + PasswordDlg + + + + 0 + 0 + 578 + 270 + + + + + 0 + 0 + 0 + 0 + + + + + 578 + 270 + + + + + 578 + 270 + + + + + + + false + + + true + + + + + 0 + 0 + 578 + 50 + + + + + 5 + 5 + 0 + 0 + + + + TextLabel + + + + + + 10 + 230 + 561 + 31 + + + + + 0 + + + 6 + + + + + Qt::Horizontal + + + + 351 + 20 + + + + + + + + OK + + + + + + + Abbrechen + + + + + + + + + 10 + 60 + 459 + 16 + + + + + 7 + 4 + 0 + 0 + + + + Geben Sie das Passwort ein oder wählen Sie eine Schlüsseldatei. + + + + + + 10 + 80 + 561 + 141 + + + + + 7 + 7 + 0 + 0 + + + + Schlüssel + + + Qt::Vertical + + + + + 10 + 30 + 531 + 30 + + + + + 0 + + + 6 + + + + + + 5 + 5 + 0 + 0 + + + + Passwort: + + + + + + + + + + ... + + + + + + + + + 10 + 60 + 531 + 30 + + + + + 0 + + + 6 + + + + + + 5 + 5 + 0 + 0 + + + + Schlüsseldatei oder Datenträger: + + + + + + + + 7 + 0 + 0 + 0 + + + + + + + + + 5 + 0 + 0 + 0 + + + + W&ählen... + + + Alt+Ä + + + + + + + + + 10 + 90 + 531 + 30 + + + + + 0 + + + 6 + + + + + + 0 + 0 + 0 + 0 + + + + Passwort UND Schlüsseldatei benutzen + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + Q3GroupBox + +
Qt3Support/Q3GroupBox
+ 1 + +
+
+ + Edit_Password + Combo_Dirs + ButtonBrowse + CheckBox_Both + ButtonOK + ButtonCancel + ButtonChangeEchoMode + + + +
diff --git a/src/forms/PasswordGenDlg.ui b/src/forms/PasswordGenDlg.ui new file mode 100644 index 0000000..ebc30f0 --- /dev/null +++ b/src/forms/PasswordGenDlg.ui @@ -0,0 +1,435 @@ + + + + + GenPwDlg + + + + 0 + 0 + 460 + 470 + + + + + 0 + 0 + 0 + 0 + + + + + 460 + 470 + + + + + 460 + 470 + + + + Passwort Generator + + + + + 130 + 400 + 180 + 15 + + + + + + + 130 + 370 + 250 + 21 + + + + + + + 320 + 399 + 60 + 16 + + + + + + + + + + 0 + 0 + 460 + 50 + + + + image0 + + + true + + + + + + 263 + 440 + 90 + 25 + + + + Akzep&tieren + + + + + + 360 + 440 + 90 + 25 + + + + Abbre&chen + + + + + + 381 + 370 + 70 + 21 + + + + Generieren + + + + + + 20 + 370 + 110 + 20 + + + + Neues Passwort: + + + + + + 20 + 400 + 110 + 20 + + + + Qualität: + + + + + + 0 + 420 + 460 + 20 + + + + QFrame::HLine + + + QFrame::Sunken + + + + + + 10 + 60 + 440 + 280 + + + + Optionen + + + + + 30 + 170 + 400 + 21 + + + + + + + 120 + 220 + 310 + 21 + + + + 1000 + + + 1 + + + 20 + + + + + + 120 + 40 + 131 + 20 + + + + Gro&ßbuchstaben + + + Alt+ß + + + true + + + + + + 120 + 60 + 140 + 20 + + + + &Kleinbuchstaben + + + Alt+K + + + true + + + + + + 120 + 80 + 140 + 20 + + + + &Zahlen + + + Alt+Z + + + true + + + + + + 120 + 100 + 140 + 20 + + + + S&onderzeichen + + + true + + + + + + 260 + 60 + 170 + 20 + + + + Bindestriche + + + + + + 260 + 80 + 170 + 20 + + + + &Unterstriche + + + Alt+U + + + + + + 260 + 100 + 170 + 20 + + + + h&öhere ANSI-Zeichen + + + Alt+ö + + + + + + 10 + 150 + 420 + 16 + + + + &nur folgende Zeichen benutzen: + + + Alt+N + + + + + + 10 + 220 + 110 + 21 + + + + Zeichenanzahl: + + + + + + 120 + 250 + 310 + 21 + + + + "/dev/rando&m" nutzen (empfohlen) + + + Alt+M + + + true + + + + + + 10 + 20 + 420 + 21 + + + + folgende Zeichengruppen &verwenden: + + + Alt+V + + + + + + 260 + 40 + 170 + 20 + + + + &Leerzeichen + + + Alt+L + + + + + + + + Radio_1 + checkBox1 + checkBox2 + checkBox3 + checkBox4 + checkBox5 + checkBox6 + checkBox7 + checkBox8 + Radio_2 + Edit_chars + Spin_Num + Check_strongrandom + Edit_dest + ButtonGenerate + ButtonOK + Button_Cancel + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/SearchDlg.ui b/src/forms/SearchDlg.ui new file mode 100644 index 0000000..e777faf --- /dev/null +++ b/src/forms/SearchDlg.ui @@ -0,0 +1,268 @@ + + + + + Search_Dlg + + + + 0 + 0 + 390 + 246 + + + + + 0 + 0 + 0 + 0 + + + + + 390 + 246 + + + + + 390 + 246 + + + + Suche... + + + + + 0 + 0 + 390 + 50 + + + + image0 + + + true + + + + + + 10 + 130 + 370 + 70 + + + + Suche nach + + + + + 20 + 20 + 110 + 20 + + + + &Titel + + + Alt+T + + + + + + 20 + 40 + 110 + 20 + + + + Benut&zername + + + Alt+Z + + + + + + 140 + 40 + 120 + 20 + + + + &Kommentar + + + Alt+K + + + + + + 260 + 20 + 100 + 20 + + + + &URL + + + Alt+U + + + + + + 260 + 40 + 100 + 20 + + + + A&nhang + + + Alt+N + + + + + + 140 + 20 + 110 + 20 + + + + Pass&wort + + + Alt+W + + + + + + + 280 + 210 + 97 + 23 + + + + S&chließen + + + Alt+C + + + + + + 10 + 60 + 90 + 20 + + + + Suchbegriff: + + + + + + 170 + 210 + 97 + 23 + + + + Suchen + + + + + + 110 + 60 + 270 + 21 + + + + + + + 110 + 110 + 170 + 20 + + + + regul&ärer Ausdruck + + + Alt+ä + + + + + + 110 + 90 + 250 + 20 + + + + Gro&ß- und Kleinschreibung beachten + + + Alt+ß + + + + + + + Edit_Search + checkBox_Cs + checkBox_regExp + checkBox_Title + checkBox_Username + checkBox_Password + checkBox_Comment + checkBox_URL + checkBox_Attachment + Button_Search + Button_Close + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/SettingsDlg.ui b/src/forms/SettingsDlg.ui new file mode 100644 index 0000000..01798c7 --- /dev/null +++ b/src/forms/SettingsDlg.ui @@ -0,0 +1,378 @@ + + + + + SettingsDialog + + + + 0 + 0 + 571 + 341 + + + + + 571 + 341 + + + + + 571 + 341 + + + + Einstellungen + + + + + 470 + 310 + 90 + 23 + + + + Abbre&chen + + + Alt+C + + + + + + 0 + 0 + 570 + 50 + + + + image0 + + + true + + + + + + 380 + 310 + 80 + 23 + + + + O&K + + + Alt+K + + + + + + 10 + 60 + 550 + 240 + + + + + Sicherhei&t + + + + + 10 + 20 + 180 + 20 + + + + Zwischenablage löschen nach: + + + + + + 280 + 20 + 100 + 20 + + + + Sekunden + + + + + + 190 + 20 + 80 + 20 + + + + + + + 10 + 50 + 420 + 20 + + + + Passw&örter standardmäßig in Klartext anzeigen + + + Alt+ö + + + + + + E&rscheinungsbild + + + + + 10 + 10 + 520 + 90 + + + + Bannerfarbverlauf + + + + + 10 + 20 + 53 + 20 + + + + Farbe 1 + + + + + + 70 + 20 + 22 + 22 + + + + image0 + + + true + + + + + + 100 + 20 + 60 + 23 + + + + &ändern... + + + Alt+ä + + + + + + 190 + 20 + 60 + 20 + + + + Farbe 2 + + + + + + 70 + 50 + 22 + 22 + + + + image0 + + + true + + + + + + 100 + 50 + 60 + 23 + + + + ändern... + + + + + + + + + 10 + 50 + 54 + 20 + + + + Textfarbe + + + + + + 250 + 20 + 22 + 22 + + + + image0 + + + true + + + + + + 280 + 20 + 60 + 23 + + + + ändern... + + + + + + + + + + 10 + 110 + 380 + 20 + + + + Gruppenbaum beim &Öffnen aufklappen + + + Alt+ö + + + + + + S&onstiges + + + + + 10 + 20 + 380 + 20 + + + + zuletzt geöffnete Datei bei Programmstart &öffnen + + + Alt+ö + + + + + + 10 + 50 + 110 + 20 + + + + Browseraufruf: + + + + + + 120 + 50 + 190 + 21 + + + + + + + + + + tabWidget4 + SpinBox_ClipboardTime + CheckBox_ShowPasswords + ButtonColor1 + ButtonTextColor + ButtonColor2 + CheckBox_OpenLast + Edit_BrowserCmd + ButtonOK + ButtonCancel + + + + 789c8597596f23470e80dfe75718c3b7c182e9eabb11ec834fc9873cbeaf601fc86ec9966df994cfc5fef794483633934d10c836fcb9582cde55fee5dbd2d9de68e9db2f5f9ee7349fb64bed153d2d7deb5e66b38fdffef3efff7ef99aa64b8baf2c5b4abffeebcb57dc5c6a9720499290640b8613e110ff22eb941b07657e7256f90be742e4a7c6a9ed076791c7a1732efbd784d3f817615a71167db0e55c0a17ce95c88f8ced3c7e74d6f306cea29fd159f583b3e8a75367d18f5bce8df0b63389be67e3ccfcd97716fd78e22cfaf1d459edefedcbedbc63e75af4cf85b33edeb8616cfef1b5b39eb7e72cf6c28b7166fb53678df7b5b3fadf388b3d503a8b3d40c6b9eaa35767d9cf37c6a5e53f73d6f3769d55bedf5f2789ac6bfcf2de1fda33ce4cdfbb716eeb6fce1acf1de3c2f2bbe7acf573605cdafe2b67f5efd359f20bb97165febe38b3c453fd2bfa7cd0a67165fea97c9db416ff1de3b1e9d77a6d12567bf8c159ed9d1ab7969fc2b8d378e2ba304579c93769bd719457fd524f2184cae221f51bd250a8fd3c35ae4cfec1b8b6fa06e3c6eaffc859d651f215b2d0c7efdab8327b969d459e9e8d7bfd57c68df587c43be4c1e20b685c1b9f0b17c1e283cfce927f96f911ca40d63fcbce7afebd31eb3a91b3fa37376ead9e64dea5759606a94f546eb23499883d9bc69932bef4acf22cf594725c1f8bfca9b3c8d3aa711e82c82bb73de3817111a4fe2171d67e1a1b97ba8e87ce5a8f12bfb48b2cfae8ceb85206894f9666135bff2e5c45d6fae894a3393a3f5be13aaeb7729eca4ff2d6ce3f5b701ef2b1c95f0aa7715dfb4de657519675d0fc8d8c9ba0f527f12faab234fd8fc695f1ab716dfa3f84ebb2089dec5f779678d381711d74beae398b7f540b3751bfd6e39ab1c9033b6bbd07e326687dcb3c2da8ecf47cfa301e9bbe37e389c94b3c0a2edba0f5f361dc194b3c8b36eed77acf9c453fab7f6d95587e6e8d83c957c25dc9668fdc5fc538b2c6e3a6e754e7adcc836252b6a9d69bccffb2ad535d67e98fb2ab538befaab3e8439947e5b84e82f6ffa17165f1bd7096fcc1ccb8b67a981b375a0f20f92d2775b078493dd54c75aaef0de9dfba75167fea2eb2f683dc5771388d753fbe396b7fca7c6b52ea2c5e57ce621fcbfdd26464f1812767ed8f63e3ced665de34c464fe9e1bb3d5b3f45bc3dca67a7fc9fba7697b46a9bf66cc13cb8fcc8b66c2960f3832b6f3988dad1e2828b799c53371d6f9766b9c5b7f4afe286983f5c3aeb3be177ace6c1ecc9cb51f6a678def8a7169f351fca710f5a93d9db3d64febacf9981aa76a2f5e3b6b7d5d1af7f6df3aebfb67e4acf93f72d6f972675cd83c7d77d67cac3bebfdfce9acf7eb87b3c66b665cdabc5feed9f44bfd51caade59395dbc4fc3f33cecc9f9b9e35bf786fdccfffc459e7ffc059eb7fe2acefcfd459df13dbceda5f4367bddffed8affdf0665c243a6f769c351f6367f51f7ad6fcefcf9dd57e72567fd959e3dd3a6bbc3b677daf34ce6affadb3dadbdb57263a5f46ce7adf8e9dd5dededfbe5e2f9cb5de5b678df7bb71a5fa59f767dccf77cd57d6f7136c185b7e79d359f3159cf53df7e8acf19e19f7f57ee5acef9b0d67f5b733b6fa844b63f38f07ceea9fcc3fca5b9bef58199b3dbce5acefa53567bd6fee8c73d54f95b3fa3b34b6fcc3b3b3f6dba1b3f6afe6a788fb6bad9f1f3f08f19b90b18ddff0f3dafefc2fe4bb284948f1b7f1e2e73fca4ff012af708ad77883b77f2f8f33bc8b9aeff1011ff1099f718e2ff88a6ff88e1ff8196da33fc92fe30aaee21aaee3060e70889bb885dbb88323dc8d7a407df941be8dd2dfa3ec5e94dac7033cc4233cc6133cc5333cc78bffb327c18029669863812556d1ef1a9ba8168080a1850ec608daaf30814bb882296ec035dc486426700b33b8837b78c0213cc2133ce367af3f7a93c01c5e700b5ee10d6fe11d093ee01396610556f104d6601d36a2d77abf0da2f41036610bb6b1841d18c12e7c873dd887033884233886133885b318297d3fc558e114cee1021208d1e01432c8a180122aa8e3c5190f2322c63bb507995aea62bc37698c9f34a14bba822d9ad235ddd02dcde80e87744f0f7fc823d1233de1363d634d737aa1577aa3ebf8047ba70ffaa4655aa1555aa375b37f0c298e6923ca0fb0a1212cd3266dd136edd08876e93bedd13e1dd0211d997e88f6031dd3099d624e67744e17f15f8b40296594cb273ef61632aa5ff34515d5d43032707c19449fd6e993db283b8217ee62fc0630fa31bf1cdf037c493bb1724ef98a162d30e56bcae185467cc3b731dfa0f935f919dff13daef1033ff2133fc77d039e73d41da55ff90d268b8afba17ea27d30a18edff9833f7999577895d7a88421aff31b6fc0e04ff5c6314acc031ef2266cc4c7ce036ff12ca66a10ff75d95eacfd2ccf3b0bfd38e651ac93f7d83b77f84e47d1e6f1222e0bf9c5ef3ff7a3f690766f4ffd0490aa85affffbf5cbef985d44a8 + + + diff --git a/src/forms/SimplePasswordDlg.ui b/src/forms/SimplePasswordDlg.ui new file mode 100644 index 0000000..061a604 --- /dev/null +++ b/src/forms/SimplePasswordDlg.ui @@ -0,0 +1,115 @@ + + + + + SimplePasswordDialog + + + + 2 + 3 + 345 + 90 + + + + + 0 + 0 + 0 + 0 + + + + + 345 + 90 + + + + + 345 + 90 + + + + Passworteingabe + + + + + 10 + 20 + 60 + 20 + + + + Passwort: + + + + + + 80 + 20 + 240 + 21 + + + + + + + 170 + 60 + 80 + 23 + + + + O&K + + + Alt+K + + + + + + 257 + 60 + 80 + 23 + + + + Abbre&chen + + + Alt+C + + + + + + 320 + 20 + 20 + 20 + + + + ... + + + + + + true + + + + + qPixmapFromMimeSource + diff --git a/src/lib/EntryView.cpp b/src/lib/EntryView.cpp new file mode 100644 index 0000000..fab94a9 --- /dev/null +++ b/src/lib/EntryView.cpp @@ -0,0 +1,125 @@ +/*************************************************************************** + * Copyright (C) 2005 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; 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 +#include +#include +#include +#include +#include +#include "main.h" +#include "EntryView.h" + +KeepassEntryView::KeepassEntryView(QWidget* parent):QTreeWidget(parent){ +CurrentGroup=0; +updateColumns(); +header()->setResizeMode(QHeaderView::Stretch); +} + +void KeepassEntryView::updateItems(){ +clear(); +if(!db)return; +EntryViewItem *tmp=NULL; +for(int i=0;iEntries.size();i++){ + CEntry* entry=&db->Entries[i]; + Items.push_back(tmp=new EntryViewItem(this)); + Items.back()->pEntry=entry; + int j=0; + if(config.Columns[0]){ + tmp->setText(j++,entry->Title);} + if(config.Columns[1]){ + if(config.ListView_HideUsernames) + tmp->setText(j++,"******"); + else + tmp->setText(j++,entry->UserName);} + if(config.Columns[2]){ + tmp->setText(j++,entry->URL);} + if(config.Columns[3]){ + if(config.ListView_HidePasswords) + tmp->setText(j++,"******"); + else{ + tmp->setText(j++,entry->Password.getString()); + entry->Password.delRef();}} + if(config.Columns[4]){ + tmp->setText(j++,entry->Additional.section('\n',0,0));} + if(config.Columns[5]){ + tmp->setText(j++,entry->Expire.toString(DateTimeFormat));} + if(config.Columns[6]){ + tmp->setText(j++,entry->Creation.toString(DateTimeFormat));} + if(config.Columns[7]){ + tmp->setText(j++,entry->LastMod.toString(DateTimeFormat));} + if(config.Columns[8]){ + tmp->setText(j++,entry->LastAccess.toString(DateTimeFormat));} + if(config.Columns[9]){ + tmp->setText(j++,entry->BinaryDesc);} + Items.back()->setIcon(0,EntryIcons[entry->ImageID]); +} +} + +void KeepassEntryView::setCurrentGroup(uint id){ +for(int i=0; ipEntry->GroupID != id)); + +} +} + +void KeepassEntryView::updateColumns(){ +QStringList cols; +if(config.Columns[0]){ + cols << trUtf8("Titel");} +if(config.Columns[1]){ + cols << trUtf8("Benutzername");} +if(config.Columns[2]){ + cols << trUtf8("URL");} +if(config.Columns[3]){ + cols << trUtf8("Passwort");} +if(config.Columns[4]){ + cols << trUtf8("Kommentare");} +if(config.Columns[5]){ + cols << trUtf8("Gültig bis");} +if(config.Columns[6]){ + cols << trUtf8("Erstellung");} +if(config.Columns[7]){ + cols << trUtf8("letzte Änderung");} +if(config.Columns[8]){ + cols << trUtf8("letzter Zugriff");} +if(config.Columns[9]){ + cols << trUtf8("Anhang");} +setHeaderLabels(cols); +} + + + +EntryViewItem::EntryViewItem(QTreeWidget *parent):QTreeWidgetItem(parent){ + +} + +EntryViewItem::EntryViewItem(QTreeWidget *parent, QTreeWidgetItem *preceding):QTreeWidgetItem(parent,preceding){ + +} + +EntryViewItem::EntryViewItem(QTreeWidgetItem *parent):QTreeWidgetItem(parent){ + +} + +EntryViewItem::EntryViewItem(QTreeWidgetItem *parent, QTreeWidgetItem *preceding):QTreeWidgetItem(parent,preceding){ + +} diff --git a/src/lib/EntryView.h b/src/lib/EntryView.h new file mode 100644 index 0000000..86ae349 --- /dev/null +++ b/src/lib/EntryView.h @@ -0,0 +1,51 @@ +/*************************************************************************** + * Copyright (C) 2005 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; 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 _ENTRY_VIEW_H_ +#define _ENTRY_VIEW_H_ + +#include +#include "../PwManager.h" + +class EntryViewItem; + +class KeepassEntryView:public QTreeWidget{ +public: + KeepassEntryView(QWidget* parent=0); + void updateItems(); + void setCurrentGroup(uint GroupID); + void updateColumns(); + PwDatabase* db; + vectorItems; +private: + int CurrentGroup; +}; + + +class EntryViewItem:public QTreeWidgetItem{ +public: +EntryViewItem(QTreeWidget *parent); +EntryViewItem(QTreeWidget *parent, QTreeWidgetItem * preceding); +EntryViewItem(QTreeWidgetItem *parent); +EntryViewItem(QTreeWidgetItem *parent, QTreeWidgetItem * preceding); +CEntry* pEntry; +}; + + +#endif \ No newline at end of file diff --git a/src/lib/GroupView.cpp b/src/lib/GroupView.cpp new file mode 100644 index 0000000..4de0753 --- /dev/null +++ b/src/lib/GroupView.cpp @@ -0,0 +1,157 @@ +/*************************************************************************** + * Copyright (C) 2005 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; 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 +#include +#include +#include +#include +#include +#include +#include "main.h" +#include "GroupView.h" + +KeepassGroupView::KeepassGroupView(QWidget* parent):QTreeWidget(parent){ +LastHoverItem=NULL; +setHeaderLabels(QStringList()<mimeData()->hasFormat("keepass/group") || + event->mimeData()->hasFormat("keepass/entry")){ +event->accept(); +} +} + +void KeepassGroupView:: dragMoveEvent ( QDragMoveEvent * event ){ +GroupViewItem* item=(GroupViewItem*)itemAt(event->pos()); +if(LastHoverItem){ + QFont f=LastHoverItem->font(0); + f.setBold(false); + LastHoverItem->setFont(0,f); +} +if(item){ + QFont f=item->font(0); + f.setBold(true); + item->setFont(0,f); + LastHoverItem=item;} +else{ + LastHoverItem=NULL;} + + +} + +void KeepassGroupView:: dragLeaveEvent ( QDragLeaveEvent * event ){ +if(LastHoverItem){ + QFont f=LastHoverItem->font(0); + f.setBold(false); + LastHoverItem->setFont(0,f); +} +} + + +void KeepassGroupView::dropEvent( QDropEvent * event ){ +if(LastHoverItem){ + QFont f=LastHoverItem->font(0); + f.setBold(false); + LastHoverItem->setFont(0,f); +} + +} + + +void KeepassGroupView::mousePressEvent(QMouseEvent *event){ +//save event position - maybe this is the start of a drag +if (event->button() == Qt::LeftButton) + DragStartPos = event->pos(); +//call base function +QTreeWidget::mousePressEvent(event); +} + +void KeepassGroupView::mouseMoveEvent(QMouseEvent *event){ + if (!(event->buttons() & Qt::LeftButton)) + return; + if ((event->pos() - DragStartPos).manhattanLength() < QApplication::startDragDistance()) + return; + + GroupViewItem* item=(GroupViewItem*)itemAt(DragStartPos); + if(!item)return; + QDrag *drag = new QDrag(this); + QMimeData *mimeData = new QMimeData; + mimeData->setData("keepass/group",QByteArray((char*)&(item->pGroup),sizeof(void*))); + drag->setMimeData(mimeData); + drag->setPixmap(item->icon(0).pixmap()); + drag->start(); + + +} + +void KeepassGroupView::updateItems(){ +for(GroupItr i=db->Groups.begin();i!=db->Groups.end();i++){ +if((*i).Level==0){ + if(Items.size()) Items.push_back(new GroupViewItem(this,getLastSameLevelItem(0))); + else Items.push_back(new GroupViewItem(this)); + Items.back()->setText(0,(*i).Name); + Items.back()->pGroup=&(*i); +} + else{ + if((*i).Level>(*(i-1)).Level){ + Items.push_back(new GroupViewItem(Items.back(),getLastSameLevelItem((*i).Level))); + Items.back()->setText(0,(*i).Name); + Items.back()->pGroup=&(*i); + } + if((*i).Level<=(*(i-1)).Level){ + GroupItemItr j; + for(j=Items.end()-1;j!=Items.begin();j--){ + if((*j)->pGroup->Level<(*i).Level)break;} + Items.push_back(new GroupViewItem((*j),getLastSameLevelItem((*i).Level))); + Items.back()->setText(0,(*i).Name); + Items.back()->pGroup=&(*i); + } + } +Items.back()->setIcon(0,EntryIcons[(*i).ImageID]); +} + +for(int i=0;ipGroup->UI_ItemIsExpanded); +}} + +GroupViewItem* KeepassGroupView::getLastSameLevelItem(int level){ +for(int i=Items.size()-1;i>=0;i--){ + if(Items[i]->pGroup->Level==level){ +return Items[i];} +} +return Items.back(); + +} + + + +GroupViewItem::GroupViewItem(QTreeWidget *parent):QTreeWidgetItem(parent){ +} + +GroupViewItem::GroupViewItem(QTreeWidget *parent, QTreeWidgetItem *preceding):QTreeWidgetItem(parent,preceding){ +} + +GroupViewItem::GroupViewItem(QTreeWidgetItem *parent):QTreeWidgetItem(parent){ +} + +GroupViewItem::GroupViewItem(QTreeWidgetItem *parent, QTreeWidgetItem *preceding):QTreeWidgetItem(parent,preceding){ +} diff --git a/src/lib/GroupView.h b/src/lib/GroupView.h new file mode 100644 index 0000000..fa6e989 --- /dev/null +++ b/src/lib/GroupView.h @@ -0,0 +1,60 @@ +/*************************************************************************** + * Copyright (C) 2005 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; 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 _GROUP_VIEW_H_ +#define _GROUP_VIEW_H_ + +#include +#include "../PwManager.h" + +class GroupViewItem; +typedef vector::iterator GroupItemItr; + +class KeepassGroupView:public QTreeWidget{ +public: + KeepassGroupView(QWidget* parent=0); + void updateItems(); + PwDatabase *db; + vectorItems; +protected: + virtual void dragEnterEvent ( QDragEnterEvent * event ); + virtual void dragMoveEvent ( QDragMoveEvent * event ); + virtual void dragLeaveEvent ( QDragLeaveEvent * event ); + virtual void dropEvent ( QDropEvent * event ); + virtual void mousePressEvent(QMouseEvent *event); + virtual void mouseMoveEvent(QMouseEvent *event); + +private: + QPoint DragStartPos; + GroupViewItem* LastHoverItem; + GroupViewItem* getLastSameLevelItem(int level); +}; + + +class GroupViewItem:public QTreeWidgetItem{ +public: +GroupViewItem(QTreeWidget *parent); +GroupViewItem(QTreeWidget *parent, QTreeWidgetItem * preceding); +GroupViewItem(QTreeWidgetItem *parent); +GroupViewItem(QTreeWidgetItem *parent, QTreeWidgetItem * preceding); +CGroup* pGroup; +}; + + +#endif \ No newline at end of file diff --git a/src/main.h b/src/main.h new file mode 100644 index 0000000..da51362 --- /dev/null +++ b/src/main.h @@ -0,0 +1,57 @@ +/*************************************************************************** + * Copyright (C) 2005 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; 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 _MAIN_H_ +#define _MAIN_H_ + +#include +#include +#include +#include +#include +#include "PwmConfig.h" + +#define KEEPASS_VERSION "0.2.0" +#define NUM_CLIENT_ICONS 52 + +void createBanner(QLabel *Banner,QPixmap* symbol,QString text); +void createBanner(QLabel *Banner,QPixmap* symbol,QString text,QColor color1,QColor color2,QColor textcolor); +void openBrowser(QString url); +void showErrMsg(const QString& msg,QWidget* parent=NULL); + +extern CConfig config; +extern QString AppDir; +extern QPixmap *EntryIcons; +extern QPixmap *Icon_Key32x32; +extern QPixmap *Icon_Settings32x32; +extern QPixmap *Icon_Search32x32; +extern QPixmap *Icon_I18n32x32; +extern QPixmap *Icon_Ok16x16; +extern QIcon *Icon_FileNew; +extern QIcon *Icon_FileOpen; +extern QIcon *Icon_FileClose; +extern QIcon *Icon_FileSave; +extern QIcon *Icon_FileSaveAs; +extern QIcon *Icon_Exit; +extern QIcon *Icon_File_Export; +extern QIcon *Icon_EditDelete; +extern QString DateTimeFormat; + + +#endif \ No newline at end of file diff --git a/src/src.pro b/src/src.pro index 8ef1d83..4544244 100755 --- a/src/src.pro +++ b/src/src.pro @@ -5,9 +5,13 @@ INSTALLS += Share \ target -target.path = /usr/local/bin Share.files += ../share/keepass/* -Share.path = /usr/local/share/keepass +unix{ Share.path = /usr/local/share/keepass + target.path = /usr/local/bin +} +macx{ Share.path = /Applications/keepass.app/Contents + target.path = /Applications +} FORMS += forms/EditGroupDlg.ui \ forms/SearchDlg.ui \ forms/AboutDlg.ui \