Don't try to define abs() on linux, stdlib will handle it.
[oweals/cde.git] / cde / programs / types / dtmail.dt
1
2         ###############################################################################
3 #
4 #     dtmail.dt
5 #
6 #     Action and DataType definitions for the Common Desktop Environment
7 #     (CDE) Mailer Component.
8 #
9 #    (c) Copyright 1993, 1994, 1995 Hewlett-Packard Company
10 #    (c) Copyright 1993, 1994, 1995 International Business Machines Corp.
11 #    (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc.
12 #    (c) Copyright 1993, 1994, 1995 Novell, Inc.
13 #
14 #    $TOG: dtmail.dt /main/11 1998/11/02 10:53:40 mgreess $
15 #    @(#)dtmail.dt      1.32 10 Aug 1994
16 ###############################################################################
17 set DtDbVersion=1.0
18
19 ###############################################################################
20 #
21 %|nls-10-#\# WARNING:...#|
22 #
23 ###############################################################################
24
25 ###################################################################
26 #
27 %|nls-11-#\# Data Attributes#|
28 #
29 ###################################################################
30 DATA_ATTRIBUTES DTMAIL_FILE
31 {
32         ACTIONS         Open,Compose
33         ICON            DtMail
34         IS_TEXT         true
35         MOVE_TO_ACTION  MailAppendRm
36         COPY_TO_ACTION  MailAppend
37         MEDIA           RFC_822_MESSAGE
38         MIME_TYPE       message/rfc822
39         SUNV3_TYPE      mail-message
40         DESCRIPTION     %|nls-17001-#A DTMAIL_FILE ...#|
41         TYPE_LABEL      %|nls-31104-#DTMAIL_FILE#|
42 }
43 DATA_CRITERIA DTMAIL_FILE1
44 {
45         DATA_ATTRIBUTES_NAME    DTMAIL_FILE
46         CONTENT         64 string CDE-Mail-Application-MailBox-File
47         MODE            f&!x
48 }
49 DATA_CRITERIA DTMAIL_FILE2
50 {
51         DATA_ATTRIBUTES_NAME    DTMAIL_FILE
52         CONTENT         0 string From 
53         MODE            f&!x
54 }
55 ACTION MailAppend
56 {
57         TYPE            COMMAND
58         ARG_COUNT       2
59         WINDOW_TYPE     NO_STDIO
60         EXEC_STRING     sh -c ' \
61          if [ "%(File)Arg_2%" !=  "%(File)Arg_1%" ];\
62           then \
63              # check if the source is DTMAIL_FILE ;\
64              # we only accept DTMAIL_FILE as drag source ;\
65              IS_DTMAIL=`/usr/dt/bin/dttypes -type "%(File)Arg_2%"|grep DTMAIL_FILE`;\
66              if  [ -n "\$IS_DTMAIL" ]; then \
67                ERROR=`cat "%(File)Arg_2%" >> "%(File)Arg_1%" \
68                    2>/tmp/dtmail.\$\$ || cat /tmp/dtmail.\$\$`; \
69                [ -f /tmp/dtmail.\$\$ ] && /bin/rm -f /tmp/dtmail.\$\$; \
70                if [ -n "\$ERROR" ]; then \
71                  /usr/dt/bin/dterror.ds \
72                   "\$ERROR" "%|nls-13011-#Information#|" \
73                   "%|nls-6-#OK#|"; \
74                fi; \
75             else  \
76              /usr/dt/bin/dterror.ds \
77              "%|nls-2035-#NO Action#|" \
78              "%|nls-13011-#Information#|" \
79                  "%|nls-6-#OK#|" ; \
80            fi; \
81          else \
82              /usr/dt/bin/dterror.ds \
83              "%|nls-2035-#NO Action#|" \
84              "%|nls-13011-#Information#|" \
85                  "%|nls-6-#OK#|"; \
86        fi'
87 }
88 ACTION MailAppendRm
89 {
90         TYPE            COMMAND
91         WINDOW_TYPE     NO_STDIO
92         EXEC_STRING     sh -c ' \
93         TYPE=`/usr/dt/bin/dttypes -type "%(File)Arg_2%" | \
94         grep \" is of type \" | sed /".* is of type "/s///`; \
95         if [ \$TYPE = "DTMAIL_FILE" ]; then \
96         cat "%(File)Arg_2%" >> "%(File)Arg_1%"; \
97         rm "%(File)Arg_2%" ; \
98         else \
99         /usr/dt/bin/dterror.ds \
100         "%|nls-2035-#The datatype#|" \
101         "%|nls-13011-#Error#|" \
102         "%|nls-6-#OK#|" ;  \
103         fi'
104 }
105
106
107 #
108 # The following action does not work.  When dtmail exits, an error
109 # dialog is posted.
110 #
111 ACTION Compose
112 {
113     LABEL           %|nls-17002-Compose|
114     ARG_TYPE        *
115     ARG_COUNT       0
116     TYPE            COMMAND
117     WINDOW_TYPE     NO_STDIO
118     EXEC_STRING     /usr/dt/bin/dtmail -c
119 }
120 ACTION Compose
121 {
122     LABEL           %|nls-17002-Compose|
123     ARG_TYPE        *
124     ARG_COUNT       >0
125     TYPE            COMMAND
126     WINDOW_TYPE     NO_STDIO
127     EXEC_STRING     /usr/dt/bin/dtmail -a %Args%
128 }
129
130 ACTION ComposeOrOpen
131 {
132         LABEL           %|nls-1-Open|
133         ARG_TYPE        DTMAIL_FILE
134         ARG_COUNT       >0
135         TYPE            MAP
136         MAP_ACTION      Open
137 }
138 ACTION ComposeOrOpen
139 {
140         LABEL           %|nls-17002-Compose|
141         ARG_TYPE        *
142         ARG_COUNT       >0
143         TYPE            MAP
144         MAP_ACTION      Compose
145 }
146
147 ACTION Open
148 {
149         LABEL                   %|nls-1-Open|
150         ARG_TYPE                DTMAIL_FILE
151         ARG_COUNT               >0
152         TYPE                    TT_MSG
153         TT_CLASS                TT_REQUEST
154         TT_SCOPE                TT_SESSION
155         TT_OPERATION            Display
156         TT_FILE                 %Arg_1%
157         TT_ARG0_MODE            TT_IN
158         TT_ARG0_VTYPE           %Arg_1%
159         TT_ARG0_REP_TYPE        TT_REP_STRING
160 }
161
162 ACTION Print
163 {
164         LABEL                   %|nls-2-Print|
165         ARG_TYPE                DTMAIL_FILE
166         ARG_COUNT               >0
167         TYPE                    TT_MSG
168         TT_CLASS                TT_REQUEST
169         TT_SCOPE                TT_SESSION
170         TT_OPERATION            Print
171         TT_FILE                 %Arg_1%
172         TT_ARG0_MODE            TT_IN
173         TT_ARG0_VTYPE           %Arg_1%
174         TT_ARG0_REP_TYPE        TT_REP_STRING
175 }
176 ########################### EOF ##############################################