1 /* 2 * Copyright (C) 2021 Damir Porobic <damir.porobic@gmx.com> 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License as published by 6 * the Free Software Foundation; either version 3 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public License 15 * along with this program; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA. 18 */ 19 20 #include "AbstractAnnotationDockWidgetContent.h" 21 22 namespace kImageAnnotator { 23 setOrientation(Qt::Orientation orientation)24void AbstractAnnotationDockWidgetContent::setOrientation(Qt::Orientation orientation) 25 { 26 auto mainLayout = dynamic_cast<QBoxLayout*>(layout()); 27 28 if(mainLayout != nullptr) { 29 if(orientation == Qt::Horizontal) { 30 mainLayout->setDirection(QBoxLayout::LeftToRight); 31 mainLayout->setAlignment(Qt::AlignLeft | Qt::AlignCenter); 32 } else { 33 mainLayout->setDirection(QBoxLayout::TopToBottom); 34 mainLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter); 35 } 36 37 for (auto widget : mExpandingWidget) { 38 widget->setExpanding(orientation != Qt::Horizontal); 39 } 40 41 adjustSize(); 42 } 43 } 44 addExpandingWidget(AbstractExpandingWidget * widget)45void AbstractAnnotationDockWidgetContent::addExpandingWidget(AbstractExpandingWidget *widget) 46 { 47 mExpandingWidget.append(widget); 48 } 49 50 } // namespace kImageAnnotator