xref: /haiku/src/add-ons/translators/png/PNGView.h (revision 93aeb8c3bc3f13cb1f282e3e749258a23790d947)
1 /*****************************************************************************/
2 // PNGView
3 // Written by Michael Wilber, OBOS Translation Kit Team
4 //
5 // PNGView.h
6 //
7 // This BView based object displays information about the PNGTranslator.
8 //
9 //
10 // Copyright (c) 2003 OpenBeOS Project
11 //
12 // Permission is hereby granted, free of charge, to any person obtaining a
13 // copy of this software and associated documentation files (the "Software"),
14 // to deal in the Software without restriction, including without limitation
15 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
16 // and/or sell copies of the Software, and to permit persons to whom the
17 // Software is furnished to do so, subject to the following conditions:
18 //
19 // The above copyright notice and this permission notice shall be included
20 // in all copies or substantial portions of the Software.
21 //
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28 // DEALINGS IN THE SOFTWARE.
29 /*****************************************************************************/
30 
31 #ifndef PNGVIEW_H
32 #define PNGVIEW_H
33 
34 #include <View.h>
35 #include <MenuField.h>
36 #include <MenuItem.h>
37 #include <PopUpMenu.h>
38 #include "TranslatorSettings.h"
39 
40 #define PNG_VIEW_WIDTH 300
41 #define PNG_VIEW_HEIGHT 250
42 
43 // Config panel messages
44 #define M_PNG_SET_INTERLACE			'pnsi'
45 
46 
47 class PNGView : public BView {
48 public:
49 	PNGView(const BRect &frame, const char *name, uint32 resize,
50 		uint32 flags, TranslatorSettings *settings);
51 		// sets up the view
52 
53 	~PNGView();
54 		// releases the PNGTranslator settings
55 
56 	virtual void AllAttached();
57 	virtual	void Draw(BRect area);
58 		// draws information about the PNGTranslator
59 	virtual void MessageReceived(BMessage *pmsg);
60 
61 private:
62 	BPopUpMenu *fpmnuInterlace;
63 	BMenuField *fpfldInterlace;
64 
65 	TranslatorSettings *fSettings;
66 		// the actual settings for the translator,
67 		// shared with the translator
68 };
69 
70 #endif // #ifndef PNGVIEW_H
71