revert between 56095 -> 55830 in arch
[AROS.git] / workbench / libs / reqtools / rtchangereqattra.c
blob1a3b9dc93d0c918dbdf83750d70742bbcba7f75c
1 /*
2 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: English
7 */
9 #include <exec/types.h>
10 #include <proto/exec.h>
11 #include <proto/reqtools.h>
12 #include <proto/intuition.h>
13 #include <exec/libraries.h>
14 #include <exec/memory.h>
15 #include <aros/libcall.h>
17 #include "reqtools_intern.h"
19 /*****************************************************************************
21 NAME */
23 AROS_LH2(LONG, rtChangeReqAttrA,
25 /* SYNOPSIS */
27 AROS_LHA(APTR, req, A1),
28 AROS_LHA(struct TagItem *, taglist, A0),
30 /* LOCATION */
32 struct ReqToolsBase *, ReqToolsBase, 8, ReqTools)
34 /* FUNCTION
35 Change requester attributes with supplied taglist. This is the only
36 correct way to change the attributes listed below.
38 The return code from rtChangeReqAttrA() should be ignored unless
39 stated otherwise.
41 Don't pass the tags listed below to the requester itself (unless
42 documented otherwise). They will not be recognized.
44 INPUTS
45 req - pointer to requester.
46 taglist - pointer to array of tags.
48 TAGS
49 For the file requester:
51 RTFI_Dir - (char *)
52 Name of new directory to position file requester in. The
53 requester's buffer will be deallocated.
55 RTFI_MatchPat - (char *) New pattern string to match files on.
57 RTFI_AddEntry - (BPTR) THIS *MUST* BE THE LAST TAG (just before
58 TAG_END)! Tagdata must hold a lock on a file or directory you
59 want to add to the file requester's buffer. The lock should
60 have been obtained using Lock(), and you must unlock this lock
61 yourself. It is your responsibility to make sure the file or
62 directory is indeed in the directory the file requester is in.
63 If the entry is already in the file requester's buffer it will
64 simply be updated.
65 It is harmless to use this tag if the requester's buffer is not
66 initialized. rtChangeReqAttr() will return a boolean to
67 indicate success or failure (out of memory).
69 RTFI_RemoveEntry - (char *) Name of file or directory you want to
70 remove from the file requester's buffer. It is your
71 responsibility to make sure the file or directory is indeed in
72 the directory the file requester is in.
73 It is harmless use this tag if the requester's buffer is not
74 initialized.
76 For the font requester:
78 RTFO_FontName - (char *) Set the name of the currently selected
79 font.
81 RTFO_FontHeight - (UWORD) Set the fontsize of the currently
82 selected font.
84 RTFO_FontStyle - (UBYTE) Set the style of the current font.
86 RTFO_FontFlags - (UBYTE) Set the flags of the current font.
88 For the screenmode requester [V38]:
90 RTSC_ModeFromScreen - (struct Screen *) Screen to get mode
91 attributes from.
93 NOTE: You must make sure the mode this screen is in will be
94 accepted by the screen mode requester. Otherwise it will
95 automatically cancel. For example, you use
96 RTDI_ModeFromScreen on a HAM screen and you haven't set the
97 SCREQF_NONSTDMODES flag.
98 Note that you must use this tag _before_ the four tags
99 below because this tag will set the width, height, depth
100 and autoscroll.
102 RTSC_DisplayID - (ULONG) Set 32-bit mode id of selected mode. The
103 width and height will be set to the default (visible) width and
104 height, and the depth will be set to maximum. Also read note
105 above. Note that you must use this tag _before_ the three tags
106 below because this tag will set the width, height and depth to
107 default values.
109 RTSC_DisplayWidth - (UWORD) Set width of display. Must come after
110 RTSC_DisplayID or RTSC_ModeFromScreen tags.
112 RTSC_DisplayHeight - (UWORD) Set height of display. Must come after
113 RTSC_DisplayID or RTSC_ModeFromScreen tags.
115 RTSC_DisplayDepth - (UWORD) Set depth of display. Must come after
116 RTSC_DisplayID or RTSC_ModeFromScreen tags.
118 RTSC_AutoScroll - (BOOL) Boolean state of autoscroll checkbox. Must
119 come after RTSC_ModeFromScreen tag.
121 RTSC_OverscanType - (ULONG) Set type of overscan. Set to 0 for
122 regular size, otherwise use OSCAN_... constants. See
123 'intuition/screens.[h|i]'.
125 RESULT
126 none (except when RTFI_AddEntry tag is used, see above)
128 NOTES
130 EXAMPLE
132 BUGS
133 none known
135 SEE ALSO
136 dos.library/Lock()
138 INTERNALS
140 HISTORY
142 ******************************************************************************/
144 AROS_LIBFUNC_INIT
146 return ChangeReqAttrA(req, taglist); /* in filereqalloc.c */
148 AROS_LIBFUNC_EXIT
150 } /* rtChangeReqAttrA */