Mercurial > bellaciao
view layout_builder.cpp @ 11:98485ebbdb86 default tip
LayoutView: WidgetViewBox fix
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 27 Aug 2011 00:31:20 +0200 |
parents | 0d7875c26974 |
children |
line wrap: on
line source
/* 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/>. */ #include "layout_builder.h" LayoutBuilder::LayoutBuilder(QWidget* parent) : QWidget(parent) { setupUi(this); LayoutWidgetModel* model = new LayoutWidgetModel(this); widgetsList->setModel(model); } LayoutBuilder::~LayoutBuilder() { } const QHash<QString, LayoutWidget*>& LayoutBuilder::getLayoutWidgetsDict() { return dynamic_cast<LayoutWidgetModel*>(widgetsList->model())->getLayoutWidgetsDict(); } void LayoutBuilder::addWidget(LayoutWidget* widget) { dynamic_cast<LayoutWidgetModel*>(widgetsList->model())->append(widget); } LayoutBuilderContactList::LayoutBuilderContactList(QWidget* parent) : LayoutBuilder(parent) { addWidget(new LayoutWidget("List")); addWidget(new LayoutWidget("Box")); layoutView->setLayoutWidgets(getLayoutWidgetsDict()); } LayoutBuilderContactList::~LayoutBuilderContactList() { } LayoutBuilder* LayoutBuilderFactory::Create(LayoutType type, QWidget* parent) { switch (type) { case CONTACT_LIST: return new LayoutBuilderContactList(parent); break; case CONTACT_ITEM: break; default: qCritical() << "Unknwon LayoutBuilder type"; } return 0; }