1*b1cdbd2cSJim Jagielski/**************************************************************
2*b1cdbd2cSJim Jagielski *
3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski *
11*b1cdbd2cSJim Jagielski *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski *
13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski * under the License.
19*b1cdbd2cSJim Jagielski *
20*b1cdbd2cSJim Jagielski *************************************************************/
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski
23*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_frame_FrameSearchFlag_idl__
24*b1cdbd2cSJim Jagielski#define __com_sun_star_frame_FrameSearchFlag_idl__
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim Jagielski
27*b1cdbd2cSJim Jagielski//=============================================================================
28*b1cdbd2cSJim Jagielski
29*b1cdbd2cSJim Jagielski module com {  module sun {  module star {  module frame {
30*b1cdbd2cSJim Jagielski
31*b1cdbd2cSJim Jagielski//=============================================================================
32*b1cdbd2cSJim Jagielski/** these types describe the algorithm to be used to search a frame
33*b1cdbd2cSJim Jagielski
34*b1cdbd2cSJim Jagielski    <p>
35*b1cdbd2cSJim Jagielski    Such flags will be used on methods <member>XFrame::findFrame()</member>,
36*b1cdbd2cSJim Jagielski    <member>XDispatchProvider::queryDispatch()</member> or
37*b1cdbd2cSJim Jagielski    <member>XComponentLoader::loadComponentFromURL()</member> if no special target
38*b1cdbd2cSJim Jagielski    frame name (e.g. "_blank", "_self") is used.
39*b1cdbd2cSJim Jagielski    </p>
40*b1cdbd2cSJim Jagielski
41*b1cdbd2cSJim Jagielski    @see XFrame::findFrame()
42*b1cdbd2cSJim Jagielski    @see XDispatchProvider::queryDispatch()
43*b1cdbd2cSJim Jagielski    @see XComponentLoader::loadComponentFromURL()
44*b1cdbd2cSJim Jagielski */
45*b1cdbd2cSJim Jagielskipublished constants FrameSearchFlag
46*b1cdbd2cSJim Jagielski{
47*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
48*b1cdbd2cSJim Jagielski    /** no longer supported
49*b1cdbd2cSJim Jagielski
50*b1cdbd2cSJim Jagielski        <p>
51*b1cdbd2cSJim Jagielski        Using of this flag will do nothing. Use right combination of other flags
52*b1cdbd2cSJim Jagielski        instead of this one.
53*b1cdbd2cSJim Jagielski        </p>
54*b1cdbd2cSJim Jagielski
55*b1cdbd2cSJim Jagielski        @deprecated
56*b1cdbd2cSJim Jagielski	 */
57*b1cdbd2cSJim Jagielski	const long AUTO = 0;
58*b1cdbd2cSJim Jagielski
59*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
60*b1cdbd2cSJim Jagielski    /** allows search on the parent frames
61*b1cdbd2cSJim Jagielski	 */
62*b1cdbd2cSJim Jagielski	const long PARENT = 1;
63*b1cdbd2cSJim Jagielski
64*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
65*b1cdbd2cSJim Jagielski    /** includes the start frame himself
66*b1cdbd2cSJim Jagielski	 */
67*b1cdbd2cSJim Jagielski	const long SELF = 2;
68*b1cdbd2cSJim Jagielski
69*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
70*b1cdbd2cSJim Jagielski        /** includes all child frames of the start frame
71*b1cdbd2cSJim Jagielski
72*b1cdbd2cSJim Jagielski            <p>
73*b1cdbd2cSJim Jagielski            Note: That means all direct children and of course her childrens too.
74*b1cdbd2cSJim Jagielski                  Search doesn't stop at the next level inside the tree!
75*b1cdbd2cSJim Jagielski            </p>
76*b1cdbd2cSJim Jagielski         */
77*b1cdbd2cSJim Jagielski	const long CHILDREN = 4;
78*b1cdbd2cSJim Jagielski
79*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
80*b1cdbd2cSJim Jagielski	/** frame will be created if not found
81*b1cdbd2cSJim Jagielski	 */
82*b1cdbd2cSJim Jagielski	const long CREATE = 8;
83*b1cdbd2cSJim Jagielski
84*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
85*b1cdbd2cSJim Jagielski        /** includes the direct siblings of the start frame
86*b1cdbd2cSJim Jagielski
87*b1cdbd2cSJim Jagielski            <p>
88*b1cdbd2cSJim Jagielski            Normaly it's interpreted as search on the direct childs of the parent
89*b1cdbd2cSJim Jagielski            only. But in combination with e.g. the CHILDREN flag it can include all
90*b1cdbd2cSJim Jagielski            children of it too.
91*b1cdbd2cSJim Jagielski            </p>
92*b1cdbd2cSJim Jagielski	 */
93*b1cdbd2cSJim Jagielski	const long SIBLINGS = 16;
94*b1cdbd2cSJim Jagielski
95*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
96*b1cdbd2cSJim Jagielski        /** allow the search outside the current sub task tree of the whole possible frame tree
97*b1cdbd2cSJim Jagielski
98*b1cdbd2cSJim Jagielski        <p>
99*b1cdbd2cSJim Jagielski        If this flag isn't present, any search from bottom to top has to stop, if a top frame
100*b1cdbd2cSJim Jagielski        will be reached. It doesn't influence a search from top to bottom.
101*b1cdbd2cSJim Jagielski        But it can be used at the root of the frame tree to search on direct childrens of it only.
102*b1cdbd2cSJim Jagielski        Because the direct children of the root node are the root's of the task sub trees, which
103*b1cdbd2cSJim Jagielski        are top frames too. Instead of using the CHILDREN flag there, it's possible so to supress
104*b1cdbd2cSJim Jagielski        a deeper search so.
105*b1cdbd2cSJim Jagielski        </p>
106*b1cdbd2cSJim Jagielski	 */
107*b1cdbd2cSJim Jagielski	const long TASKS = 32;
108*b1cdbd2cSJim Jagielski
109*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
110*b1cdbd2cSJim Jagielski        /** includes all frames except frames in other tasks sub trees
111*b1cdbd2cSJim Jagielski        but doesn't create any new frame
112*b1cdbd2cSJim Jagielski	 */
113*b1cdbd2cSJim Jagielski	const long ALL = 23;
114*b1cdbd2cSJim Jagielski
115*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
116*b1cdbd2cSJim Jagielski    /** searches in the whole hierarchy of frames
117*b1cdbd2cSJim Jagielski        but doesn't create any new frame
118*b1cdbd2cSJim Jagielski	 */
119*b1cdbd2cSJim Jagielski	const long GLOBAL = 55;
120*b1cdbd2cSJim Jagielski};
121*b1cdbd2cSJim Jagielski
122*b1cdbd2cSJim Jagielski//=============================================================================
123*b1cdbd2cSJim Jagielski
124*b1cdbd2cSJim Jagielski}; }; }; };
125*b1cdbd2cSJim Jagielski
126*b1cdbd2cSJim Jagielski#endif
127