xref: /haiku/headers/private/media/DefaultMediaTheme.h (revision a4f5124fcc523b6551d15edf0d149c23a26484cb)
11cbf8fa2SAxel Dörfler /*
2332d5f43SAxel Dörfler  * Copyright 2003-2007, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3332d5f43SAxel Dörfler  * Distributed under the terms of the MIT License.
41cbf8fa2SAxel Dörfler  */
51cbf8fa2SAxel Dörfler #ifndef DEFAULT_MEDIA_THEME_H
61cbf8fa2SAxel Dörfler #define DEFAULT_MEDIA_THEME_H
71cbf8fa2SAxel Dörfler 
81cbf8fa2SAxel Dörfler 
91cbf8fa2SAxel Dörfler #include <MediaTheme.h>
101cbf8fa2SAxel Dörfler 
11332d5f43SAxel Dörfler class BParameterGroup;
12332d5f43SAxel Dörfler 
131cbf8fa2SAxel Dörfler 
141cbf8fa2SAxel Dörfler namespace BPrivate {
151cbf8fa2SAxel Dörfler 
161cbf8fa2SAxel Dörfler class DefaultMediaTheme : public BMediaTheme {
171cbf8fa2SAxel Dörfler public:
181cbf8fa2SAxel Dörfler 		DefaultMediaTheme();
191cbf8fa2SAxel Dörfler 
201cbf8fa2SAxel Dörfler 		virtual	BControl* MakeControlFor(BParameter* parameter);
211cbf8fa2SAxel Dörfler 
22*a4f5124fSAugustin Cavalier 		static BControl* MakeViewFor(BParameter* parameter);
231cbf8fa2SAxel Dörfler 			// this is also called by the BMediaTheme::MakeFallbackViewFor()
241cbf8fa2SAxel Dörfler 			// method - that's why it's a static.
251cbf8fa2SAxel Dörfler 
261cbf8fa2SAxel Dörfler protected:
271cbf8fa2SAxel Dörfler 		virtual	BView* MakeViewFor(BParameterWeb* web, const BRect* hintRect = NULL);
281cbf8fa2SAxel Dörfler 
291cbf8fa2SAxel Dörfler private:
30*a4f5124fSAugustin Cavalier 		BView* MakeViewFor(BParameterGroup& group);
31*a4f5124fSAugustin Cavalier 		BView* MakeSelfHostingViewFor(BParameter& parameter);
321cbf8fa2SAxel Dörfler };
331cbf8fa2SAxel Dörfler 
341cbf8fa2SAxel Dörfler }	// namespace BPrivate
351cbf8fa2SAxel Dörfler 
361cbf8fa2SAxel Dörfler #endif	/* DEFAULT_MEDIA_THEME_H */
37