Mercurial > bellaciao
diff layout_view.h @ 8:c63d67895cbe
layout designer: first draft
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 24 Aug 2011 20:38:55 +0200 |
parents | |
children | 0d7875c26974 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/layout_view.h Wed Aug 24 20:38:55 2011 +0200 @@ -0,0 +1,47 @@ +/* +Bellaciao: a Salut à Toi frontend +Copyright (C) 2011 Jérôme Poisson (goffi@goffi.org) + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#ifndef LAYOUT_VIEW_H +#define LAYOUT_VIEW_H + +#include <QWidget> +#include <QDragEnterEvent> +#include "layout_widget.h" + +#define LAYOUT_WIDGET_MIME "application/x-bellaciao-widget" + + +class LayoutView : public QWidget +{ + Q_OBJECT + + public: + LayoutView(QWidget* parent=0); + ~LayoutView(); + void setLayoutWidgets(const QHash<QString, LayoutWidget*>& layout_widgets); + void dragEnterEvent (QDragEnterEvent* event ); + void dragMoveEvent (QDragMoveEvent* event ); + void dropEvent (QDropEvent * event); + protected: + void addWidget(const QString& name); + private: + QHash<QString, LayoutWidget*> m_layout_widgets; + QList<LayoutWidget> m_widgets_list; + QVBoxLayout* m_layout; +}; +#endif