/*************************************************************************
 *
 *  $RCSfile: FrameSearchFlag.idl,v $
 *
 *  $Revision: 1.5 $
 *
 *  last change: $Author: as $ $Date: 2002/11/05 09:06:56 $
 *
 *  The Contents of this file are made available subject to the terms of
 *  either of the following licenses
 *
 *         - GNU Lesser General Public License Version 2.1
 *         - Sun Industry Standards Source License Version 1.1
 *
 *  Sun Microsystems Inc., October, 2000
 *
 *  GNU Lesser General Public License Version 2.1
 *  =============================================
 *  Copyright 2000 by Sun Microsystems, Inc.
 *  901 San Antonio Road, Palo Alto, CA 94303, USA
 *
 *  This library is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU Lesser General Public
 *  License version 2.1, as published by the Free Software Foundation.
 *
 *  This library is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *  Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 *  MA  02111-1307  USA
 *
 *
 *  Sun Industry Standards Source License Version 1.1
 *  =================================================
 *  The contents of this file are subject to the Sun Industry Standards
 *  Source License Version 1.1 (the "License"); You may not use this file
 *  except in compliance with the License. You may obtain a copy of the
 *  License at http://www.openoffice.org/license.html.
 *
 *  Software provided under this License is provided on an "AS IS" basis,
 *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
 *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
 *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
 *  See the License for the specific provisions governing your rights and
 *  obligations concerning the Software.
 *
 *  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
 *
 *  Copyright: 2000 by Sun Microsystems, Inc.
 *
 *  All Rights Reserved.
 *
 *  Contributor(s): _______________________________________
 *
 *
 ************************************************************************/
#ifndef __com_sun_star_frame_FrameSearchFlag_idl__
#define __com_sun_star_frame_FrameSearchFlag_idl__


//=============================================================================

 module com {  module sun {  module star {  module frame {

//=============================================================================
/** these types describe the algorithm to be used to search a frame

    <p>
    Such flags will be used on methods <member>XFrame::findFrame()</member>,
    <member>XDispatchProvider::queryDispatch()</member> or
    <member>XComponentLoader::loadComponentFromURL()</member> if no special target
    frame name (e.g. "_blank", "_self") is used.
    </p>

    @see XFrame::findFrame()
    @see XDispatchProvider::queryDispatch()
    @see XComponentLoader::loadComponentFromURL()
 */
constants FrameSearchFlag
{
	//-------------------------------------------------------------------------
    /** no longer supported

        <p>
        Using of this flag will do nothing. Use right combination of other flags
        instead of this one.
        </p>

        @deprecated
	 */
	const long AUTO = 0;

	//-------------------------------------------------------------------------
    /** allows search on the parent frames
	 */
	const long PARENT = 1;

	//-------------------------------------------------------------------------
    /** includes the start frame himself
	 */
	const long SELF = 2;

	//-------------------------------------------------------------------------
        /** includes all child frames of the start frame

            <p>
            Note: That means all direct children and of course her childrens too.
                  Search doesn't stop at the next level inside the tree!
            </p>
         */
	const long CHILDREN = 4;

	//-------------------------------------------------------------------------
	/** frame will be created if not found
	 */
	const long CREATE = 8;

	//-------------------------------------------------------------------------
        /** includes the direct siblings of the start frame

            <p>
            Normaly it's interpreted as search on the direct childs of the parent
            only. But in combination with e.g. the CHILDREN flag it can include all
            children of it too.
            </p>
	 */
	const long SIBLINGS = 16;

	//-------------------------------------------------------------------------
        /** allow the search outside the current sub task tree of the whole possible frame tree

        <p>
        If this flag isn't present, any search from bottom to top has to stop, if a top frame
        will be reached. It doesn't influence a search from top to bottom.
        But it can be used at the root of the frame tree to search on direct childrens of it only.
        Because the direct children of the root node are the root's of the task sub trees, which
        are top frames too. Instead of using the CHILDREN flag there, it's possible so to supress
        a deeper search so.
        </p>
	 */
	const long TASKS = 32;

	//-------------------------------------------------------------------------
        /** includes all frames except frames in other tasks sub trees
        but doesn't create any new frame
	 */
	const long ALL = 23;

	//-------------------------------------------------------------------------
    /** searches in the whole hierarchy of frames
        but doesn't create any new frame
	 */
	const long GLOBAL = 55;
};

//=============================================================================

}; }; }; };

#endif
