diff options
Diffstat (limited to 'chalk/ui/kis_gradient_chooser.cpp')
-rw-r--r-- | chalk/ui/kis_gradient_chooser.cpp | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/chalk/ui/kis_gradient_chooser.cpp b/chalk/ui/kis_gradient_chooser.cpp new file mode 100644 index 000000000..5022a28b9 --- /dev/null +++ b/chalk/ui/kis_gradient_chooser.cpp @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2004 Adrian Page <adrian@pagenet.plus.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +#include <tdelocale.h> +#include <tqlabel.h> +#include <tqlayout.h> +#include <tqpushbutton.h> + +#include <kdialogbase.h> + +#include <koIconChooser.h> +#include <kis_view.h> + +#include "kis_global.h" +#include "kis_icon_item.h" +#include "kis_gradient.h" +#include "kis_autogradient.h" + +#include "kis_gradient_chooser.h" + +KisCustomGradientDialog::KisCustomGradientDialog(KisView * view, TQWidget * parent, const char *name) + : KDialogBase(parent, name, false, i18n("Custom Gradient"), Close) +{ + m_page = new KisAutogradient(this, "autogradient", i18n("Custom Gradient")); + setMainWidget(m_page); + connect(m_page, TQT_SIGNAL(activatedResource(KisResource *)), view, TQT_SLOT(gradientActivated(KisResource*))); +} + +KisGradientChooser::KisGradientChooser(KisView * view, TQWidget *parent, const char *name) : super(parent, name) +{ + m_lbName = new TQLabel(this); + + m_customGradient = new TQPushButton(i18n("Custom Gradient..."), this, "custom gradient button"); + + KisCustomGradientDialog * autogradient = new KisCustomGradientDialog(view, this, "autogradient"); + connect(m_customGradient, TQT_SIGNAL(clicked()), autogradient, TQT_SLOT(show())); + + TQVBoxLayout *mainLayout = new TQVBoxLayout(this, 2, -1, "main layout"); + + mainLayout->addWidget(m_lbName); + mainLayout->addWidget(chooserWidget(), 10); + mainLayout->addWidget(m_customGradient, 10); + +} + +KisGradientChooser::~KisGradientChooser() +{ +} + +void KisGradientChooser::update(KoIconItem *item) +{ + KisIconItem *kisItem = static_cast<KisIconItem *>(item); + + if (item) { + KisGradient *gradient = static_cast<KisGradient *>(kisItem->resource()); + + m_lbName->setText(gradient->name()); + } +} + + +#include "kis_gradient_chooser.moc" + |