22#include <tqcheckbox.h>
23#include <tqcombobox.h>
24#include <tqdrawutil.h>
30#include <tqlineedit.h>
31#include <tqvalidator.h>
33#include <tqpushbutton.h>
37#include <tdeapplication.h>
40#include <tdeglobalsettings.h>
41#include <kiconloader.h>
42#include <tdelistbox.h>
44#include <tdemessagebox.h>
45#include <kseparator.h>
47#include <kimageeffect.h>
49#include <kcolordialog.h>
50#include <kcolordrag.h>
54#include <kis_meta_registry.h>
56#include <kis_factory.h>
57#include <kis_colorspace_factory_registry.h>
58#include "kis_palette_widget.h"
59#include "kis_resource.h"
60#include "kis_palette.h"
61#include "kis_palette_view.h"
63KisPaletteWidget::KisPaletteWidget( TQWidget *parent,
int minWidth,
int cols)
64 : TQWidget( parent ), mMinWidth(minWidth), mCols(cols)
70 TQVBoxLayout *layout =
new TQVBoxLayout(
this );
72 combo =
new TQComboBox(
false,
this );
73 combo->setFocusPolicy( TQWidget::ClickFocus );
74 layout->addWidget(combo);
77 layout->addWidget( m_view );
81 connect(combo, TQ_SIGNAL(activated(
const TQString &)),
82 this, TQ_SLOT(slotSetPalette(
const TQString &)));
83 connect(m_view, TQ_SIGNAL(colorSelected(
const KisColor &)),
84 this, TQ_SIGNAL(colorSelected(
const KisColor &)));
85 connect(m_view, TQ_SIGNAL(colorSelected(
const TQColor &)),
86 this, TQ_SIGNAL(colorSelected(
const TQColor &)));
87 connect(m_view, TQ_SIGNAL(colorDoubleClicked(
const KisColor &,
const TQString &)),
88 this, TQ_SIGNAL(colorDoubleClicked(
const KisColor &,
const TQString &)));
91KisPaletteWidget::~KisPaletteWidget()
95TQString KisPaletteWidget::palette()
const
97 return combo->currentText();
110void KisPaletteWidget::slotSetPalette(
const TQString &_paletteName )
112 setPalette( _paletteName );
113 m_view->slotColorCellSelected(0);
117void KisPaletteWidget::setPalette(
const TQString &_paletteName )
119 TQString paletteName( _paletteName);
121 m_currentPalette = m_namedPaletteMap[paletteName];
123 if (combo->currentText() != paletteName)
126 for(
int i = 0; i < combo->count(); i++)
128 if (combo->text(i) == paletteName)
130 combo->setCurrentItem(i);
137 combo->insertItem(paletteName);
138 combo->setCurrentItem(combo->count()-1);
142 m_view->setPalette(m_currentPalette);
145void KisPaletteWidget::slotAddPalette(
KisResource * palette)
149 m_namedPaletteMap.insert(palette->name(), p);
151 combo->insertItem(palette->name());
154 combo->setCurrentItem(0);
155 setPalette(combo ->currentText());
161#include "kis_palette_widget.moc"
A KisColor describes a color in a certain colorspace.
A scrolling view that lists a single KisPalette.
Open Gimp, Photoshop or RIFF palette files.
The KisResource class provides a representation of Chalk image resources.