160484Sobrien/*
260484Sobrien * Copyright 2010, Haiku.
360484Sobrien * Distributed under the terms of the MIT License.
460484Sobrien *
560484Sobrien * Authors:
660484Sobrien *		Clemens Zeidler <haiku@clemens-zeidler.de>
760484Sobrien */
860484Sobrien#ifndef WINDOW_STACK_TEST_H
960484Sobrien#define WINDOW_STACK_TEST_H
1060484Sobrien
1160484Sobrien#include <Box.h>
1260484Sobrien#include <Button.h>
1360484Sobrien#include <GroupLayoutBuilder.h>
1460484Sobrien#include <ListView.h>
1560484Sobrien#include <StringItem.h>
1660484Sobrien#include <StringView.h>
1760484Sobrien
1860484Sobrien
1960484Sobrienclass BWindow;
2060484Sobrien
2160484Sobrien
2260484Sobrienclass WindowListItem : public BStringItem
2360484Sobrien{
2460484Sobrienpublic:
2560484Sobrien					WindowListItem(const char* text, BWindow* window);
2660484Sobrien
2760484Sobrien	BWindow*		Window() { return fWindow; }
2860484Sobrien
2960484Sobrienprivate:
3060484Sobrien	BWindow* 		fWindow;
3160484Sobrien};
3260484Sobrien
3360484Sobrien
3460484Sobrienclass MainView : public BBox
3560484Sobrien{
3660484Sobrienpublic:
3760484Sobrien						MainView();
3860484Sobrien	virtual				~MainView() {}
3960484Sobrien
4060484Sobrien	virtual	void		AttachedToWindow();
4160484Sobrien	virtual	void		MessageReceived(BMessage* message);
4260484Sobrien
4360484Sobrienprivate:
4460484Sobrien		BStringView*	fStackedWindowsLabel;
4560484Sobrien		BListView*		fStackedWindowsList;
4660484Sobrien		BButton*		fGetWindowsButton;
4760484Sobrien		BButton*		fAddWindowButton;
4860484Sobrien		BButton*		fRemoveWindowButton;
4960484Sobrien};
5060484Sobrien
5160484Sobrien
5260484Sobrien#endif
5360484Sobrien