Convert uses of XKeycodeToKeysym (deprecated) to XkbKeycodeToKeysym
[oweals/cde.git] / cde / programs / dtmail / dtmail / Undelete.hh
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these libraries and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /*
24  *+SNOTICE
25  *
26  *      $TOG: Undelete.hh /main/6 1998/09/02 15:58:26 mgreess $
27  *
28  *      RESTRICTED CONFIDENTIAL INFORMATION:
29  *
30  *      The information in this document is subject to special
31  *      restrictions in a confidential disclosure agreement between
32  *      HP, IBM, Sun, USL, SCO and Univel.  Do not distribute this
33  *      document outside HP, IBM, Sun, USL, SCO, or Univel without
34  *      Sun's specific written approval.  This document and all copies
35  *      and derivative works thereof must be returned or destroyed at
36  *      Sun's request.
37  *
38  *      Copyright 1993 Sun Microsystems, Inc.  All rights reserved.
39  *
40  *+ENOTICE
41  */
42
43 #ifndef _UNDELETE_HH
44 #define _UNDELETE_HH
45
46 #include "DialogShell.h"
47 #include "MsgScrollingList.hh"
48 #include "CmdList.h"
49
50 /* UNDEL_*      msgid 600 - 699
51  */
52 #define UNDEL_SENDER  600
53 #define UNDEL_SUB     601
54 #define UNDEL_DATE    602
55 #define UNDEL_SIZE    603
56 #define UNDEL_UNDEL   604
57 #define UNDEL_CLOSE   605
58 #define UNDEL_EXIT    606
59 #define UNDEL_OKBUT   607
60 #define UNDEL_DLGTTL  608
61
62 class RoamMenuWindow;
63
64 class UndelMsgScrollingList : public MsgScrollingList {
65   public:
66     UndelMsgScrollingList ( RoamMenuWindow *, Widget, char * );
67     ~UndelMsgScrollingList ();
68     void extended_selection(DtMailEnv &, int);
69     void insertMsg(DtMailMessageHandle);
70     void insertMsg(DtMailEnv &, MsgStruct *);
71     void loadMsgs(DtMailEnv &, MsgHndArray *, int);
72
73     virtual void deleteSelected(Boolean silent = TRUE);
74 };
75
76
77 class UndelFromListDialog : public DialogShell {
78   public:
79     UndelFromListDialog (char *, RoamMenuWindow *);
80     ~UndelFromListDialog();
81     Widget  createWorkArea(Widget);
82     virtual void initialize();
83     virtual void quit();
84
85
86         // Accessors
87         // Mutators
88     void popped_down();
89     void popped_up();
90     void insertMsg(DtMailEnv &, MsgStruct *);
91     void loadMsgs(DtMailEnv &, MsgHndArray *, int);
92
93     void undelSelected();
94     void undelLast();
95     UndelMsgScrollingList *undelList() { return _list; }
96     void addToRowOfButtons();
97
98     void expunge(void);
99
100     void replaceItems(XmString * items, int num_items) {
101         if (_list) {
102             XmListReplaceItemsPos(_list->get_scrolling_list(), items, num_items, 1);
103         }
104     }
105
106   protected:
107     Cmd *_undelete_button;
108     Cmd *_close_button;
109   private:
110     UndelMsgScrollingList *_list;
111     Widget *_undel_list_button;
112     Widget rowOfLabels, rowOfButtons;
113     Widget rowOfMessageStatus;
114     RoamMenuWindow *my_owner;
115 };
116
117
118
119 #endif