xref: /haiku/headers/private/media/DefaultMediaTheme.h (revision 83b1a68c52ba3e0e8796282759f694b7fdddf06d)
1 /*
2  * Copyright 2003-2007, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef DEFAULT_MEDIA_THEME_H
6 #define DEFAULT_MEDIA_THEME_H
7 
8 
9 #include <MediaTheme.h>
10 
11 class BParameterGroup;
12 
13 
14 namespace BPrivate {
15 
16 class DefaultMediaTheme : public BMediaTheme {
17 	public:
18 		DefaultMediaTheme();
19 
20 		virtual	BControl* MakeControlFor(BParameter* parameter);
21 
22 		static BControl* MakeViewFor(BParameter* parameter, const BRect* hintRect = NULL);
23 			// this is also called by the BMediaTheme::MakeFallbackViewFor()
24 			// method - that's why it's a static.
25 
26 	protected:
27 		virtual	BView* MakeViewFor(BParameterWeb* web, const BRect* hintRect = NULL);
28 
29 	private:
30 		BView* MakeViewFor(BParameterGroup& group, const BRect* hintRect);
31 		BView* MakeSelfHostingViewFor(BParameter& parameter, const BRect* hintRect);
32 };
33 
34 }	// namespace BPrivate
35 
36 #endif	/* DEFAULT_MEDIA_THEME_H */
37