Add GNU LGPL headers to all .c .C and .h files
[oweals/cde.git] / cde / programs / dtappbuilder / src / ab / attch_ed.h
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 librararies 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 /*
25  *      $XConsortium: attch_ed.h /main/3 1995/11/06 17:19:33 rswiston $
26  *
27  *      @(#)attch_ed.h  1.4 08 Oct 1994 
28  *
29  *      RESTRICTED CONFIDENTIAL INFORMATION:
30  *      
31  *      The information in this document is subject to special
32  *      restrictions in a confidential disclosure agreement between
33  *      HP, IBM, Sun, USL, SCO and Univel.  Do not distribute this
34  *      document outside HP, IBM, Sun, USL, SCO, or Univel without
35  *      Sun's specific written approval.  This document and all copies
36  *      and derivative works thereof must be returned or destroyed at
37  *      Sun's request.
38  *
39  *      Copyright 1993 Sun Microsystems, Inc.  All rights reserved.
40  *
41  */
42
43 /*
44  * attch_ed.h
45  *
46  * Functions for manipulating the Attachments Editor
47  */
48
49 #ifndef _attch_ed_h
50 #define _attch_ed_h
51
52 typedef enum
53 {
54     ATTCH_ED_PARENT = 0,
55     ATTCH_ED_OPPOSITE_PARENT,
56     ATTCH_ED_SIBLING,
57     ATTCH_ED_OPPOSITE_SIBLING,
58     ATTCH_ED_GRIDLINE,
59     ATTCH_ED_CENTER_GRIDLINE,
60     ATTCH_ED_NONE
61 } ATTCH_ED_ATTACH_TYPE;
62
63 typedef enum
64 {
65     ATTCH_ED_WRN_LOAD = 0,
66     ATTCH_ED_WRN_CHANGE_OBJTYPE,
67     ATTCH_ED_WRN_CLOSE
68 } ATTCH_ED_WRN_TYPE;
69
70 #define attch_ed_need_obj_menu(attach_type)     \
71         ((attach_type == ATTCH_ED_SIBLING) || (attach_type == ATTCH_ED_OPPOSITE_SIBLING))
72
73 /*
74  * Attachment Editor Settings
75  */
76 typedef struct  ATTACHMENT_EDITOR_SETTINGS
77 {
78     Widget                      prop_sheet;
79     PropOptionsSettingRec       top_attach_type;
80     PropFieldSettingRec         top_attach_offset;
81     PropFieldSettingRec         top_attach_position;
82     PropOptionsSettingRec       top_attach_obj;
83     PropOptionsSettingRec       bottom_attach_type;
84     PropFieldSettingRec         bottom_attach_offset;
85     PropFieldSettingRec         bottom_attach_position;
86     PropOptionsSettingRec       bottom_attach_obj;
87     PropOptionsSettingRec       left_attach_type;
88     PropFieldSettingRec         left_attach_offset;
89     PropFieldSettingRec         left_attach_position;
90     PropOptionsSettingRec       left_attach_obj;
91     PropOptionsSettingRec       right_attach_type;
92     PropFieldSettingRec         right_attach_offset;
93     PropFieldSettingRec         right_attach_position;
94     PropOptionsSettingRec       right_attach_obj;
95     ABObj                       cur_object;
96 } AttchEditorSettingsRec, *AttchEditorSettings;
97
98 void            attch_ed_init(
99                 );
100
101 void            attch_ed_show_dialog(
102                     ABObj       cur_obj
103                 );
104
105 BOOL            attch_ed_can_edit_attachments(
106                     ABObj       obj
107                 );
108
109 #endif /* _attch_ed_h */