[Winpt-commits] r144 - in trunk: Po Src
scm-commit at wald.intevation.org
scm-commit at wald.intevation.org
Thu Jan 12 17:28:08 CET 2006
Author: twoaday
Date: 2006-01-12 17:28:06 +0100 (Thu, 12 Jan 2006)
New Revision: 144
Modified:
trunk/Po/ChangeLog
trunk/Po/de.po
trunk/Src/ChangeLog
trunk/Src/WinPT-en.rc
trunk/Src/resource.h
trunk/Src/wptGPGMEData.cpp
trunk/Src/wptImagelist.cpp
trunk/Src/wptKeyManagerDlg.cpp
trunk/Src/wptKeyserver.cpp
trunk/Src/wptKeyserverDlg.cpp
trunk/Src/wptListView.cpp
trunk/Src/wptPreferencesDlg.cpp
Log:
2006-01-12 Timo Schulz <ts at g10code.com>
* wptListView.cpp (listview_set_image_list): Make icons
always transparent.
* wptImageList.cpp (imagelist_load): New icons.
* wptGPGMEData.cpp (gpg_data_putc): New.
* wptKeyManagerDlg.cpp (load_toolbar): Include new icons.
(keymanager_dlg_proc): Add tooltips.
* wptKeyserverDlg.cpp (keyserver_list_build): Use icons.
* wptKeyserver.cpp (URL_encode): New.
(URL_must_encode): New.
(kserver_search_init): Properly encode pattern.
(parse_iso_date): New.
(keyserver_search): Be more strict to prevent buffer overflows.
2006-01-11 Timo Schulz <ts at g10code.com>
* wptKeyManagerDlg.cpp (load_toolbar): 2 new icons.
(keymanager_dlg_proc): Adjust tooltips.
(update_ui_items): Handle new icons.
* wptImageList.cpp (imagelist_load): New icons.
Modified: trunk/Po/ChangeLog
===================================================================
--- trunk/Po/ChangeLog 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Po/ChangeLog 2006-01-12 16:28:06 UTC (rev 144)
@@ -1,3 +1,7 @@
+2006-01-12 Timo Schulz <ts at g10code.com>
+
+ * de.po: Updated.
+
2006-01-11 Timo Schulz <ts at g10code.com>
* de.po: Updated.
Modified: trunk/Po/de.po
===================================================================
--- trunk/Po/de.po 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Po/de.po 2006-01-12 16:28:06 UTC (rev 144)
@@ -14,7 +14,7 @@
msgstr ""
"Project-Id-Version: WinPT 0.11.4\n"
"Report-Msgid-Bugs-To: winpt at freakmail.de\n"
-"POT-Creation-Date: 2006-01-11 13:52+0100\n"
+"POT-Creation-Date: 2006-01-12 14:46+0100\n"
"PO-Revision-Date: 2005-12-28 16:10+0100\n"
"Last-Translator: Timo Schulz <ts at g10code.de>\n"
"Language-Team: DE <twoaday at freakmail.de>\n"
@@ -53,12 +53,12 @@
"Sorry, Sie benötigen eine neuere GPG-Version.\n"
"Aktuelle GPG-Version %d.%d.%d benötigte benoetigte GPG version "
-#: Src/WinPT.cpp:247 Src/wptKeyManagerDlg.cpp:955 Src/wptKeyserverDlg.cpp:56
+#: Src/WinPT.cpp:247 Src/wptKeyManagerDlg.cpp:961 Src/wptKeyserverDlg.cpp:56
#: Src/wptKeyserverDlg.cpp:186 Src/wptKeyserverDlg.cpp:194
#: Src/wptKeyserverDlg.cpp:210 Src/wptKeyserverDlg.cpp:357
-#: Src/wptKeyserverDlg.cpp:362 Src/wptKeyserverDlg.cpp:492
-#: Src/wptKeyserverDlg.cpp:499 Src/wptKeyserverDlg.cpp:505
-#: Src/wptKeyserverDlg.cpp:521 Src/wptKeyserverDlg.cpp:534
+#: Src/wptKeyserverDlg.cpp:362 Src/wptKeyserverDlg.cpp:495
+#: Src/wptKeyserverDlg.cpp:502 Src/wptKeyserverDlg.cpp:508
+#: Src/wptKeyserverDlg.cpp:524 Src/wptKeyserverDlg.cpp:537
#: Src/wptKeyserverSearchDlg.cpp:127
msgid "Keyserver"
msgstr "Schlüsselserver"
@@ -173,7 +173,7 @@
msgid "About GnuPG"
msgstr "Über GnuPG"
-#: Src/wptAboutDlgs.cpp:97 Src/wptKeyManagerDlg.cpp:1626
+#: Src/wptAboutDlgs.cpp:97 Src/wptKeyManagerDlg.cpp:1648
#: Src/wptMainProc.cpp:576
msgid "About WinPT"
msgstr "Über WinPT"
@@ -224,7 +224,7 @@
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:700
#: Src/wptAboutDlgs.cpp:116 Src/wptKeyEditDlgs.cpp:1808
-#: Src/wptKeyManagerDlg.cpp:961
+#: Src/wptKeyManagerDlg.cpp:967
msgid "&Help"
msgstr "&Hilfe"
@@ -341,7 +341,7 @@
msgid "Make off-card backup of encryption key"
msgstr ""
-#: Src/wptCardDlg.cpp:608 Src/wptKeyManagerDlg.cpp:1516
+#: Src/wptCardDlg.cpp:608 Src/wptKeyManagerDlg.cpp:1538
msgid "Card Key Generation"
msgstr "Karten-Schlüsselerzeugung"
@@ -574,7 +574,7 @@
msgstr "'>' hinzufügen"
#: Src/wptClipEditDlg.cpp:202 Src/wptKeyEditDlgs.cpp:1807
-#: Src/wptKeyserverDlg.cpp:449 Src/wptMDSumDlg.cpp:104
+#: Src/wptKeyserverDlg.cpp:452 Src/wptMDSumDlg.cpp:104
#: Src/wptOwnertrustDlg.cpp:103
msgid "&Close"
msgstr "&Schliessen"
@@ -789,8 +789,8 @@
#: Src/wptKeyEditDlgs.cpp:1678 Src/wptKeyEditDlgs.cpp:1687
#: Src/wptKeyEditDlgs.cpp:1788 Src/wptKeyEditDlgs.cpp:1798
#: Src/wptKeyEditDlgs.cpp:1809 Src/wptKeyEditDlgs.cpp:1838
-#: Src/wptKeyEditDlgs.cpp:1844 Src/wptKeyManagerDlg.cpp:989
-#: Src/wptKeyManagerDlg.cpp:1660
+#: Src/wptKeyEditDlgs.cpp:1844 Src/wptKeyManagerDlg.cpp:995
+#: Src/wptKeyManagerDlg.cpp:1682
msgid "Key Edit"
msgstr "Schlüssel bearbeiten"
@@ -1259,8 +1259,8 @@
msgid "Export"
msgstr "Exportieren"
-#: Src/wptFileManager.cpp:1695 Src/wptKeyManagerDlg.cpp:1584
-#: Src/wptKeyManagerDlg.cpp:1618
+#: Src/wptFileManager.cpp:1695 Src/wptKeyManagerDlg.cpp:1606
+#: Src/wptKeyManagerDlg.cpp:1640
msgid "Choose Name for Key File"
msgstr "Den Namen der Schlüsseldatei wählen"
@@ -1358,17 +1358,17 @@
msgid "Signature mode"
msgstr "Signaturmodus"
-#: Src/wptFileManagerDlg.cpp:276 Src/wptKeyManagerDlg.cpp:953
+#: Src/wptFileManagerDlg.cpp:276 Src/wptKeyManagerDlg.cpp:959
msgid "Options"
msgstr "Optionen"
#: Src/wptFileManagerDlg.cpp:322 Src/wptKeyEditDlgs.cpp:1228
#: Src/wptKeyEditDlgs.cpp:1277 Src/wptKeyEditDlgs.cpp:1351
#: Src/wptKeyManager.cpp:611 Src/wptKeyManager.cpp:712
-#: Src/wptKeyManager.cpp:749 Src/wptKeyManagerDlg.cpp:1352
-#: Src/wptKeyManagerDlg.cpp:1371 Src/wptKeyManagerDlg.cpp:1405
-#: Src/wptKeyManagerDlg.cpp:1424 Src/wptKeyManagerDlg.cpp:1441
-#: Src/wptKeyManagerDlg.cpp:1574 Src/wptKeyManagerDlg.cpp:1593
+#: Src/wptKeyManager.cpp:749 Src/wptKeyManagerDlg.cpp:1374
+#: Src/wptKeyManagerDlg.cpp:1393 Src/wptKeyManagerDlg.cpp:1427
+#: Src/wptKeyManagerDlg.cpp:1446 Src/wptKeyManagerDlg.cpp:1463
+#: Src/wptKeyManagerDlg.cpp:1596 Src/wptKeyManagerDlg.cpp:1615
#: Src/wptKeyserverSearchDlg.cpp:127
msgid "Please select a key."
msgstr "Bitte Schlüssel wählen."
@@ -1386,17 +1386,17 @@
msgid "File Manager (use drag & drop to add files)"
msgstr "Dateimanager (Drag & Drop möglich)"
-#: Src/wptFileManagerDlg.cpp:458 Src/wptKeyManagerDlg.cpp:926
+#: Src/wptFileManagerDlg.cpp:458 Src/wptKeyManagerDlg.cpp:932
#: Src/wptOwnertrustDlg.cpp:98
msgid "File"
msgstr "Datei"
-#: Src/wptFileManagerDlg.cpp:459 Src/wptKeyManagerDlg.cpp:927
-#: Src/wptKeyManagerDlg.cpp:932 Src/wptKeyManagerDlg.cpp:943
+#: Src/wptFileManagerDlg.cpp:459 Src/wptKeyManagerDlg.cpp:933
+#: Src/wptKeyManagerDlg.cpp:938 Src/wptKeyManagerDlg.cpp:949
msgid "Edit"
msgstr "Bearbeiten"
-#: Src/wptFileManagerDlg.cpp:460 Src/wptKeyManagerDlg.cpp:928
+#: Src/wptFileManagerDlg.cpp:460 Src/wptKeyManagerDlg.cpp:934
msgid "View"
msgstr "Ansicht"
@@ -1416,8 +1416,8 @@
msgid "&Decrypt"
msgstr "&Entschlüsseln"
-#: Src/wptFileManagerDlg.cpp:465 Src/wptKeyManagerDlg.cpp:944
-#: Src/wptKeyManagerDlg.cpp:992
+#: Src/wptFileManagerDlg.cpp:465 Src/wptKeyManagerDlg.cpp:950
+#: Src/wptKeyManagerDlg.cpp:998
msgid "&Sign"
msgstr "&Signieren"
@@ -1615,7 +1615,7 @@
#: Src/wptGPGPrefsDlg.cpp:190 Src/wptGPGPrefsDlg.cpp:196
#: Src/wptGPGPrefsDlg.cpp:201 Src/wptGPGPrefsDlg.cpp:206
#: Src/wptGPGPrefsDlg.cpp:211 Src/wptGPGPrefsDlg.cpp:225
-#: Src/wptKeyEditDlgs.cpp:1623 Src/wptKeyManagerDlg.cpp:954
+#: Src/wptKeyEditDlgs.cpp:1623 Src/wptKeyManagerDlg.cpp:960
#: Src/wptMainProc.cpp:430 Src/wptPreferencesDlg.cpp:209
#: Src/wptPreferencesDlg.cpp:260 Src/wptPreferencesDlg.cpp:271
#: Src/wptPreferencesDlg.cpp:283 Src/wptPreferencesDlg.cpp:296
@@ -1754,7 +1754,7 @@
"Aktuelle Daten gehen verloren\n"
"Sind Sie sicher?"
-#: Src/wptGPGPrefsDlg.cpp:128 Src/wptKeyManagerDlg.cpp:1548
+#: Src/wptGPGPrefsDlg.cpp:128 Src/wptKeyManagerDlg.cpp:1570
#: Src/wptMainProc.cpp:588
msgid "GnuPG Preferences"
msgstr "GnuPG-Einstellungen"
@@ -1875,7 +1875,7 @@
msgid "Unknown Hotkey"
msgstr "Unbekanntes Tastenkürzel"
-#: Src/wptImagelist.cpp:50 Src/wptKeyManager.cpp:178 Src/wptKeyManager.cpp:183
+#: Src/wptImagelist.cpp:52 Src/wptKeyManager.cpp:178 Src/wptKeyManager.cpp:183
#: Src/wptKeyManager.cpp:234 Src/wptKeyManager.cpp:313
#: Src/wptKeyManager.cpp:320 Src/wptKeyManager.cpp:349
#: Src/wptKeyManager.cpp:354 Src/wptKeyManager.cpp:361
@@ -1892,16 +1892,16 @@
#: Src/wptKeyManager.cpp:744 Src/wptKeyManager.cpp:749
#: Src/wptKeyManager.cpp:777 Src/wptKeyManager.cpp:819
#: Src/wptKeyManager.cpp:826 Src/wptKeyManager.cpp:886
-#: Src/wptKeyManager.cpp:916 Src/wptKeyManagerDlg.cpp:1048
-#: Src/wptKeyManagerDlg.cpp:1069 Src/wptKeyManagerDlg.cpp:1325
-#: Src/wptKeyManagerDlg.cpp:1353 Src/wptKeyManagerDlg.cpp:1371
-#: Src/wptKeyManagerDlg.cpp:1379 Src/wptKeyManagerDlg.cpp:1389
-#: Src/wptKeyManagerDlg.cpp:1405 Src/wptKeyManagerDlg.cpp:1411
-#: Src/wptKeyManagerDlg.cpp:1424 Src/wptKeyManagerDlg.cpp:1441
-#: Src/wptKeyManagerDlg.cpp:1473 Src/wptKeyManagerDlg.cpp:1512
-#: Src/wptKeyManagerDlg.cpp:1575 Src/wptKeyManagerDlg.cpp:1593
-#: Src/wptKeyManagerDlg.cpp:1598 Src/wptKeyManagerDlg.cpp:1603
-#: Src/wptKeyManagerDlg.cpp:1689 Src/wptKeyManagerDlg.cpp:1864
+#: Src/wptKeyManager.cpp:916 Src/wptKeyManagerDlg.cpp:1054
+#: Src/wptKeyManagerDlg.cpp:1075 Src/wptKeyManagerDlg.cpp:1347
+#: Src/wptKeyManagerDlg.cpp:1375 Src/wptKeyManagerDlg.cpp:1393
+#: Src/wptKeyManagerDlg.cpp:1401 Src/wptKeyManagerDlg.cpp:1411
+#: Src/wptKeyManagerDlg.cpp:1427 Src/wptKeyManagerDlg.cpp:1433
+#: Src/wptKeyManagerDlg.cpp:1446 Src/wptKeyManagerDlg.cpp:1463
+#: Src/wptKeyManagerDlg.cpp:1495 Src/wptKeyManagerDlg.cpp:1534
+#: Src/wptKeyManagerDlg.cpp:1597 Src/wptKeyManagerDlg.cpp:1615
+#: Src/wptKeyManagerDlg.cpp:1620 Src/wptKeyManagerDlg.cpp:1625
+#: Src/wptKeyManagerDlg.cpp:1711 Src/wptKeyManagerDlg.cpp:1886
#: Src/wptKeysigDlg.cpp:88 Src/wptKeysigDlg.cpp:99 Src/wptKeysigDlg.cpp:270
#: Src/wptKeysigDlg.cpp:346 Src/wptKeysigDlg.cpp:355 Src/wptKeysigDlg.cpp:399
#: Src/wptMainProc.cpp:398 Src/wptMainProc.cpp:551 Src/wptMainProc.cpp:559
@@ -1937,20 +1937,20 @@
msgstr "Ungültige Benutzerkennung"
#: Src/wptImportList.cpp:352 Src/wptKeylist.cpp:537 Src/wptKeylist.cpp:545
-#: Src/wptKeyManagerDlg.cpp:872 Src/wptKeyManagerDlg.cpp:940
+#: Src/wptKeyManagerDlg.cpp:878 Src/wptKeyManagerDlg.cpp:946
#: Src/wptKeyserverSearchDlg.cpp:48 Src/wptSigList.cpp:51
#: Src/wptVerifyList.cpp:101 Src/wptVerifyList.cpp:110
msgid "User ID"
msgstr "Benutzerkennung"
#: Src/wptImportList.cpp:353 Src/wptKeylist.cpp:539 Src/wptKeylist.cpp:548
-#: Src/wptKeyManagerDlg.cpp:875 Src/wptKeyserverSearchDlg.cpp:45
+#: Src/wptKeyManagerDlg.cpp:881 Src/wptKeyserverSearchDlg.cpp:45
msgid "Size"
msgstr "Größe"
#: Src/wptImportList.cpp:354 Src/wptKeyEditDlgs.cpp:952 Src/wptKeylist.cpp:538
-#: Src/wptKeylist.cpp:546 Src/wptKeyManagerDlg.cpp:873
-#: Src/wptKeyManagerDlg.cpp:963 Src/wptKeyRevokersDlg.cpp:58
+#: Src/wptKeylist.cpp:546 Src/wptKeyManagerDlg.cpp:879
+#: Src/wptKeyManagerDlg.cpp:969 Src/wptKeyRevokersDlg.cpp:58
#: Src/wptKeyserverSearchDlg.cpp:46 Src/wptSigList.cpp:55
#: Src/wptVerifyList.cpp:109
msgid "Key ID"
@@ -1958,13 +1958,13 @@
#: Src/wptImportList.cpp:355 Src/wptKeyEditDlgs.cpp:953
#: Src/wptKeyEditDlgs.cpp:1060 Src/wptKeylist.cpp:552
-#: Src/wptKeyManagerDlg.cpp:879 Src/wptKeyManagerDlg.cpp:966
+#: Src/wptKeyManagerDlg.cpp:885 Src/wptKeyManagerDlg.cpp:972
#: Src/wptKeyserverSearchDlg.cpp:47 Src/wptSigList.cpp:54
msgid "Creation"
msgstr "Erstellung"
#: Src/wptImportList.cpp:356 Src/wptKeylist.cpp:547
-#: Src/wptKeyManagerDlg.cpp:874 Src/wptKeyManagerDlg.cpp:965
+#: Src/wptKeyManagerDlg.cpp:880 Src/wptKeyManagerDlg.cpp:971
msgid "Type"
msgstr "Typ"
@@ -2207,7 +2207,7 @@
#: Src/wptKeyEditDlgs.cpp:842 Src/wptKeyEditDlgs.cpp:855
#: Src/wptKeyEditDlgs.cpp:896 Src/wptKeyEditDlgs.cpp:1273
#: Src/wptKeyEditDlgs.cpp:1346 Src/wptKeyEditDlgs.cpp:1405
-#: Src/wptKeyManagerDlg.cpp:1378
+#: Src/wptKeyManagerDlg.cpp:1400
msgid "There is no secret key available!"
msgstr "Kein geheimer Schlüssel vorhanden!"
@@ -2268,7 +2268,7 @@
msgstr "Kein(e) Unterschlüssel gefunden."
#: Src/wptKeyEditDlgs.cpp:1057 Src/wptKeylist.cpp:541 Src/wptKeylist.cpp:550
-#: Src/wptKeyManagerDlg.cpp:877
+#: Src/wptKeyManagerDlg.cpp:883
msgid "Validity"
msgstr "Gültigkeit"
@@ -2530,8 +2530,8 @@
msgstr "Bitte wählen Sie einen Eintrag."
#: Src/wptKeyEditOwnertrustDlg.cpp:88 Src/wptKeyEditOwnertrustDlg.cpp:95
-#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:934
-#: Src/wptKeyManagerDlg.cpp:1642 Src/wptKeyPropsDlg.cpp:286
+#: Src/wptKeyEditOwnertrustDlg.cpp:104 Src/wptKeyManagerDlg.cpp:940
+#: Src/wptKeyManagerDlg.cpp:1664 Src/wptKeyPropsDlg.cpp:286
#: Src/wptOwnertrustDlg.cpp:97 Src/wptOwnertrustDlg.cpp:121
#: Src/wptOwnertrustDlg.cpp:133
msgid "Ownertrust"
@@ -2554,7 +2554,7 @@
#: Src/wptKeygenDlg.cpp:421 Src/wptKeygenDlg.cpp:426 Src/wptKeygenDlg.cpp:432
#: Src/wptKeygenDlg.cpp:439 Src/wptKeygenDlg.cpp:451 Src/wptKeygenDlg.cpp:458
#: Src/wptKeygenDlg.cpp:493 Src/wptKeygenDlg.cpp:584
-#: Src/wptKeyManagerDlg.cpp:1501 Src/wptPassphraseDlg.cpp:94
+#: Src/wptKeyManagerDlg.cpp:1523 Src/wptPassphraseDlg.cpp:94
msgid "Key Generation"
msgstr "Schlüsselerzeugung"
@@ -2708,7 +2708,7 @@
#: Src/wptKeygenDlg.cpp:543 Src/wptKeygenDlg.cpp:565 Src/wptKeygenDlg.cpp:570
#: Src/wptKeygenDlg.cpp:576 Src/wptKeygenDlg.cpp:581 Src/wptKeygenDlg.cpp:605
-#: Src/wptKeyManagerDlg.cpp:1527
+#: Src/wptKeyManagerDlg.cpp:1549
msgid "Key Generation Wizard"
msgstr "Schlüsselerzeugungs-Assistent"
@@ -2797,12 +2797,12 @@
msgid "Disabled"
msgstr "Inaktiv"
-#: Src/wptKeylist.cpp:540 Src/wptKeylist.cpp:549 Src/wptKeyManagerDlg.cpp:876
-#: Src/wptKeyManagerDlg.cpp:964
+#: Src/wptKeylist.cpp:540 Src/wptKeylist.cpp:549 Src/wptKeyManagerDlg.cpp:882
+#: Src/wptKeyManagerDlg.cpp:970
msgid "Cipher"
msgstr "Cipher"
-#: Src/wptKeylist.cpp:551 Src/wptKeyManagerDlg.cpp:878
+#: Src/wptKeylist.cpp:551 Src/wptKeyManagerDlg.cpp:884
#: Src/wptVerifyList.cpp:100 Src/wptVerifyList.cpp:108
msgid "Trust"
msgstr "Vertrauen"
@@ -2992,282 +2992,299 @@
msgid "String pattern \"%s\" not found."
msgstr "Zeichenkette \"%s\" nicht gefunden."
-#: Src/wptKeyManagerDlg.cpp:429 Src/wptKeyManagerDlg.cpp:984
+#: Src/wptKeyManagerDlg.cpp:434 Src/wptKeyManagerDlg.cpp:990
msgid "Paste Key from Clipboard"
msgstr "Schlüssel aus Ablage einfügen"
-#: Src/wptKeyManagerDlg.cpp:457
+#: Src/wptKeyManagerDlg.cpp:462
#, c-format
msgid "Default Key: %s"
msgstr "Standardschlüssel: %s"
-#: Src/wptKeyManagerDlg.cpp:459
+#: Src/wptKeyManagerDlg.cpp:464
#, c-format
msgid "Default Key: 0x%s"
msgstr "Standardschlüssel: 0x%s"
-#: Src/wptKeyManagerDlg.cpp:479
+#: Src/wptKeyManagerDlg.cpp:484
#, c-format
msgid "%d secret keys"
msgstr "%d geheime Schlüssel"
# c:\oss\winpt-gpgme\src\wptKeyManager.cpp:849
-#: Src/wptKeyManagerDlg.cpp:480
+#: Src/wptKeyManagerDlg.cpp:485
#, c-format
msgid "%d keys"
msgstr "%d Schlüssel"
-#: Src/wptKeyManagerDlg.cpp:929
+#: Src/wptKeyManagerDlg.cpp:935
msgid "Key"
msgstr "Schlüssel"
-#: Src/wptKeyManagerDlg.cpp:930 Src/wptKeyManagerDlg.cpp:1082
+#: Src/wptKeyManagerDlg.cpp:936 Src/wptKeyManagerDlg.cpp:1088
msgid "Groups"
msgstr "Gruppen"
# c:\oss\winpt-gpgme\src\wptFileManagerDlg.cpp:478
-#: Src/wptKeyManagerDlg.cpp:933
+#: Src/wptKeyManagerDlg.cpp:939
msgid "Send Mail..."
msgstr "eMail versenden..."
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:685
-#: Src/wptKeyManagerDlg.cpp:935
+#: Src/wptKeyManagerDlg.cpp:941
msgid "&Copy\tCtrl+C"
msgstr "&Kopieren\tCtrl+C"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:686
-#: Src/wptKeyManagerDlg.cpp:936
+#: Src/wptKeyManagerDlg.cpp:942
msgid "&Paste\tCtrl+V"
msgstr "&Einfügen\tCtrl+V"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:687
-#: Src/wptKeyManagerDlg.cpp:937
+#: Src/wptKeyManagerDlg.cpp:943
msgid "Search...\tCtrl+F"
msgstr "Suchen...\tCtrl+F"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:688
-#: Src/wptKeyManagerDlg.cpp:938
+#: Src/wptKeyManagerDlg.cpp:944
msgid "Select All\tCtrl+A"
msgstr "Alles markieren\tCtrl+A"
-#: Src/wptKeyManagerDlg.cpp:939
+#: Src/wptKeyManagerDlg.cpp:945
msgid "&Quit"
msgstr "&Beenden"
-#: Src/wptKeyManagerDlg.cpp:941
+#: Src/wptKeyManagerDlg.cpp:947
msgid "&Expert"
msgstr "&Experte"
-#: Src/wptKeyManagerDlg.cpp:942
+#: Src/wptKeyManagerDlg.cpp:948
msgid "&Normal"
msgstr "&Normal"
-#: Src/wptKeyManagerDlg.cpp:945 Src/wptKeyManagerDlg.cpp:946
-#: Src/wptKeyManagerDlg.cpp:990
+#: Src/wptKeyManagerDlg.cpp:951 Src/wptKeyManagerDlg.cpp:952
+#: Src/wptKeyManagerDlg.cpp:996
msgid "&Delete"
msgstr "&Löschen"
-#: Src/wptKeyManagerDlg.cpp:947 Src/wptKeyManagerDlg.cpp:991
+#: Src/wptKeyManagerDlg.cpp:953 Src/wptKeyManagerDlg.cpp:997
msgid "&Revoke Cert"
msgstr "Widerruf Zertifikat"
-#: Src/wptKeyManagerDlg.cpp:948 Src/wptKeyManagerDlg.cpp:987
+#: Src/wptKeyManagerDlg.cpp:954 Src/wptKeyManagerDlg.cpp:993
msgid "&List Signatures"
msgstr "Signaturen anzeigen"
-#: Src/wptKeyManagerDlg.cpp:949 Src/wptKeyManagerDlg.cpp:1419
+#: Src/wptKeyManagerDlg.cpp:955 Src/wptKeyManagerDlg.cpp:1441
#: Src/wptKeyTrustPathDlg.cpp:130
msgid "List Trust Path"
msgstr "Zeige Vertrauenspfad"
-#: Src/wptKeyManagerDlg.cpp:950
+#: Src/wptKeyManagerDlg.cpp:956
msgid "&Export..."
msgstr "&Exportieren..."
-#: Src/wptKeyManagerDlg.cpp:951
+#: Src/wptKeyManagerDlg.cpp:957
msgid "&Import..."
msgstr "&Importieren..."
-#: Src/wptKeyManagerDlg.cpp:952 Src/wptKeyManagerDlg.cpp:988
+#: Src/wptKeyManagerDlg.cpp:958 Src/wptKeyManagerDlg.cpp:994
#: Src/wptKeysigDlg.cpp:384
msgid "&Properties"
msgstr "&Eigenschaften"
-#: Src/wptKeyManagerDlg.cpp:956
+#: Src/wptKeyManagerDlg.cpp:962
msgid "E&xport Secret Key"
msgstr "E&xportiere geheimen Schlüssel"
-#: Src/wptKeyManagerDlg.cpp:957
+#: Src/wptKeyManagerDlg.cpp:963
msgid "Re&load Key Cache"
msgstr "Erneuere Sch&lüsselcache"
-#: Src/wptKeyManagerDlg.cpp:958
+#: Src/wptKeyManagerDlg.cpp:964
msgid "R&everify Signatures"
msgstr "Signaturen erneut prüfen"
-#: Src/wptKeyManagerDlg.cpp:959
+#: Src/wptKeyManagerDlg.cpp:965
msgid "Refresh &Keys (Keyserver)"
msgstr "Vom Schlüsselserver aktualisieren"
-#: Src/wptKeyManagerDlg.cpp:960 Src/wptTextInputDlg.cpp:49
+#: Src/wptKeyManagerDlg.cpp:966 Src/wptTextInputDlg.cpp:49
msgid "Info"
msgstr "Über"
-#: Src/wptKeyManagerDlg.cpp:979
+#: Src/wptKeyManagerDlg.cpp:985
msgid "Copy User ID to Clipboard"
msgstr "Kopiere Benutzerkennung in Ablage"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:886
-#: Src/wptKeyManagerDlg.cpp:980
+#: Src/wptKeyManagerDlg.cpp:986
msgid "Copy Key ID to Clipboard"
msgstr "Kopiere Schlüssel ID in Ablage"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:887
-#: Src/wptKeyManagerDlg.cpp:981
+#: Src/wptKeyManagerDlg.cpp:987
msgid "Copy Fingerprint to Clipboard"
msgstr "Kopiere Fingerprint in Ablage"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:888
-#: Src/wptKeyManagerDlg.cpp:982
+#: Src/wptKeyManagerDlg.cpp:988
msgid "Copy Key Info to Clipboard"
msgstr "Kopiere Schlüssel Info in Ablage"
-#: Src/wptKeyManagerDlg.cpp:983
+#: Src/wptKeyManagerDlg.cpp:989
msgid "Copy Key to Clipboard"
msgstr "Kopiere Schlüssel in Ablage"
-#: Src/wptKeyManagerDlg.cpp:985
+#: Src/wptKeyManagerDlg.cpp:991
msgid "Refresh from Keyserver"
msgstr "Vom Schlüsselserver aktualisieren"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:884
-#: Src/wptKeyManagerDlg.cpp:986
+#: Src/wptKeyManagerDlg.cpp:992
msgid "Set Implicit &Trust"
msgstr "Setze impliziertes Vertrauen"
-#: Src/wptKeyManagerDlg.cpp:993
+#: Src/wptKeyManagerDlg.cpp:999
msgid "&Enable"
msgstr "&Aktivieren"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:892
-#: Src/wptKeyManagerDlg.cpp:994
+#: Src/wptKeyManagerDlg.cpp:1000
msgid "&Disable"
msgstr "&Deaktivieren"
-#: Src/wptKeyManagerDlg.cpp:995
+#: Src/wptKeyManagerDlg.cpp:1001
msgid "Re&fresh from Keyserver"
msgstr "Vom Schlüsselserver aktualisieren"
-#: Src/wptKeyManagerDlg.cpp:996
+#: Src/wptKeyManagerDlg.cpp:1002
msgid "Set preferred Keyserver URL"
msgstr "Setze bevorzugte Keyserver URL"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:900
-#: Src/wptKeyManagerDlg.cpp:997
+#: Src/wptKeyManagerDlg.cpp:1003
msgid "Send Key to Mail Recipient"
msgstr "Sende Schlüssel an Mailempfänger"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:904
-#: Src/wptKeyManagerDlg.cpp:998
+#: Src/wptKeyManagerDlg.cpp:1004
msgid "Set as Default Key"
msgstr "Setze als Default Key"
-#: Src/wptKeyManagerDlg.cpp:1000
+#: Src/wptKeyManagerDlg.cpp:1006
msgid "Key..."
msgstr "Schlüssel..."
-#: Src/wptKeyManagerDlg.cpp:1001
+#: Src/wptKeyManagerDlg.cpp:1007
msgid "User ID..."
msgstr "Benutzerkennung..."
-#: Src/wptKeyManagerDlg.cpp:1002
+#: Src/wptKeyManagerDlg.cpp:1008
msgid "Photo ID..."
msgstr "Photo ID..."
-#: Src/wptKeyManagerDlg.cpp:1003
+#: Src/wptKeyManagerDlg.cpp:1009
msgid "Revoker..."
msgstr "Revoker..."
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:706
-#: Src/wptKeyManagerDlg.cpp:1006
+#: Src/wptKeyManagerDlg.cpp:1012
msgid "Key Attributes"
msgstr "Schlüsselattribute"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:707
-#: Src/wptKeyManagerDlg.cpp:1007
+#: Src/wptKeyManagerDlg.cpp:1013
msgid "Add"
msgstr "Hinzufügen"
-#: Src/wptKeyManagerDlg.cpp:1008
+#: Src/wptKeyManagerDlg.cpp:1014
msgid "Send to Keyserver"
msgstr "Sende an Keyserver"
-#: Src/wptKeyManagerDlg.cpp:1068
+#: Src/wptKeyManagerDlg.cpp:1074
msgid "Could not set keylist window procedure."
msgstr "Konnte \"keylist window procedure\" nicht setzen."
+# c:\oss\winpt-gpgme\src\wptFirstRunDlg.cpp:42
+#: Src/wptKeyManagerDlg.cpp:1187
+msgid "Generate new key pair"
+msgstr "Neues Schlüsselpaar erzeugen"
+
+#: Src/wptKeyManagerDlg.cpp:1191
+msgid "Search for a specific key"
+msgstr "Suche nach einem bestimmten Schlüssel"
+
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:842
-#: Src/wptKeyManagerDlg.cpp:1181
+#: Src/wptKeyManagerDlg.cpp:1195
msgid "Delete key from keyring"
msgstr "Schlüssel aus Keyring löschen"
-#: Src/wptKeyManagerDlg.cpp:1185
+#: Src/wptKeyManagerDlg.cpp:1199
msgid "Show key properties"
msgstr "Schlüsseleigenschaften anzeigen"
-#: Src/wptKeyManagerDlg.cpp:1189
+#: Src/wptKeyManagerDlg.cpp:1203
msgid "Sign key"
msgstr "Signiere Schlüssel"
+#: Src/wptKeyManagerDlg.cpp:1207
+msgid "Copy key to clipboard"
+msgstr "Kopiere Schlüssel in Ablage"
+
+#: Src/wptKeyManagerDlg.cpp:1211
+msgid "Paste key from clipboard"
+msgstr "Schlüssel aus Ablage einfügen"
+
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:854
-#: Src/wptKeyManagerDlg.cpp:1193
+#: Src/wptKeyManagerDlg.cpp:1215
msgid "Import key to keyring"
msgstr "In Schlüsselbund importieren"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:858
-#: Src/wptKeyManagerDlg.cpp:1197
+#: Src/wptKeyManagerDlg.cpp:1219
msgid "Export key to a file"
msgstr "Schlüssel in Datei exportieren"
# c:\oss\winpt-gpgme\src\wptKeyManagerDlg.cpp:499
-#: Src/wptKeyManagerDlg.cpp:1317
+#: Src/wptKeyManagerDlg.cpp:1339
msgid "New"
msgstr "Neu"
-#: Src/wptKeyManagerDlg.cpp:1324
+#: Src/wptKeyManagerDlg.cpp:1346
msgid "Could not access public keyring"
msgstr "Konnte nicht auf öffentlichen Schlüsselbund zugreifen"
-#: Src/wptKeyManagerDlg.cpp:1364 Src/wptKeysignDlg.cpp:230
+#: Src/wptKeyManagerDlg.cpp:1386 Src/wptKeysignDlg.cpp:230
#: Src/wptKeysignDlg.cpp:249 Src/wptKeysignDlg.cpp:326
#: Src/wptKeysignDlg.cpp:343 Src/wptKeysignDlg.cpp:348
msgid "Key Signing"
msgstr "Schlüsselsignierung"
-#: Src/wptKeyManagerDlg.cpp:1388
+#: Src/wptKeyManagerDlg.cpp:1410
msgid "Key already revoked!"
msgstr "Schlüssel ist bereits widerrufen!"
-#: Src/wptKeyManagerDlg.cpp:1400 Src/wptKeyRevokeDlg.cpp:72
+#: Src/wptKeyManagerDlg.cpp:1422 Src/wptKeyRevokeDlg.cpp:72
#: Src/wptKeyRevokeDlg.cpp:100 Src/wptKeyRevokeDlg.cpp:138
#: Src/wptKeyRevokeDlg.cpp:143 Src/wptKeyRevokeDlg.cpp:151
#: Src/wptKeyRevokeDlg.cpp:167 Src/wptKeyRevokeDlg.cpp:173
msgid "Key Revocation Cert"
msgstr "Schlüsselwiderruf Zertifikat"
-#: Src/wptKeyManagerDlg.cpp:1410
+#: Src/wptKeyManagerDlg.cpp:1432
msgid "It does not make any sense with a key pair!"
msgstr "Diese Aktion macht keinen Sinn mit einem Schlüsselpaar!"
-#: Src/wptKeyManagerDlg.cpp:1436
+#: Src/wptKeyManagerDlg.cpp:1458
msgid "Key Signature List"
msgstr "Schlüssel-Signatur-Liste"
-#: Src/wptKeyManagerDlg.cpp:1455 Src/wptKeyPropsDlg.cpp:282
+#: Src/wptKeyManagerDlg.cpp:1477 Src/wptKeyPropsDlg.cpp:282
msgid "Key Properties"
msgstr "Schlüsseleigenschaften"
-#: Src/wptKeyManagerDlg.cpp:1470
+#: Src/wptKeyManagerDlg.cpp:1492
msgid ""
"This is only useful when the keyring has been modified (sign a key...).\n"
"Do you really want to reload the keycache?"
@@ -3276,31 +3293,31 @@
"Signierung etc.)\n"
"Möchten Sie den Zwischenspeicher reinitialisieren?"
-#: Src/wptKeyManagerDlg.cpp:1511
+#: Src/wptKeyManagerDlg.cpp:1533
msgid "Smart Card support is not available."
msgstr "SmartCard-Unterstützung ist nicht verfügbar."
-#: Src/wptKeyManagerDlg.cpp:1538 Src/wptKeyserverDlg.cpp:440
+#: Src/wptKeyManagerDlg.cpp:1560 Src/wptKeyserverDlg.cpp:443
msgid "Keyserver Access"
msgstr "Schlüsselserver-Zugriff"
-#: Src/wptKeyManagerDlg.cpp:1554
+#: Src/wptKeyManagerDlg.cpp:1576
msgid "GnuPG Options"
msgstr "GnuPG Optionen"
-#: Src/wptKeyManagerDlg.cpp:1559
+#: Src/wptKeyManagerDlg.cpp:1581
msgid "Choose Name of the Key File"
msgstr "Den Namen der Schlüsseldatei wählen"
-#: Src/wptKeyManagerDlg.cpp:1597
+#: Src/wptKeyManagerDlg.cpp:1619
msgid "There is no corresponding secret key for this key."
msgstr "Für diesen Schlüssel ist kein geheimer Schlüssel vorhanden."
-#: Src/wptKeyManagerDlg.cpp:1602
+#: Src/wptKeyManagerDlg.cpp:1624
msgid "You can only export one secret key."
msgstr "Sie können nur einen geheimen Schlüssel exportieren."
-#: Src/wptKeyManagerDlg.cpp:1607
+#: Src/wptKeyManagerDlg.cpp:1629
msgid ""
"This operation will export your *SECRET* key!\n"
"\n"
@@ -3318,11 +3335,11 @@
"\n"
"Wirklich den Schlüssel exportieren?"
-#: Src/wptKeyManagerDlg.cpp:1612
+#: Src/wptKeyManagerDlg.cpp:1634
msgid "WARNING"
msgstr "WARNUNG"
-#: Src/wptKeyManagerDlg.cpp:1688
+#: Src/wptKeyManagerDlg.cpp:1710
msgid "No key was selected, select all by default."
msgstr "Kein Schlüssel ausgewählt, es wurden alle ausgewählt."
@@ -3602,70 +3619,70 @@
msgid "Port"
msgstr "Port"
-#: Src/wptKeyserverDlg.cpp:441 Src/wptKeyserverSearchDlg.cpp:62
+#: Src/wptKeyserverDlg.cpp:444 Src/wptKeyserverSearchDlg.cpp:62
msgid "&Receive"
msgstr "&Empfangen"
-#: Src/wptKeyserverDlg.cpp:443
+#: Src/wptKeyserverDlg.cpp:446
msgid "Send key (default is receiving)"
msgstr "Schlüssel senden (sonst empfangen)"
-#: Src/wptKeyserverDlg.cpp:445
+#: Src/wptKeyserverDlg.cpp:448
msgid "Please enter the key ID or email address you search for"
msgstr "Bitte die key ID oder Email Adresse angeben die gesucht wird"
-#: Src/wptKeyserverDlg.cpp:446
+#: Src/wptKeyserverDlg.cpp:449
msgid "&Search"
msgstr "&Suchen"
-#: Src/wptKeyserverDlg.cpp:447
+#: Src/wptKeyserverDlg.cpp:450
msgid "C&hange"
msgstr "Ä&ndern"
-#: Src/wptKeyserverDlg.cpp:448
+#: Src/wptKeyserverDlg.cpp:451
msgid "Set &default"
msgstr "Als &Standard"
-#: Src/wptKeyserverDlg.cpp:483 Src/wptProxySettingsDlg.cpp:66
+#: Src/wptKeyserverDlg.cpp:486 Src/wptProxySettingsDlg.cpp:66
#: Src/wptProxySettingsDlg.cpp:75 Src/wptProxySettingsDlg.cpp:82
#: Src/wptProxySettingsDlg.cpp:87 Src/wptProxySettingsDlg.cpp:92
#: Src/wptProxySettingsDlg.cpp:138 Src/wptProxySettingsDlg.cpp:169
msgid "Proxy Settings"
msgstr "Proxy Einstellungen"
-#: Src/wptKeyserverDlg.cpp:491 Src/wptKeyserverDlg.cpp:520
+#: Src/wptKeyserverDlg.cpp:494 Src/wptKeyserverDlg.cpp:523
msgid "Please select one of the keyservers."
msgstr "Bitte einen Keyserver auswählen."
-#: Src/wptKeyserverDlg.cpp:498
+#: Src/wptKeyserverDlg.cpp:501
msgid "This is not implemented yet!"
msgstr "Das ist (leider) noch nicht implementiert!"
-#: Src/wptKeyserverDlg.cpp:504 Src/wptKeyserverDlg.cpp:533
+#: Src/wptKeyserverDlg.cpp:507 Src/wptKeyserverDlg.cpp:536
msgid "Please enter the search pattern."
msgstr "Bitte Suchmuster eingeben."
-#: Src/wptKeyserverDlg.cpp:538
+#: Src/wptKeyserverDlg.cpp:541
msgid "Only keyids are allowed."
msgstr "Nur Schlüssel-IDs zulässig"
-#: Src/wptKeyserverDlg.cpp:538
+#: Src/wptKeyserverDlg.cpp:541
msgid "LDAP Keyserver"
msgstr "LDAP-Schlüsselserver"
-#: Src/wptKeyserverDlg.cpp:543
+#: Src/wptKeyserverDlg.cpp:546
msgid "Only enter the name of the user."
msgstr "Nur den Namen des Benutzers eingeben."
-#: Src/wptKeyserverDlg.cpp:544
+#: Src/wptKeyserverDlg.cpp:547
msgid "FINGER Keyserver"
msgstr "FINGER Schlüsselserver"
-#: Src/wptKeyserverDlg.cpp:549
+#: Src/wptKeyserverDlg.cpp:552
msgid "Only email addresses or keyids are allowed."
msgstr "Es sind nur E-Mail-Adressen oder Schlüssel-IDs zulässig"
-#: Src/wptKeyserverDlg.cpp:550
+#: Src/wptKeyserverDlg.cpp:553
msgid "HKP Keyserver"
msgstr "HKP Schlüsselserver"
@@ -4183,8 +4200,8 @@
msgstr "&Automatisch Backups erstellen wenn WinPT beendet wird"
#: Src/wptPreferencesDlg.cpp:139
-msgid "Backup to GPG &home folder"
-msgstr "Backup ins GPG Home-Dir"
+msgid "Backup to &keyring folder"
+msgstr "Backup in &Schlüsselbund-Ordner"
#: Src/wptPreferencesDlg.cpp:140
msgid "Backup to:"
Modified: trunk/Src/ChangeLog
===================================================================
--- trunk/Src/ChangeLog 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/ChangeLog 2006-01-12 16:28:06 UTC (rev 144)
@@ -1,3 +1,25 @@
+2006-01-12 Timo Schulz <ts at g10code.com>
+
+ * wptListView.cpp (listview_set_image_list): Make icons
+ always transparent.
+ * wptImageList.cpp (imagelist_load): New icons.
+ * wptGPGMEData.cpp (gpg_data_putc): New.
+ * wptKeyManagerDlg.cpp (load_toolbar): Include new icons.
+ (keymanager_dlg_proc): Add tooltips.
+ * wptKeyserverDlg.cpp (keyserver_list_build): Use icons.
+ * wptKeyserver.cpp (URL_encode): New.
+ (URL_must_encode): New.
+ (kserver_search_init): Properly encode pattern.
+ (parse_iso_date): New.
+ (keyserver_search): Be more strict to prevent buffer overflows.
+
+2006-01-11 Timo Schulz <ts at g10code.com>
+
+ * wptKeyManagerDlg.cpp (load_toolbar): 2 new icons.
+ (keymanager_dlg_proc): Adjust tooltips.
+ (update_ui_items): Handle new icons.
+ * wptImageList.cpp (imagelist_load): New icons.
+
2006-01-10 Timo Schulz <ts at g10code.com>
* wptMainProc.cpp (winpt_main_proc): Restore iconic
Modified: trunk/Src/WinPT-en.rc
===================================================================
--- trunk/Src/WinPT-en.rc 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/WinPT-en.rc 2006-01-12 16:28:06 UTC (rev 144)
@@ -63,6 +63,11 @@
IDI_KEY_SIGN ICON DISCARDABLE "key_sign.ico"
IDI_SORT_UPARROW ICON DISCARDABLE "sort_uparrow.ico"
IDI_SORT_DOWNARROW ICON DISCARDABLE "sort_downarrow.ico"
+IDI_KEY_FILE_EXPORT ICON DISCARDABLE "key_file_export.ico"
+IDI_KEY_FILE_IMPORT ICON DISCARDABLE "key_file_import.ico"
+IDI_KEY_SEARCH ICON DISCARDABLE "key_search.ico"
+IDI_KEY_NEW ICON DISCARDABLE "key_new.ico"
+IDI_COMPUTER ICON DISCARDABLE "computer.ico"
/////////////////////////////////////////////////////////////////////////////
//
@@ -698,7 +703,7 @@
CONTROL "&Automatic keyring backup when WinPT closes",
IDC_PREFS_AUTOBACKUP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,14,228,195,11
- CONTROL "Backup to GPG &home folder",IDC_PREFS_BAKHOME,"Button",
+ CONTROL "Backup to &keyring folder",IDC_PREFS_BAKHOME,"Button",
BS_AUTORADIOBUTTON,24,240,150,10
CONTROL "Backup to:",IDC_PREFS_BAKUSER,"Button",
BS_AUTORADIOBUTTON,24,252,55,10
Modified: trunk/Src/resource.h
===================================================================
--- trunk/Src/resource.h 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/resource.h 2006-01-12 16:28:06 UTC (rev 144)
@@ -153,6 +153,11 @@
#define IDD_WINPT_KEYEDIT_SHOWPREF 228
#define IDI_PUBKEY 230
#define IDI_KEYPAIR 231
+#define IDI_KEY_FILE_EXPORT 232
+#define IDI_KEY_FILE_IMPORT 233
+#define IDI_KEY_SEARCH 234
+#define IDI_KEY_NEW 235
+#define IDI_COMPUTER 236
#define IDC_CLIPEDIT_SEND 1000
#define IDC_CLIPEDIT_CLEAR 1001
#define IDC_CLIPEDIT_CLIPTEXT 1002
@@ -788,7 +793,7 @@
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 232
+#define _APS_NEXT_RESOURCE_VALUE 237
#define _APS_NEXT_COMMAND_VALUE 40182
#define _APS_NEXT_CONTROL_VALUE 1502
#define _APS_NEXT_SYMED_VALUE 101
Modified: trunk/Src/wptGPGMEData.cpp
===================================================================
--- trunk/Src/wptGPGMEData.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptGPGMEData.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -244,3 +244,15 @@
return pos;
}
+
+
+/* Write a single byte to data object @hd. */
+void
+gpg_data_putc (gpgme_data_t hd, int c)
+{
+ BYTE ch[1];
+
+ ch[0] = (BYTE)c;
+ ch[1] = '\0';
+ gpgme_data_write (hd, ch, 1);
+}
Modified: trunk/Src/wptImagelist.cpp
===================================================================
--- trunk/Src/wptImagelist.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptImagelist.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -1,6 +1,6 @@
/* wptImagelist.cpp - Imagelist helper routines
* Copyright (C) 2003 Andreas Jobs
- * Copyright (C) 2004 Timo Schulz
+ * Copyright (C) 2004, 2006 Timo Schulz
*
* This file is part of WinPT.
*
@@ -18,7 +18,6 @@
* along with WinPT; if not, write to the Free Software Foundation,
* Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
@@ -41,6 +40,9 @@
ImageList_ReplaceIcon (glob_imagelist, -1, \
LoadIcon (glob_hinst, MAKEINTRESOURCE (resid)))
+
+/* Load the image list with the default icons.
+ Return value: 0 on success. */
int
imagelist_load (HWND hwnd)
{
@@ -51,31 +53,36 @@
return -1;
}
+ il_map[IMI_KEY_NEW] = replace_icon (IDI_KEY_NEW);
il_map[IMI_KEY_DELETE] = replace_icon (IDI_KEY_DELETE);
il_map[IMI_KEY_PROPS] = replace_icon (IDI_KEY_PROPS);
il_map[IMI_KEY_SIGN] = replace_icon (IDI_KEY_SIGN);
+ il_map[IMI_KEY_SEARCH] = replace_icon (IDI_KEY_SEARCH);
+ il_map[IMI_KEY_FILE_IMPORT]= replace_icon (IDI_KEY_FILE_IMPORT);
+ il_map[IMI_KEY_FILE_EXPORT]= replace_icon (IDI_KEY_FILE_EXPORT);
il_map[IMI_KEY_IMPORT] = replace_icon (IDI_KEY_IMPORT);
- il_map[IMI_KEY_EXPORT] = replace_icon (IDI_KEY_EXPORT);
+ il_map[IMI_KEY_EXPORT] = replace_icon (IDI_KEY_EXPORT);
il_map[IMI_SORT_UPARROW] = replace_icon (IDI_SORT_UPARROW);
il_map[IMI_SORT_DOWNARROW] = replace_icon (IDI_SORT_DOWNARROW);
- /*il_map[IMI_EXIT] = replace_icon (IDI_EXIT);*/
return 0;
-} /* imagelist_load */
+}
+/* Free image list. */
int
imagelist_destroy (void)
{
ImageList_Destroy (glob_imagelist);
glob_imagelist = NULL;
return 0;
-} /* imagelist_destroy */
+}
+/* Map an index to an icon. */
int
imagelist_getindex (int icon)
{
if ((icon < 0) || (icon >= IMAGELIST_NUMIMAGES))
return -1;
return il_map[icon];
-} /* imagelist_getindex */
+}
Modified: trunk/Src/wptKeyManagerDlg.cpp
===================================================================
--- trunk/Src/wptKeyManagerDlg.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptKeyManagerDlg.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -155,19 +155,24 @@
}
+#define ico2idx(ico) imagelist_getindex((ico))
+
static HWND
load_toolbar (HWND dlg, struct km_info_s *kmi)
{
HWND tbwnd;
TBSAVEPARAMS tbsp;
TBBUTTON tb_buttons[] = {
- /*{imagelist_getindex(IMI_EXIT), ID_KEYMISC_QUIT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0L, 0},*/
- {imagelist_getindex(IMI_KEY_DELETE), ID_KEYMISC_DELETE, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
- {imagelist_getindex(IMI_KEY_PROPS), ID_KEYMISC_PROPS, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
- {imagelist_getindex(IMI_KEY_SIGN), ID_KEYMISC_SIGN, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_NEW), ID_KEYMISC_KEYWIZARD, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L},
+ {ico2idx (IMI_KEY_DELETE), ID_KEYMISC_DELETE, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_PROPS), ID_KEYMISC_PROPS, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_SIGN), ID_KEYMISC_SIGN, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_SEARCH), ID_KEYMISC_SENDRECV, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
{0, 0, 0, TBSTYLE_SEP, {0}, 0L, 0},
- {imagelist_getindex(IMI_KEY_IMPORT), ID_KEYMISC_IMPORT, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
- {imagelist_getindex(IMI_KEY_EXPORT), ID_KEYMISC_EXPORT, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_FILE_IMPORT), ID_KEYMISC_IMPORT, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_FILE_EXPORT), ID_KEYMISC_EXPORT, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_IMPORT), ID_KEYCTX_PASTE, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
+ {ico2idx (IMI_KEY_EXPORT), ID_KEYCTX_COPY, TBSTATE_ENABLED, TBSTYLE_BUTTON, {0}, 0L, 0},
};
tbwnd = CreateWindowEx (0, TOOLBARCLASSNAME, NULL,
@@ -663,6 +668,7 @@
enable_button (tb_hwnd, ID_KEYMISC_PROPS, key_selected);
enable_button (tb_hwnd, ID_KEYMISC_SIGN, key_selected && !key_inv);
enable_button (tb_hwnd, ID_KEYMISC_EXPORT, key_selected);
+ enable_button (tb_hwnd, ID_KEYCTX_COPY, key_selected);
/* Enable / disable menu items */
state = key_selected? MF_ENABLED : MF_DISABLED|MF_GRAYED;
@@ -1138,7 +1144,7 @@
LPTBNOTIFY lpTbNotify;
lpTbNotify = (LPTBNOTIFY)lparam;
if (lpTbNotify->iItem < (sizeof(myb) / sizeof(mybuttons))) {
- lpTbNotify->tbButton.iBitmap = imagelist_getindex(myb[lpTbNotify->iItem].icon);
+ lpTbNotify->tbButton.iBitmap = imagelist_getindex (myb[lpTbNotify->iItem].icon);
lpTbNotify->tbButton.idCommand = myb[lpTbNotify->iItem].command;
lpTbNotify->tbButton.fsState = TBSTATE_ENABLED;
lpTbNotify->tbButton.fsStyle = TBSTYLE_BUTTON;
@@ -1177,6 +1183,14 @@
lpttt->hinst = NULL;
switch (lpttt->hdr.idFrom) {
+ case ID_KEYMISC_KEYWIZARD:
+ lpttt->lpszText = (char*)_("Generate new key pair");
+ break;
+
+ case ID_KEYMISC_SENDRECV:
+ lpttt->lpszText = (char*)_("Search for a specific key");
+ break;
+
case ID_KEYMISC_DELETE:
lpttt->lpszText = (char *)_("Delete key from keyring");
break;
@@ -1189,6 +1203,14 @@
lpttt->lpszText = (char *)_("Sign key");
break;
+ case ID_KEYCTX_COPY:
+ lpttt->lpszText = (char *)_("Copy key to clipboard");
+ break;
+
+ case ID_KEYCTX_PASTE:
+ lpttt->lpszText = (char*)_("Paste key from clipboard");
+ break;
+
case ID_KEYMISC_IMPORT:
lpttt->lpszText = (char *)_("Import key to keyring");
break;
Modified: trunk/Src/wptKeyserver.cpp
===================================================================
--- trunk/Src/wptKeyserver.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptKeyserver.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -667,37 +667,42 @@
}
-/* Perform URL-encoding on the given pubkey blob. */
+static bool
+URL_must_encoded (const char *url)
+{
+ if (strchr (url, '.') || strchr (url, '@') || strchr (url, ' '))
+ return true;
+ return false;
+}
+
+
+/* Perform URL encoding of the given data. */
static char*
-kserver_urlencode (const char *pubkey, size_t octets, size_t *newlen)
+URL_encode (const char *url, size_t ulen, size_t *ret_nlen)
{
- char *p, numbuf[5];
- size_t j;
- size_t i, size;
-
- p = new char [2*octets+1];
- if (!p)
- BUG (0);
+ gpgme_data_t hd;
+ char numbuf[5], *pp, *p;
+ size_t i, n;
- for (size = 0, i = 0; i < octets; i++) {
- if (isalnum (pubkey[i]) || pubkey[i] == '-') {
- p[size] = pubkey[i];
- size++;
- }
- else if (pubkey[i] == ' ') {
- p[size] = '+';
- size++;
- }
+ gpgme_data_new (&hd);
+ for (i=0; i < ulen; i++) {
+ if (isalnum (url[i]) || url[i] == '-')
+ gpg_data_putc (hd, url[i]);
+ else if (url[i] == ' ')
+ gpg_data_putc (hd, '+');
else {
- sprintf (numbuf, "%%%02X", pubkey[i]);
- for (j = 0; j < strlen (numbuf); j++) {
- p[size] = numbuf[j];
- size++;
- }
+ sprintf (numbuf, "%%%02X", url[i]);
+ gpgme_data_write (hd, numbuf, strlen (numbuf));
}
}
- p[size] = '\0';
- *newlen = size;
+ gpg_data_putc (hd, '\0');
+
+ /* Copy memory to avoid that we need to use gpgme_free later. */
+ pp = gpgme_data_release_and_get_mem (hd, &n);
+ p = m_strdup (pp);
+ gpgme_free (pp);
+ if (ret_nlen)
+ *ret_nlen = n;
return p;
}
@@ -720,7 +725,7 @@
request = new char[reqlen];
if (!request)
BUG (0);
- enc_pubkey = kserver_urlencode (pubkey, octets, &enc_octets);
+ enc_pubkey = URL_encode (pubkey, octets, &enc_octets);
if (!enc_pubkey || !enc_octets) {
free_if_alloc (request);
return NULL;
@@ -877,15 +882,17 @@
const char *keyid, int *conn_fd)
{
char *request = NULL;
- int n=0;
+ char *enc_keyid = NULL;
+ int n = 0;
int rc, sock_fd;
-
+
rc = kserver_connect (hostname, port, &sock_fd);
if (rc) {
*conn_fd = 0;
goto leave;
}
-
+
+ enc_keyid = URL_encode (keyid, strlen (keyid), NULL);
n=300;
request = new char[n+1];
if (!request)
@@ -895,16 +902,16 @@
_snprintf (request, n,
"GET http://%s:%d/pks/lookup?op=index&search=%s HTTP/1.0\r\n"
"Proxy-Authorization: Basic %s\r\n\r\n",
- skip_type_prefix (hostname), port, keyid, proxy.base64_user);
+ skip_type_prefix (hostname), port, enc_keyid, proxy.base64_user);
}
else if (proxy.host) {
_snprintf (request, n,
"GET http://%s:%d/pks/lookup?op=index&search=%s HTTP/1.0\r\n\r\n",
- skip_type_prefix (hostname), port, keyid);
+ skip_type_prefix (hostname), port, enc_keyid);
}
else {
_snprintf (request, n,
- "GET /pks/lookup?op=index&search=%s HTTP/1.0\r\n\r\n", keyid);
+ "GET /pks/lookup?op=index&search=%s HTTP/1.0\r\n\r\n", enc_keyid);
}
log_debug ("kserver_search_init:\r\n%s\r\n", request);
@@ -918,6 +925,7 @@
leave:
free_if_alloc (request);
+ free_if_alloc (enc_keyid);
return rc;
}
@@ -942,8 +950,39 @@
}
+/* Convert an iso date @iso_date (YYYY-MM-DD) into the locale
+ representation and store it into @loc_date.
+ Return value: 0 on success. */
+static int
+parse_iso_date (const char *iso_date, char *loc_date, size_t loclen)
+{
+ SYSTEMTIME st;
+ char buf[16] = {0}, *p;
+ int pos=0;
+
+ strncpy (buf, iso_date, sizeof (buf)-1);
+ p = strtok (buf, "-");
+ while (p != NULL) {
+ switch (pos) {
+ case 0: st.wYear = (WORD)atoi (p); pos++; break;
+ case 1: st.wMonth = (WORD)atoi (p); pos++; break;
+ case 2: st.wDay = (WORD)atoi (p); pos++; break;
+ default: break;
+ }
+ p = strtok (NULL, "-");
+ }
+ if (pos != 3)
+ return -1;
+
+ if (!GetDateFormat (LOCALE_USER_DEFAULT, DATE_SHORTDATE, &st,
+ NULL, loc_date, loclen))
+ return -1;
+ return 0;
+}
+
+
int
-kserver_search (int fd, keyserver_key * key)
+kserver_search (int fd, keyserver_key *key)
{
char buf[1024], *p;
int uidlen, nbytes, pos = 0;
@@ -970,6 +1009,7 @@
pos = p - buf + 5;
memcpy (key->date, buf + pos, 10);
key->date[10] = '\0';
+ parse_iso_date (key->date, key->date, sizeof (key->date)-1);
if (revoked) {
strcpy (key->uid, "KEY REVOKED: not checked");
return 0;
@@ -980,6 +1020,19 @@
p++;
p++;
uidlen = strlen (p) - 10;
+ if (!strstr (p, "<") && !strstr (p, ">")) {
+ pos=0;
+ while (p && *p && pos < sizeof (key->uid)-1) {
+ if (*p == '<')
+ break;
+ key->uid[pos++] = *p++;
+ }
+ key->uid[pos] ='\0';
+ return 0;
+ }
+
+ if (uidlen > sizeof (key->uid)-1)
+ uidlen = sizeof (key->uid)-1;
memcpy (key->uid, p, uidlen);
key->uid[uidlen] = '\0';
strcat (key->uid, ">");
@@ -996,7 +1049,7 @@
key->bits = 0;
memset (key, 0, sizeof *key);
return 0;
-} /* kserver_search */
+}
static int
Modified: trunk/Src/wptKeyserverDlg.cpp
===================================================================
--- trunk/Src/wptKeyserverDlg.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptKeyserverDlg.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -385,18 +385,21 @@
{3, 46, (char *)_("Port")},
{0, 0, NULL}
};
+ HICON ico[1];
listview_ctrl_t lv;
char buf[32];
int j;
+ ico[0] = LoadIcon (glob_hinst, (LPCTSTR)IDI_COMPUTER);
listview_new (&lv);
- lv->ctrl = hwnd;
+ lv->ctrl = hwnd;
for (j=0; keyserver[j].fieldname; j++)
- listview_add_column (lv, &keyserver[j]);
+ listview_add_column (lv, &keyserver[j]);
+ listview_set_image_list (lv, ico, 1);
for (j = 0; j<MAX_KEYSERVERS; j++) {
if (!server[j].used)
continue;
- listview_add_item (lv, " ");
+ listview_add_item_image (lv, " ", 0);
listview_add_sub_item (lv, 0, 0, server[j].name);
switch (server[j].proto) {
case KSPROTO_HTTP:
Modified: trunk/Src/wptListView.cpp
===================================================================
--- trunk/Src/wptListView.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptListView.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -396,9 +396,10 @@
HIMAGELIST hil;
DWORD i;
- hil = ImageList_Create (16, 16, ILC_COLOR16, nicons, 1);
+ hil = ImageList_Create (16, 16, ILC_COLOR8|ILC_MASK, nicons, 1);
+ ImageList_SetBkColor (hil, CLR_NONE);
for (i=0; i < nicons; i++)
- ImageList_AddIcon (hil, ico[i]);
- ListView_SetImageList (ctx->ctrl, hil, LVSIL_SMALL);
+ ImageList_AddIcon (hil, ico[i]);
+ ListView_SetImageList (ctx->ctrl, hil, LVSIL_SMALL);
}
Modified: trunk/Src/wptPreferencesDlg.cpp
===================================================================
--- trunk/Src/wptPreferencesDlg.cpp 2006-01-12 16:27:34 UTC (rev 143)
+++ trunk/Src/wptPreferencesDlg.cpp 2006-01-12 16:28:06 UTC (rev 144)
@@ -136,7 +136,7 @@
SetDlgItemText (dlg, IDC_PREFS_DISABLE_HOTKEYS, _("&Disable hotkeys (Not recommended!)"));
SetDlgItemText (dlg, IDC_PREFS_TRUST, _("Skip key validation and assume that keys are always fully trusted"));
SetDlgItemText (dlg, IDC_PREFS_AUTOBACKUP, _("&Automatic keyring backup when WinPT closes"));
- SetDlgItemText (dlg, IDC_PREFS_BAKHOME, _("Backup to GPG &home folder"));
+ SetDlgItemText (dlg, IDC_PREFS_BAKHOME, _("Backup to &keyring folder"));
SetDlgItemText (dlg, IDC_PREFS_BAKUSER, _("Backup to:"));
SetDlgItemText (dlg, IDC_PREFS_KEYLISTINF, _("Select &key list mode"));
SetDlgItemText (dlg, IDC_PREFS_WIPEINF, _("Select &wipe mode"));
More information about the Winpt-commits
mailing list