/[gpgoe]/trunk/src/OEDlgViewer.c
ViewVC logotype

Diff of /trunk/src/OEDlgViewer.c

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

revision 11 by twoaday, Mon Apr 3 17:10:15 2006 UTC revision 12 by twoaday, Fri Apr 7 10:46:41 2006 UTC
# Line 45  get_item_text (HWND dlg, int id) Line 45  get_item_text (HWND dlg, int id)
45  }  }
46    
47    
48    /* Prepend '> ' to line line in the buffer @inp
49       and store the result in @r_outp. */
50    static void
51    quote_msg_text (const char *inp, char **r_outp)
52    {
53        size_t i, n=0;
54        char *p;
55        char *outp;
56    
57        for (i=0; i < strlen (inp); i++) {
58            if (inp[i] == '\r')
59                n += 4;
60        }
61        outp = xcalloc (1, strlen (inp) + 1 + n + 1);
62        p = strtok ((char *)inp, "\r");
63        while (p != NULL) {
64            if (*p == '\n')
65                p++;
66            strcat (outp, "> ");
67            strcat (outp, p);
68            strcat (outp, "\r\n");
69            p = strtok (NULL, "\r");
70        }
71        *r_outp = outp;
72    }
73    
74    
75  /* Text viewer dialog box procedure. */  /* Text viewer dialog box procedure. */
76  BOOL CALLBACK  BOOL CALLBACK
77  viewer_dlg_proc (HWND dlg, UINT msg, WPARAM wparam, LPARAM lparam)  viewer_dlg_proc (HWND dlg, UINT msg, WPARAM wparam, LPARAM lparam)
78  {      {    
79      static viewer_ctx_t viewer;      static viewer_ctx_t viewer;
80      char *p;      char *p, *out;
81    
82      switch (msg)  {      switch (msg)  {
83      case WM_INITDIALOG:      case WM_INITDIALOG:
84          viewer = (viewer_ctx_t)lparam;          viewer = (viewer_ctx_t)lparam;
85          assert (viewer);          assert (viewer);
86            SetDlgItemText (dlg, IDC_VIEWER_COPY, _("&Copy"));
87            SetDlgItemText (dlg, IDC_VIEWER_QUOTE, _("&Quote"));
88            SetDlgItemText (dlg, IDOK, _("&OK"));
89          SetWindowText (dlg, _("Message Viewer"));          SetWindowText (dlg, _("Message Viewer"));
90          SetDlgItemText (dlg, IDC_VIEWER_TEXT2, viewer->msg);          SetDlgItemText (dlg, IDC_VIEWER_TEXT2, viewer->msg);
91          SetForegroundWindow (dlg);          SetForegroundWindow (dlg);
# Line 75  viewer_dlg_proc (HWND dlg, UINT msg, WPA Line 105  viewer_dlg_proc (HWND dlg, UINT msg, WPA
105    
106          case IDC_VIEWER_QUOTE:          case IDC_VIEWER_QUOTE:
107              p = get_item_text (dlg, IDC_VIEWER_TEXT2);              p = get_item_text (dlg, IDC_VIEWER_TEXT2);
108                if (!p)
109                    return TRUE;
110                quote_msg_text (p, &out);
111                SetDlgItemText (dlg, IDC_VIEWER_TEXT2, out);
112              free_if_alloc (p);              free_if_alloc (p);
113                free_if_alloc (out);
114              return TRUE;              return TRUE;
115    
116          case IDC_VIEWER_COPY:          case IDC_VIEWER_COPY:

Legend:
Removed from v.11  
changed lines
  Added in v.12

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26