/*
 * Copyright 2020 Haiku, Inc. All rights reserved.
 * Distributed under the terms of the MIT License.
 *
 * Authors:
 *		Niels Sascha Reedijk, niels.reedijk@gmail.com
 *
 * Corresponds to:
 *		headers/os/interface/SplitLayoutBuilder.h	hrev45833
 *		src/kits/interface/SplitLayoutBuilder.cpp	hrev45833
 */


/*!
	\file SplitLayoutBuilder.h
	\ingroup layout
	\ingroup libbe
	\brief Provides \b deprecated SplitLayoutBuilder class.

	\since Haiku R1
*/


/*!
	\class BSplitLayoutBuilder
	\ingroup libbe
	\brief \b Deprecated helper class that helps building a \ref BSplitView.

	The modern builder can be found in \ref BLayoutBuilder::Split<>.

	\warning This class is deprecated and should not be used in new projects.
		It may be removed in newer releases.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder::BSplitLayoutBuilder(orientation orientation=B_HORIZONTAL, float spacing=B_USE_DEFAULT_SPACING)
	\brief Create a new layout builder with an underlying \ref BSplitView.

	\param orientation The orientation of the split view.
	\param spacing The spacing of items within the split view.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder::BSplitLayoutBuilder(BSplitView *view)
	\brief Create a new layout builder that operates on an existing \a view.

	\param view The existing view you want the builder to alter.

	\since Haiku R1
*/


/*!
	\fn BSplitView* BSplitLayoutBuilder::SplitView() const
	\brief Get a reference to the underlying \ref BSplitView.

	\return A borrowed pointer to the current underlaying view.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::GetSplitView(BSplitView **view)
	\brief Get a reference to the underlying \ref BSplitView.

	\param[out] view The variable to store a borrowed pointer to the
		underlying view.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::Add(BView *view)
	\brief Add a \a view to the underlying \ref BSplitView.

	\param view The \ref BView to add.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::Add(BView *view, float weight)
	\brief Add a \a view to the underlying \ref BSplitView.

	\param view The \ref BView to add.
	\param weight The weight of the item.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::Add(BLayoutItem *item)
	\brief Add a \ref BLayoutItem to the underlying \ref BSplitView.

	\param item The \ref BLayoutItem to add.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::Add(BLayoutItem *item, float weight)
	\brief Add a \ref BLayoutItem to the underlying \ref BSplitView.

	\param item The \ref BLayoutItem to add.
	\param weight The weight of the \a item.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::SetCollapsible(bool collapsible)
	\brief Set the collapsability of the most recently added item.

	\param collapsible \c true if the item is collapsible, \c false otherwise.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder& BSplitLayoutBuilder::SetInsets(float left, float top, float right, float bottom)
	\brief Set the insets of the underlying \ref BSplitView.

	\param left The left inset.
	\param top The top inset.
	\param right The right inset.
	\param bottom The bottom inset.

	\return The method returns a self reference, so that calls to the builder
		may be chained.

	\since Haiku R1
*/


/*!
	\fn BSplitLayoutBuilder::operator BSplitView *()
	\brief Cast the builder to the underlying \ref BSplitView.

	Convenience method for the \ref SplitView() method. 

	\since Haiku R1
*/
