summaryrefslogtreecommitdiffstats
path: root/kooka/imageselectline.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kooka/imageselectline.cpp')
-rw-r--r--kooka/imageselectline.cpp105
1 files changed, 105 insertions, 0 deletions
diff --git a/kooka/imageselectline.cpp b/kooka/imageselectline.cpp
new file mode 100644
index 00000000..f8677f1f
--- /dev/null
+++ b/kooka/imageselectline.cpp
@@ -0,0 +1,105 @@
+/***************************************************************************
+ imageselectline.cpp - select a background image.
+ -------------------
+ begin : Fri Dec 17 1999
+ copyright : (C) 1999 by Klaas Freitag
+
+ $Id$
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This file may be distributed and/or modified under the terms of the *
+ * GNU General Public License version 2 as published by the Free Software *
+ * Foundation and appearing in the file COPYING included in the *
+ * packaging of this file. *
+ *
+ * As a special exception, permission is given to link this program *
+ * with any version of the KADMOS ocr/icr engine of reRecognition GmbH, *
+ * Kreuzlingen and distribute the resulting executable without *
+ * including the source code for KADMOS in the source distribution. *
+ *
+ * As a special exception, permission is given to link this program *
+ * with any edition of Qt, and distribute the resulting executable, *
+ * without including the source code for Qt in the source distribution. *
+ * *
+ ***************************************************************************/
+#include <qhbox.h>
+#include <qvbox.h>
+#include <qbutton.h>
+#include <qpushbutton.h>
+#include <qlabel.h>
+
+#include <kdebug.h>
+#include <klocale.h>
+#include <kurl.h>
+#include <kurlcombobox.h>
+#include <kfiledialog.h>
+#include <kiconloader.h>
+
+#include "imageselectline.h"
+
+/* ############################################################################## */
+
+/*
+ * This widget just combines a label, a combobox holding a path and a select button
+ * together in a row. The button opens a file selector box to pick a file.
+ */
+
+ImageSelectLine::ImageSelectLine( QWidget *parent, const QString& text )
+ : QHBox( parent )
+{
+ setSpacing( 5 );
+ (void) new QLabel( text, this );
+ m_urlCombo = new KURLComboBox( KURLComboBox::Files, this );
+ m_buttFileSelect = new QPushButton( this );
+ m_buttFileSelect->setPixmap( SmallIcon( "fileopen" ) );
+
+ m_urlCombo->setMaxItems(5);
+
+ connect( m_urlCombo, SIGNAL( urlActivated( const KURL& )),
+ this, SLOT( slUrlActivated( const KURL& )));
+
+ connect( m_buttFileSelect, SIGNAL( clicked() ),
+ this, SLOT( slSelectFile()));
+}
+
+void ImageSelectLine::slSelectFile()
+{
+ KURL newUrl;
+ newUrl = KFileDialog::getImageOpenURL();
+
+ QStringList l = m_urlCombo->urls();
+
+ if( ! newUrl.isEmpty())
+ {
+ l.prepend( newUrl.url() );
+ m_urlCombo->setURLs( l );
+ m_currUrl = newUrl;
+ }
+}
+
+void ImageSelectLine::slUrlActivated( const KURL& url )
+{
+ kdDebug(28000) << "Activating url: " << url.url() << endl;
+ m_currUrl = url;
+}
+
+KURL ImageSelectLine::selectedURL() const
+{
+ return m_currUrl;
+}
+
+void ImageSelectLine::setURL( const KURL& url )
+{
+ if( m_urlCombo ) m_urlCombo->setURL( url );
+ m_currUrl = url;
+}
+
+void ImageSelectLine::setURLs( const QStringList& list )
+{
+ if( m_urlCombo ) m_urlCombo->setURLs( list );
+}
+
+#include "imageselectline.moc"