/*
 * 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/GroupView.h	hrev45833
 *		src/kits/interface/GroupView.cpp	hrev49977
 */


/*!
	\file GroupView.h
	\ingroup interface
	\brief Provides the BGroupView class.

	\since Haiku R1
*/


/*!
	\class BGroupView
	\ingroup interface
	\ingroup libbe
	\brief Container view for a collection of views organized in a horizontal
		or vertical row.

	The group has a horizontal or a vertical orientation. By default, the view
	has the default system grey background.

	\see BGroupLayout for more information on how and when to use this
		type of container.

	\since Haiku R1
*/


/*!
	\fn BGroupView::BGroupView(orientation orientation, float spacing)
	\brief Creates a new group view.

	\param orientation Set to B_HORIZONTAL or B_VERTICAL.
	\param spacing The space between the elements in the group.

	\since Haiku R1
*/


/*!
	\fn BGroupView::BGroupView(const char *name, orientation orientation,
		float spacing)
	\brief Creates a new group view with a \a name.

	\param name The name for the view.
	\param orientation Set to B_HORIZONTAL or B_VERTICAL.
	\param spacing The space between the elements in the group.

	\since Haiku R1
*/


/*!
	\fn BGroupView::BGroupView(BMessage *from)
	\brief Constructs a BGroupView \a from an archive message.

	This method is usually not called directly, if you want to build a
	group view from an archived message you should call Instantiate() instead
	because it can handle errors properly.

	\param from The \ref BMessage that contains the grid view.

	\since Haiku R1
*/


/*!
	\fn virtual BGroupView::~BGroupView()
	\brief Destructor.

	\since Haiku R1
*/


/*!
	\fn virtual void BGroupView::SetLayout(BLayout *layout)
	\brief Adopt a given group \a layout.

	\param layout The layout to set to. This must be a BGroupLayout, or a
		derivative. Any other layout types will be ignored.

	\since Haiku R1
*/


/*!
	\fn BGroupLayout* BGroupView::GroupLayout() const
	\brief Get a pointer to the underlying BGroupLayout.

	\return A pointer to the underlying group layout.

	\since Haiku R1
*/


/*!
	\fn virtual status_t BGroupView::Perform(perform_code d, void *arg)
	\brief Perform some action. (Internal Method)

	Reimplemented from BView::Perform()

	\since Haiku R1
*/


/*!
	\fn static BArchivable* BGroupView::Instantiate(BMessage *from)
	\brief Instantiate the view from the message \a from.

	\since Haiku R1
*/