xref: /haiku/src/apps/drivesetup/ChangeParametersPanel.h (revision f4abe40626d9a1192f2c1519f08dbfb94229e0e5)
18940ad25SAxel Dörfler /*
28940ad25SAxel Dörfler  * Copyright 2008-2013 Haiku Inc. All rights reserved.
38940ad25SAxel Dörfler  * Distributed under the terms of the MIT license.
48940ad25SAxel Dörfler  *
58940ad25SAxel Dörfler  * Authors:
68940ad25SAxel Dörfler  *		Stephan Aßmus <superstippi@gmx.de>
78940ad25SAxel Dörfler  *		Axel Dörfler, axeld@pinc-software.de.
88940ad25SAxel Dörfler  *		Bryce Groff	  <bgroff@hawaii.edu>
98940ad25SAxel Dörfler  */
108940ad25SAxel Dörfler #ifndef CHANGE_PARAMS_PANEL_H
118940ad25SAxel Dörfler #define CHANGE_PARAMS_PANEL_H
128940ad25SAxel Dörfler 
138940ad25SAxel Dörfler 
148940ad25SAxel Dörfler #include "AbstractParametersPanel.h"
158940ad25SAxel Dörfler 
168940ad25SAxel Dörfler 
178940ad25SAxel Dörfler class BMenuField;
188940ad25SAxel Dörfler class BPopUpMenu;
198940ad25SAxel Dörfler class BTextControl;
208940ad25SAxel Dörfler 
218940ad25SAxel Dörfler 
228940ad25SAxel Dörfler class ChangeParametersPanel : public AbstractParametersPanel {
238940ad25SAxel Dörfler public:
248940ad25SAxel Dörfler 								ChangeParametersPanel(BWindow* window,
258940ad25SAxel Dörfler 									BPartition* parent);
268940ad25SAxel Dörfler 	virtual						~ChangeParametersPanel();
278940ad25SAxel Dörfler 
288940ad25SAxel Dörfler 			status_t			Go(BString& name, BString& type,
298940ad25SAxel Dörfler 									BString& parameters);
308940ad25SAxel Dörfler 
318940ad25SAxel Dörfler 	virtual	void				MessageReceived(BMessage* message);
328940ad25SAxel Dörfler 
338940ad25SAxel Dörfler protected:
348940ad25SAxel Dörfler 								ChangeParametersPanel(BWindow* window);
358940ad25SAxel Dörfler 
368940ad25SAxel Dörfler 			status_t			Go(BString& name, BString& type,
378940ad25SAxel Dörfler 									BString& parameters, BMessage& storage);
38*f4abe406SAdrien Destugues 			void 				CreateChangeControls(BPartition* partition,
39*f4abe406SAdrien Destugues 									BPartition* parent);
408940ad25SAxel Dörfler 
418940ad25SAxel Dörfler 	virtual bool				NeedsEditor() const;
428940ad25SAxel Dörfler 	virtual bool				ValidWithoutEditor() const;
438940ad25SAxel Dörfler 	virtual status_t			ParametersReceived(const BString& parameters,
448940ad25SAxel Dörfler 									BMessage& storage);
458940ad25SAxel Dörfler 	virtual	void				AddControls(BLayoutBuilder::Group<>& builder,
468940ad25SAxel Dörfler 									BView* editorView);
478940ad25SAxel Dörfler 
488940ad25SAxel Dörfler protected:
498940ad25SAxel Dörfler 			BPopUpMenu*			fTypePopUpMenu;
508940ad25SAxel Dörfler 			BMenuField*			fTypeMenuField;
518940ad25SAxel Dörfler 			BTextControl*		fNameTextControl;
528940ad25SAxel Dörfler 			bool				fSupportsName;
538940ad25SAxel Dörfler 			bool				fSupportsType;
548940ad25SAxel Dörfler };
558940ad25SAxel Dörfler 
568940ad25SAxel Dörfler 
578940ad25SAxel Dörfler #endif // CHANGE_PARAMS_PANEL_H
58