Minor GUI fixes.
authorWerner Koch <wk@gnupg.org>
Wed, 26 Nov 2008 14:41:24 +0000 (14:41 +0000)
committerWerner Koch <wk@gnupg.org>
Wed, 26 Nov 2008 14:41:24 +0000 (14:41 +0000)
configure.ac
po/de.po
src/ChangeLog
src/common.h
src/config-dialog.c
src/dialogs.h
src/dialogs.rc
src/ext-commands.cpp
src/olflange-dlgs.cpp
src/olflange.cpp

index ee472eb..2ad8c2c 100644 (file)
@@ -16,8 +16,8 @@ min_automake_version="1.9.4"
 # Remember to change the version number immediately *after* a release.
 # Set my_issvn to "yes" for non-released code.  Remember to run an
 # "svn up" and "autogen.sh" right before creating a distribution.
-m4_define([my_version], [0.10.17])
-m4_define([my_issvn], [no])
+m4_define([my_version], [0.10.18])
+m4_define([my_issvn], [yes])
 
 m4_define([svn_revision], m4_esyscmd([echo -n $( (svn info 2>/dev/null \
             || echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')]))
index 85bc6ad..82f4a53 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: GpgOL 0.10.0\n"
 "Report-Msgid-Bugs-To: bug-gpgol@g10code.com\n"
 "POT-Creation-Date: 2008-11-14 08:48+0100\n"
-"PO-Revision-Date: 2008-11-11 18:15+0100\n"
+"PO-Revision-Date: 2008-11-26 14:19+0100\n"
 "Last-Translator: Werner Koch <wk@gnupg.org>\n"
 "Language-Team: de\n"
 "MIME-Version: 1.0\n"
@@ -581,8 +581,9 @@ msgstr ""
 "Nachrichten mittels der Internet-Standards PGP/MIME oder S/MIME\n"
 "zu verschl├╝sseln und digital zu signieren.  Im Hintergrund wird\n"
 "dazu die GnuPG Software (<http://www.gnupg.org/>) benutzt.\n"
-"Aktuelle Informationen zu GpgOL erhalten Sie durch eine Mausklick\n"
-"auf das Firmenlogo.\n"
+"Aktuelle Informationen zu GpgOL erhalten Sie durch eine Anklicken\n"
+"des Firmennames auf der Einstellungsseite oder auf der Webseite\n"
+"<http://www.gpg4win.de/>.\n"
 "\n"
 "GpgOL ist Freie Software.  Sie k├Ânnen es unter den Bedingungen\n"
 "der GNU Lesser General Public License, wie von der Free Software\n"
index aea998c..1b4f942 100644 (file)
@@ -1,3 +1,17 @@
+2008-11-26  Werner Koch  <wk@g10code.com>
+
+       * config-dialog.c (start_key_manager): Remove.
+       * ext-commands.cpp (DoCommand): Do not use start_key_manager as a
+       fallback.
+
+       * olflange.cpp (GpgolExt): Show new version warning only once.
+
+       * dialogs.rc: Do not display the logo.  Move version info around.
+       * dialogs.h (IDC_G10CODE_STRING): New.
+       * olflange-dlgs.cpp (GPGOptionsDlgProc): Active product page by a
+       click on IDC_G10CODE_STRING.
+       (set_labels): Remove the build date from the Version field.
+
 2008-11-14  Werner Koch  <wk@g10code.com>
 
        * dialogs.rc: Remove preview-decrypt check button.
index c05a58d..fbcc53b 100644 (file)
@@ -229,7 +229,6 @@ const char *get_pubkey_algo_str (gpgme_pubkey_algo_t id);
 
 /*-- config-dialog.c --*/
 void config_dialog_box (HWND parent);
-int start_key_manager (void);
 int store_extension_value (const char *key, const char *val);
 int load_extension_value (const char *key, char **val);
 
index f13991e..5814d6f 100644 (file)
@@ -192,83 +192,6 @@ config_dialog_box (HWND parent)
 }
 
 
-/* Start the key manager specified by the registry entry 'keyManager'. */
-int
-start_key_manager (void)
-{
-  PROCESS_INFORMATION pi;
-  STARTUPINFO si;
-  char *p;
-  char *keyman = NULL;
-  
-  if (load_config_value (NULL, REGPATH, "keyManager", &keyman))
-    {
-      /* In case we did not found a registry entry we try to locate
-         the keymanager in the same directory as the gpgme backend. */
-      gpgme_engine_info_t info;
-
-      if (gpgme_get_engine_info (&info))
-        {
-          log_debug ("%s:%s: get_engine_info failed\n", SRCNAME, __func__);
-          return -1;
-        }
-
-      while (info && info->protocol != GPGME_PROTOCOL_OpenPGP)
-        info = info->next;
-      if (info && info->file_name && *info->file_name)
-        {
-          keyman = xmalloc (strlen (info->file_name) + 50);
-          strcpy (keyman, info->file_name);
-          for (p=keyman; *p; p++)
-            if (*p == '/')
-              *p = '\\';
-          p = strrchr (keyman, '\\');
-          if (!p)
-            {
-              xfree (keyman);
-              return -1;
-            }
-          strcpy (p+1, "winpt.exe");
-          if (!access (keyman, F_OK))
-            strcat (keyman, " --keymanager");
-          else
-            {
-              log_debug ("%s:%s: accessing `%s' failed\n",
-                         SRCNAME, __func__, keyman );
-              strcpy (p+1, "gpa.exe");
-              if (!access (keyman, F_OK))
-                strcat (keyman, " --keyring");
-              else
-                {
-                  log_debug ("%s:%s: accessing `%s' failed\n",
-                             SRCNAME, __func__, keyman );
-                  xfree (keyman);
-                  return -1;
-                }
-            }
-        }
-    }
-  
-  /* Create startup info for the keymanager process. */
-  memset (&si, 0, sizeof (si));
-  si.cb = sizeof (STARTUPINFO);
-  si.dwFlags = STARTF_USESHOWWINDOW;
-  si.wShowWindow = SW_SHOW;
-  
-  log_debug ("%s:%s: running `%s' ...\n",
-             SRCNAME, __func__, keyman );
-  if (CreateProcess (NULL, keyman,
-                     NULL, NULL, TRUE, CREATE_DEFAULT_ERROR_MODE,
-                     NULL, NULL, &si, &pi) == TRUE)
-    {
-      CloseHandle (pi.hProcess);
-      CloseHandle (pi.hThread);
-    }
-  
-  xfree (keyman);
-  return 0;
-}
-
 
 /* Store a key in the registry with the key given by @key and the 
    value @value. */
index 3188dc5..04c67fb 100644 (file)
@@ -41,6 +41,7 @@
 #define IDC_G_RECV                      4025
 #define IDC_BODY_AS_ATTACHMENT          4026
 #define IDC_GPG_CONF                    4027
+#define IDC_G10CODE_STRING              4028
 
 
 /* Ids for the extended options dialog.  */
index 6b00caf..e917d02 100644 (file)
@@ -88,15 +88,16 @@ BEGIN
                     "Button", BS_AUTOCHECKBOX | WS_TABSTOP,
                     24, 125, 215, 10
  
-    /* Stuff below the group boxes.  */
-    LTEXT           "GpgOL by g10 Code GmbH", IDC_STATIC
-                      8, 197, 100, 8
+    /* Stuff at the lower left corner.  */
+    LTEXT           "GpgOL by g10 Code GmbH", IDC_G10CODE_STRING
+                      8, 229, 100, 8
     LTEXT           "Version x ", IDC_VERSION_INFO,
-                    130, 197, 129, 9
+                      8, 240, 100, 9
 
-    CONTROL         IDB_BANNER, IDC_BITMAP,
-                    "Static", SS_BITMAP | SS_REALSIZEIMAGE,
-                      8, 212, 150, 64
+  /* No more logo due to problems with the background colour.  */
+/*     CONTROL         IDB_BANNER, IDC_BITMAP, */
+/*                     "Static", SS_BITMAP | SS_REALSIZEIMAGE, */
+/*                       8, 212, 150, 64 */
 
     PUSHBUTTON      "advanced", IDC_GPG_OPTIONS,
                     130, 240, 50, 14
index c21fb28..117f89a 100644 (file)
@@ -769,9 +769,8 @@ GpgolExtCommands::DoCommand (LPEXCHEXTCALLBACK eecb, UINT nCommandID)
     {
       log_debug ("%s:%s: command KeyManager called\n", SRCNAME, __func__);
       if (engine_start_keymanager (hwnd))
-        if (start_key_manager ())
-          MessageBox (NULL, _("Could not start certificate manager"),
-                      _("GpgOL"), MB_ICONERROR|MB_OK);
+        MessageBox (NULL, _("Could not start certificate manager"),
+                    _("GpgOL"), MB_ICONERROR|MB_OK);
     }
   else if (nCommandID == m_nCmdRevertFolder
            && m_lContext == EECONTEXT_VIEWER)
@@ -1039,6 +1038,8 @@ GpgolExtCommands::QueryButtonInfo (ULONG toolbarid, UINT buttonid,
                                    ULONG flags)          
 {
   toolbar_info_t tb_info;
+  size_t n;
+  
 
   (void)description_size;
   (void)flags;
@@ -1066,7 +1067,10 @@ GpgolExtCommands::QueryButtonInfo (ULONG toolbarid, UINT buttonid,
   pTBB->dwData = 0;
   pTBB->iString = -1;
   
-  lstrcpyn (description, tb_info->desc, strlen (tb_info->desc));
+  n = strlen (tb_info->desc);
+  if (n > description_size)
+    n = description_size;
+  lstrcpyn (description, tb_info->desc, n);
 
   if (tb_info->cmd_id == m_nCmdEncrypt)
     {
index 69c148b..43b9c8e 100644 (file)
@@ -57,7 +57,7 @@ set_labels (HWND dlg)
 
     { IDC_GPG_OPTIONS,      "Debug..."},
     { IDC_GPG_CONF,         N_("Crypto Engine")},
-    { IDC_VERSION_INFO,  "Version "VERSION "  ("__DATE__")"},
+    { IDC_VERSION_INFO,  "Version "VERSION},
     { 0, NULL}
   };
   int i;
@@ -102,7 +102,7 @@ GPGOptionsDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
         HWND bitmap;
         
         GetWindowRect (hDlg, &rect_dlg);
-        bitmap = GetDlgItem (hDlg, IDC_BITMAP);
+        bitmap = GetDlgItem (hDlg, IDC_G10CODE_STRING);
         if (bitmap)
           GetWindowRect (bitmap, &rect_banner);
 
@@ -237,8 +237,9 @@ GPGOptionsDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
           opt.body_as_attachment = !!SendDlgItemMessage
             (hDlg, IDC_BODY_AS_ATTACHMENT, BM_GETCHECK, 0, 0L);
           
-          /* Now that the user has confirmed the options dialog, we
-             mark the Registry with revision of this build.  */
+          /* Make sure that no new-version-installed warning will pop
+             up on the next start.  Not really needed as the warning
+             dialog set this too, but it doesn't harm to do it again. */
           opt.svn_revision = SVN_REVISION;
           
           write_options ();
index 00aec6a..711f3b7 100644 (file)
@@ -431,7 +431,8 @@ GpgolExt::GpgolExt (void)
       log_debug ("%s:%s: first time initialization done\n",
                  SRCNAME, __func__);
       if ( SVN_REVISION > opt.svn_revision )
-        MessageBox (NULL,
+        {
+          MessageBox (NULL,
                     _("You have installed a new version of GpgOL.\n"
                       "\n"
                       "Please open the option dialog and confirm that"
@@ -439,6 +440,10 @@ GpgolExt::GpgolExt (void)
                       " dialog can be found in the main menu at:"
                       " Extras->Options->GpgOL.\n"),
                       "GpgOL", MB_ICONINFORMATION|MB_OK);
+          /* Show this warning only once.  */
+          opt.svn_revision = SVN_REVISION;
+          write_options ();
+        }
       if ( SVN_REVISION > opt.forms_revision )
         install_forms ();
     }