diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 114a878c64ce6f8223cfd22d76a20eb16d177e5e (patch) | |
tree | acaf47eb0fa12142d3896416a69e74cbf5a72242 /parts/filecreate/filecreate_filedialog.cpp | |
download | tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.tar.gz tdevelop-114a878c64ce6f8223cfd22d76a20eb16d177e5e.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdevelop@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'parts/filecreate/filecreate_filedialog.cpp')
-rw-r--r-- | parts/filecreate/filecreate_filedialog.cpp | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/parts/filecreate/filecreate_filedialog.cpp b/parts/filecreate/filecreate_filedialog.cpp new file mode 100644 index 00000000..81d711cf --- /dev/null +++ b/parts/filecreate/filecreate_filedialog.cpp @@ -0,0 +1,65 @@ +/*************************************************************************** + * Copyright (C) 2003 by Julian Rockey * + * linux@jrockey.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. * + ***************************************************************************/ + +#include "filecreate_filedialog.h" + +#include <qfileinfo.h> +#include <kdeversion.h> +#include <kurlcombobox.h> +#include <kdebug.h> + +#include "filecreate_part.h" +#include "filecreate_filetype.h" + +namespace FileCreate { + + FileDialog::FileDialog(const QString& startDir, const QString& filter, + QWidget *parent, const char *name, + bool modal, QWidget * extraWidget) : + KFileDialog(startDir, filter, parent, name, modal, extraWidget) { + + setOperationMode(Saving); + + m_extraWidget = extraWidget; + m_typeChooser = dynamic_cast<TypeChooser*>(extraWidget); + + connect(this, SIGNAL(filterChanged(const QString &)), this, SLOT(slotActionFilterChanged(const QString &)) ); + connect(locationEdit, SIGNAL(textChanged(const QString &)), this, SLOT(slotActionTextChanged(const QString &)) ); + + } + + FileDialog::~FileDialog() { } + + + void FileDialog::initGUI() + { + KFileDialog::initGUI(); + } + + void FileDialog::slotActionFilterChanged(const QString & /*filter*/) { + } + + void FileDialog::slotActionTextChanged(const QString & text) { + kdDebug(9034) << "slotActionTextChanged - " << text << endl; + if (!m_typeChooser) return; + QString ext = QFileInfo(text).extension(); + kdDebug(9034) << "Extension is: " << ext << endl; + FileType * filetype = m_typeChooser->part()->getType(ext); + if (!filetype) return; + kdDebug(9034) << "found matching extension: " << ext << endl; + kdDebug(9034) << "Description: " << filetype->descr() << endl; + m_typeChooser->setCurrent(filetype); + } + + + +} + +#include "filecreate_filedialog.moc" |