/[winpt]/trunk/Src/wptCardManager.cpp
ViewVC logotype

Diff of /trunk/Src/wptCardManager.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 28 by twoaday, Thu Oct 20 12:35:59 2005 UTC revision 278 by twoaday, Mon Jan 15 22:02:04 2007 UTC
# Line 1  Line 1 
1  /* wptCardManager.cpp  /* wptCardManager.cpp
2   *      Copyright (C) 2003, 2005 Timo Schulz   *      Copyright (C) 2003, 2005 Timo Schulz
3   *      Copyright (C) 2005 g10 Code GmbH   *      Copyright (C) 2005 g10 Code GmbH
4   *   *
5   * This file is part of WinPT.   * This file is part of WinPT.
6   *   *
7   * WinPT is free software; you can redistribute it and/or modify   * WinPT is free software; you can redistribute it and/or modify
8   * it under the terms of the GNU General Public License as published by   * it under the terms of the GNU General Public License as published by
9   * the Free Software Foundation; either version 2 of the License, or   * the Free Software Foundation; either version 2 of the License, or
10   * (at your option) any later version.   * (at your option) any later version.
11   *   *
12   * WinPT is distributed in the hope that it will be useful,   * WinPT is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15   * GNU General Public License for more details.   * GNU General Public License for more details.
16   *   */
17   * You should have received a copy of the GNU General Public License  #ifdef HAVE_CONFIG_H
18   * along with WinPT; if not, write to the Free Software Foundation,  #include <config.h>
19   * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA  #endif
20   */  
21    #include <stdio.h>
22  #include <stdio.h>  #include <windows.h>
23  #include <windows.h>  
24    #include "wptTypes.h"
25  #include "wptTypes.h"  #include "wptW32API.h"
26  #include "wptW32API.h"  #include "wptVersion.h"
27  #include "wptVersion.h"  #include "wptNLS.h"
28  #include "wptNLS.h"  #include "wptGPG.h"
29  #include "wptGPG.h"  #include "wptCard.h"
30  #include "wptCard.h"  #include "resource.h"
31  #include "../resource.h"  
32    
33    /* Dialog box procedure for the card callback. */
34  /* Dialog box procedure for the card callback. */  static BOOL CALLBACK
35  static BOOL CALLBACK  card_cb_dlg_proc (HWND dlg, UINT msg, WPARAM wparam, LPARAM lparam)
36  card_cb_dlg_proc (HWND dlg, UINT msg, WPARAM wparam, LPARAM lparam)  {
37  {      static card_cb_s * ctx;
38      static card_cb_s * ctx;  
39        switch( msg ) {
40      switch( msg ) {      case WM_INITDIALOG:
41      case WM_INITDIALOG:          ctx = (struct card_cb_s *)lparam;
42          ctx = (struct card_cb_s *)lparam;          if (!ctx)
43          if( !ctx )              BUG (NULL);
44              BUG( NULL );          switch (ctx->code) {
45          switch (ctx->code) {          case CARD_CTL_INSERT:
46          case CARD_CTL_INSERT:              ShowWindow (GetDlgItem (dlg, IDC_CCTRL_VAL), FALSE);
47              ShowWindow (GetDlgItem (dlg, IDC_CCTRL_VAL), FALSE);              SetDlgItemText (dlg, IDC_CCTRL_MSG,
48              SetDlgItemText (dlg, IDC_CCTRL_MSG,                              _("Please insert the OpenPGP smart card\n"
49                              _("Please insert the OpenPGP smart card\n"                                "Press OK to continue or Cancel"));
50                                "Press OK to continue or Cancel"));              break;
51              break;          }
52          }          center_window (dlg, NULL);
53          center_window (dlg, NULL);          SetForegroundWindow (dlg);
54          SetForegroundWindow (dlg);          break;
55          break;  
56        case WM_COMMAND:
57      case WM_COMMAND:          switch (LOWORD (wparam)) {
58          switch (LOWORD (wparam)) {          case IDOK:
59          case IDOK:              strcpy (ctx->val, "\r\n");
60              strcpy (ctx->val, "\r\n");              EndDialog( dlg, TRUE );
61              EndDialog( dlg, TRUE );              break;
62              break;  
63            case IDCANCEL:
64          case IDCANCEL:              strcpy (ctx->val, "c");
65              strcpy (ctx->val, "c");              ctx->cancel = 1;
66              ctx->cancel = 1;              EndDialog (dlg, FALSE);
67              EndDialog (dlg, FALSE);              break;
68              break;          }
69          }          break;
70          break;      }
71      }  
72        return FALSE;
73      return FALSE;  }
74  }  
75    
76    const char*
77  const char*  card_callback (int code, void *opaque)
78  card_callback (int code, void *opaque)  {
79  {      struct card_cb_s *ctx = (struct card_cb_s *)opaque;
80      struct card_cb_s *ctx = (struct card_cb_s *)opaque;  
81        if (!ctx)
82      if (!ctx)          return NULL;
83          return NULL;  
84        if (!ctx->init) {
85      if (!ctx->init) {          memset (ctx->val, 0, sizeof (ctx->val));
86          memset (ctx->val, 0, sizeof (ctx->val));          ctx->code = code;
87          ctx->code = code;          DialogBoxParam (glob_hinst, (LPCTSTR)IDD_WINPT_CARD_CTRL, glob_hwnd,
88          DialogBoxParam (glob_hinst, (LPCTSTR)IDD_WINPT_CARD_CTRL, glob_hwnd,                          card_cb_dlg_proc, (LPARAM)ctx);
89                          card_cb_dlg_proc, (LPARAM)ctx);          ctx->init = 0;
90          ctx->init = 0;      }
91      }  
92        return ctx->val;
93      return ctx->val;  }
 }  

Legend:
Removed from v.28  
changed lines
  Added in v.278

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26