Warning, file /sdk/ktechlab/src/gui/itemeditor/itemeditor.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /***************************************************************************
0002  *   Copyright (C) 2006 David Saxton <david@bluehaze.org>                  *
0003  *                                                                         *
0004  *   This program is free software; you can redistribute it and/or modify  *
0005  *   it under the terms of the GNU General Public License as published by  *
0006  *   the Free Software Foundation; either version 2 of the License, or     *
0007  *   (at your option) any later version.                                   *
0008  ***************************************************************************/
0009 
0010 #ifndef ITEMEDITOR_H
0011 #define ITEMEDITOR_H
0012 
0013 #include <QPointer>
0014 #include <QWidget>
0015 
0016 class ComponentModelWidget;
0017 class CNItem;
0018 class CNItemGroup;
0019 class CNItemGroup;
0020 class ICNDocument;
0021 class Item;
0022 class ItemEditor;
0023 class ItemGroup;
0024 class OrientationWidget;
0025 class PropertyEditor;
0026 class QPushButton;
0027 class QLabel;
0028 
0029 namespace KateMDI
0030 {
0031 class ToolView;
0032 }
0033 
0034 /**
0035 @author Daniel Clarke
0036 @author David Saxton
0037 */
0038 class ItemEditor : public QWidget
0039 {
0040     Q_OBJECT
0041 public:
0042     static ItemEditor *self(KateMDI::ToolView *parent = nullptr);
0043     ~ItemEditor() override;
0044     static QString toolViewIdentifier()
0045     {
0046         return "ItemEditor";
0047     }
0048 
0049 public slots:
0050     /**
0051      * Update the Properties Editor
0052      */
0053     void slotUpdate(ItemGroup *itemGroup);
0054     /**
0055      * Updates various widgets (orientation and component-model ).
0056      */
0057     void slotUpdate(Item *item);
0058     /**
0059      * Clear the properties editor and orientation widget
0060      */
0061     void slotClear();
0062     void slotMultipleSelected();
0063     /**
0064      * Updates the merge / reset data parts (e.g. enabling or disabling the
0065      * "Merge" button)
0066      */
0067     void itemGroupUpdated(ItemGroup *itemGroup);
0068 
0069 protected:
0070     void updateNameLabel(Item *item);
0071 
0072     PropertyEditor *m_pPropertyEditor;
0073     QLabel *m_pNameLabel;
0074     OrientationWidget *m_pOrientationWidget;
0075     ComponentModelWidget *m_pComponentModelWidget;
0076 
0077 private:
0078     static ItemEditor *m_pSelf;
0079     ItemEditor(KateMDI::ToolView *parent);
0080 };
0081 
0082 #endif