File indexing completed on 2024-04-21 05:51:38
0001 /* 0002 * SPDX-FileCopyrightText: 2002-2003 Jesper K. Pedersen <blackie@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-only 0005 **/ 0006 0007 #ifndef __multicontainerwidget 0008 #define __multicontainerwidget 0009 0010 #include "regexpwidget.h" 0011 0012 #include <QList> 0013 0014 /** 0015 Abstract RegExp widget class representing widgets having multiple children. 0016 @internal 0017 */ 0018 class MultiContainerWidget : public RegExpWidget 0019 { 0020 public: 0021 explicit MultiContainerWidget(RegExpEditorWindow *editorWindow, QWidget *parent = nullptr); 0022 bool hasSelection() const override; 0023 void clearSelection() override; 0024 void deleteSelection() override; 0025 void addNewChild(DragAccepter *accepter, RegExpWidget *child) override; 0026 bool updateSelection(bool parentSelected) override; 0027 QRect selectionRect() const override; 0028 RegExpWidget *widgetUnderPoint(QPointF globalPos, bool justVisibleWidgets) override; 0029 RegExpWidget *findWidgetToEdit(QPointF globalPos) override; 0030 void selectWidget(bool sel) override; 0031 void updateAll() override; 0032 void updateCursorRecursively() override; 0033 0034 protected: 0035 void append(RegExpWidget *child); 0036 QList<RegExpWidget *> _children; 0037 }; 0038 0039 #endif // __multicontainerwidget