#ifndef PROPERTIES_USER_EDITOR_H
#define PROPERTIES_USER_EDITOR_H

#include <QWidget>
#include "propertystorage.h"


class PropertiesUserEditor: public QWidget {
	Q_OBJECT
public:
	explicit PropertiesUserEditor(QWidget * parent = 0);
	~PropertiesUserEditor();
	
	void clear();
	bool isEmpty() const;
	void setStorage(PropertyStorage * s);
	void applyProperties();
	void setResetButtonsVisible(bool yes);
	
private:
	QList<QWidget*> _widgets;
	PropertyStorage * storage;
	bool reset_buttons = true;
	
public slots:
	
private slots:
	void buttonReset_clicked();
	
signals:
	void resetStorageRequest(PropertyStorage * );
	void changed();
};

#endif // PROPERTIES_USER_EDITOR_H
