krita
kis_dlg_adjustment_layer.h
00001 /* 00002 * Copyright (c) 2006 Boudewijn Rempt <boud@valdyas.org> 00003 * Copyright (c) 2007 Benjamin Schleimer <bensch128@yahoo.com> 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00018 */ 00019 #ifndef KISDLGAdjustMENTLAYER_H 00020 #define KISDLGAdjustMENTLAYER_H 00021 00022 #include <kdialogbase.h> 00023 00024 class KisFilter; 00025 class QIconViewItem; 00026 class QLabel; 00027 class QHBoxLayout; 00028 class KisPreviewWidget; 00029 class KisFiltersListView; 00030 class KisFilterConfiguration; 00031 class KisImage; 00032 class QGroupBox; 00033 00037 class KisDlgAdjustmentLayer : public KDialogBase 00038 { 00039 00040 Q_OBJECT 00041 00042 public: 00043 00055 KisDlgAdjustmentLayer(KisImage * img, 00056 const QString & layerName, 00057 const QString & caption, 00058 QWidget *parent = 0, 00059 const char *name = 0); 00060 00061 KisFilterConfiguration * filterConfiguration() const; 00062 QString layerName() const; 00063 00064 protected slots: 00065 00066 void slotNameChanged( const QString & ); 00067 void slotConfigChanged(); 00068 void refreshPreview(); 00069 void selectionHasChanged ( QIconViewItem * item ); 00070 00071 private: 00072 KisImage * m_image; 00073 KisPaintDeviceSP m_dev; 00074 KisFiltersListView * m_filtersList; 00075 KisPreviewWidget * m_preview; 00076 QGroupBox * m_configWidgetHolder; 00077 QWidget * m_currentConfigWidget; 00078 KisFilter* m_currentFilter; 00079 KLineEdit * m_layerName; 00080 QLabel* m_labelNoConfigWidget; 00081 bool m_customName; 00082 bool m_freezeName; 00083 }; 00084 00085 #endif