[prev in list] [next in list] [prev in thread] [next in thread]
List: kdevelop-devel
Subject: gideon bugfixes
From: Yann Hodique <Yann.Hodique () lifl ! fr>
Date: 2002-08-19 18:29:06
[Download RAW message or body]
Hi,
I've made some little bugfixes for "non-vital" features, but anyway it works better :-)
the first patch fixes the behavior for Qt/kdelibs (doxygen) documentation :
- URL storage
- correct access (instead of current directory)
the second one fixes the file template management in cppsupport part :
- take into account user-defined templates
- really display the selected templates (implementation template wasn't visible)
- correct initialisation of "Project Options" -> "C++ specific" -> "File templates"
- add template item $FILENAME$ (for better compatibility with kdevelop project files)
Best regards.
Yann.
["doctree.diff" (application/octet-stream)]
Index: parts/doctreeview/doctreeglobalconfigwidget.cpp
===================================================================
RCS file: /home/kde/kdevelop/parts/doctreeview/doctreeglobalconfigwidget.cpp,v
retrieving revision 1.1
diff -u -r1.1 doctreeglobalconfigwidget.cpp
--- parts/doctreeview/doctreeglobalconfigwidget.cpp 20 Jun 2002 09:30:26 -0000 1.1
+++ parts/doctreeview/doctreeglobalconfigwidget.cpp 19 Aug 2002 17:52:54 -0000
@@ -15,7 +15,8 @@
#include <qlineedit.h>
#include <kconfig.h>
#include <kprocess.h>
-
+//#include <kdebug.h>
+#include <iostream>
#include "../../config.h"
#include "domutil.h"
#include "doctreeviewpart.h"
@@ -41,6 +42,7 @@
config->setGroup("General");
qtdocdirEdit->setText(config->readEntry("qtdocdir", QT_DOCDIR));
+
kdelibsdoxydirEdit->setText(config->readEntry("kdelibsdocdir", KDELIBS_DOXYDIR));
config->setGroup("Index");
@@ -58,7 +60,7 @@
config->setGroup("General");
config->writeEntry("qtdocdir", qtdocdirEdit->text());
- config->readEntry("kdelibsdocdir", kdelibsdoxydirEdit->text());
+ config->writeEntry("kdelibsdocdir", kdelibsdoxydirEdit->text());
config->setGroup("Index");
config->writeEntry("IndexKDevelop", indexKDevelopBox->isChecked());
Index: parts/doctreeview/doctreeviewwidget.cpp
===================================================================
RCS file: /home/kde/kdevelop/parts/doctreeview/doctreeviewwidget.cpp,v
retrieving revision 1.24
diff -u -r1.24 doctreeviewwidget.cpp
--- parts/doctreeview/doctreeviewwidget.cpp 11 Aug 2002 17:17:43 -0000 1.24
+++ parts/doctreeview/doctreeviewwidget.cpp 19 Aug 2002 17:53:31 -0000
@@ -313,7 +313,7 @@
DocTreeDoxygenBook::DocTreeDoxygenBook(DocTreeItem *parent, const QString &name,
const QString &dirName, const QString &context)
- : DocTreeItem(parent, Book, name, context),
+ : DocTreeItem(parent, Doc, name, context),
dirname(dirName)
{
QString fileName = dirName + "/index.html";
@@ -383,9 +383,8 @@
DocTreeItem::clear();
KConfig *config = DocTreeViewFactory::instance()->config();
+ config->setGroup("General");
QString docdir = config->readEntry("kdelibsdocdir", KDELIBS_DOXYDIR);
-// kdDebug ( 9002 ) << "********************************** " << docdir << endl;
-// docdir = "/usr/local/kde3/share/doc/HTML/en/kdelibs-apidocs";
QDir d(docdir);
QStringList fileList = d.entryList("*", QDir::Dirs);
Index: parts/doctreeview/kio_kdeapi.cpp
===================================================================
RCS file: /home/kde/kdevelop/parts/doctreeview/kio_kdeapi.cpp,v
retrieving revision 1.1
diff -u -r1.1 kio_kdeapi.cpp
--- parts/doctreeview/kio_kdeapi.cpp 20 Jun 2002 09:30:26 -0000 1.1
+++ parts/doctreeview/kio_kdeapi.cpp 19 Aug 2002 17:54:04 -0000
@@ -27,7 +27,7 @@
config->setGroup("General");
qtdocdir = config->readEntry("qtdocdir", QT_DOCDIR);
- kdedocdir = config->readEntry("kdedocdir", KDELIBS_DOXYDIR);
+ kdedocdir = config->readEntry("kdelibsdocdir", KDELIBS_DOXYDIR);
}
["templates.diff" (application/octet-stream)]
Index: lib/util/filetemplate.cpp
===================================================================
RCS file: /home/kde/kdevelop/lib/util/filetemplate.cpp,v
retrieving revision 1.5
diff -u -r1.5 filetemplate.cpp
--- lib/util/filetemplate.cpp 19 Apr 2002 13:56:49 -0000 1.5
+++ lib/util/filetemplate.cpp 19 Aug 2002 17:22:04 -0000
@@ -20,22 +20,22 @@
#include "domutil.h"
-bool FileTemplate::exists(KDevPlugin *part, const QString &name)
+bool FileTemplate::exists(KDevPlugin *part, const QString &name, Policy p)
{
KDevProject *project = part->project();
- QString fileName = project->projectDirectory() + "/templates/" + name;
+ QString fileName = (p == Default) ? (project->projectDirectory() + "/templates/" \
+ name) : name;
return QFile::exists(fileName);
}
-QString FileTemplate::read(KDevPlugin *part, const QString &name)
+QString FileTemplate::read(KDevPlugin *part, const QString &name, Policy p)
{
KDevProject *project = part->project();
QDomDocument &dom = *part->projectDom();
- QString fileName = project->projectDirectory() + "/templates/" + name;
-
+ QString fileName = (p == Default) ? (project->projectDirectory() + "/templates/" \
+ name) : name; +
QFile f(fileName);
if (!f.open(IO_ReadOnly))
return QString::null;
@@ -59,9 +59,9 @@
bool FileTemplate::copy(KDevPlugin *part, const QString &name,
- const QString &dest)
+ const QString &dest, Policy p)
{
- QString text = read(part, name);
+ QString text = read(part, name, p);
QFile f(dest);
if (!f.open(IO_WriteOnly))
Index: lib/util/filetemplate.h
===================================================================
RCS file: /home/kde/kdevelop/lib/util/filetemplate.h,v
retrieving revision 1.5
diff -u -r1.5 filetemplate.h
--- lib/util/filetemplate.h 19 Apr 2002 13:56:49 -0000 1.5
+++ lib/util/filetemplate.h 19 Aug 2002 17:22:58 -0000
@@ -20,25 +20,27 @@
class FileTemplate
{
public:
+
+ typedef enum { Default, Custom } Policy;
/**
* Returns whether a template with the given name
* exists in the current project. File templates
* are stored in the "templates" subdirectory of a project.
*/
- static bool exists(KDevPlugin *part, const QString &name);
+ static bool exists(KDevPlugin *part, const QString &name, Policy p = Default);
/**
* Reads a template with the given name (e.g. "cpp")
* and makes variable substitutions (like $AUTHOR$ etc.)
* in it. The resulting string is returned.
*/
- static QString read(KDevPlugin *part, const QString &name);
+ static QString read(KDevPlugin *part, const QString &name, Policy p = Default);
/**
* Copies a file template with the given name to the
* file with the name dest and - while copying -
* performs variable substitutions.
*/
static bool copy(KDevPlugin *part, const QString &name,
- const QString &dest);
+ const QString &dest, Policy p = Default);
};
#endif
Index: parts/cppsupport/ccconfigwidget.cpp
===================================================================
RCS file: /home/kde/kdevelop/parts/cppsupport/ccconfigwidget.cpp,v
retrieving revision 1.14
diff -u -r1.14 ccconfigwidget.cpp
--- parts/cppsupport/ccconfigwidget.cpp 19 Jul 2002 15:28:04 -0000 1.14
+++ parts/cppsupport/ccconfigwidget.cpp 19 Aug 2002 17:23:41 -0000
@@ -292,9 +292,9 @@
char *buf = new char[size];
f.readBlock(&buf[0], size);
QString text = QString::fromLocal8Bit(buf, size);
- delete[] buf;
- f.close();
- interface_file->setText(buf);
+ f.close();
+ interface_file->setText(text);
+ delete[] buf;
}
}
@@ -306,9 +306,9 @@
char *buf = new char[size];
f.readBlock(&buf[0], size);
QString text = QString::fromLocal8Bit(buf, size);
- delete[] buf;
f.close();
implementation_file->setText(text);
+ delete[] buf;
}
}
@@ -409,6 +409,7 @@
void CCConfigWidget::slotEnableChooseFiles(bool c)
{
+ choose_files->setChecked(c);
template_groups->setEnabled(!c);
interface_url->setEnabled(c);
implementation_url->setEnabled(c);
Index: parts/cppsupport/ccconfigwidgetbase.ui
===================================================================
RCS file: /home/kde/kdevelop/parts/cppsupport/ccconfigwidgetbase.ui,v
retrieving revision 1.12
diff -u -r1.12 ccconfigwidgetbase.ui
--- parts/cppsupport/ccconfigwidgetbase.ui 17 Aug 2002 01:45:40 -0000 1.12
+++ parts/cppsupport/ccconfigwidgetbase.ui 19 Aug 2002 17:24:25 -0000
@@ -1303,6 +1303,18 @@
<slot>interfaceFile()</slot>
</connection>
<connection>
+ <sender>implementation_url</sender>
+ <signal>textChanged(const QString&)</signal>
+ <receiver>CCConfigWidgetBase</receiver>
+ <slot>implementationFile()</slot>
+ </connection>
+ <connection>
+ <sender>implementation_url</sender>
+ <signal>urlSelected(const QString&)</signal>
+ <receiver>CCConfigWidgetBase</receiver>
+ <slot>implementationFile()</slot>
+ </connection>
+ <connection>
<sender>cbEnablePCS</sender>
<signal>clicked()</signal>
<receiver>CCConfigWidgetBase</receiver>
Index: parts/cppsupport/cppnewclassdlg.cpp
===================================================================
RCS file: /home/kde/kdevelop/parts/cppsupport/cppnewclassdlg.cpp,v
retrieving revision 1.7
diff -u -r1.7 cppnewclassdlg.cpp
--- parts/cppsupport/cppnewclassdlg.cpp 8 Aug 2002 10:33:15 -0000 1.7
+++ parts/cppsupport/cppnewclassdlg.cpp 19 Aug 2002 17:49:56 -0000
@@ -124,9 +124,13 @@
QString doc = documentation_edit->text();
QString istr;
- if (filetemplate_box->isChecked())
- istr = FileTemplate::read(m_part, "cpp");
-
+ if (filetemplate_box->isChecked()) {
+ QDomDocument dom = *m_part->projectDom();
+ if(DomUtil::readBoolEntry(dom,"/cppsupportpart/filetemplates/choosefiles",false))
+ istr = FileTemplate::read(m_part, \
DomUtil::readEntry(dom,"/cppsupportpart/filetemplates/implementationURL",""), \
FileTemplate::Custom); + else
+ istr = FileTemplate::read(m_part, "cpp");
+ }
if (objc) {
istr += QString("\n"
"#include \"$HEADER$\"\n"
@@ -161,7 +165,8 @@
istr.replace(QRegExp("\\$CLASSNAME\\$"), className);
istr.replace(QRegExp("\\$BASECLASS\\$"), baseName);
istr.replace(QRegExp("\\$ARGS\\$"), args);
-
+ istr.replace(QRegExp("\\$FILENAME\\$"), implementation);
+
QFile ifile(implementationPath);
if (!ifile.open(IO_WriteOnly)) {
KMessageBox::error(this, "Cannot write to implementation file");
@@ -172,9 +177,14 @@
ifile.close();
QString hstr;
- if (filetemplate_box->isChecked())
- hstr = FileTemplate::read(m_part, "templates/h");
-
+ if (filetemplate_box->isChecked()) {
+ QDomDocument dom = *m_part->projectDom();
+ if(DomUtil::readBoolEntry(dom,"/cppsupportpart/filetemplates/choosefiles",false))
+ hstr = FileTemplate::read(m_part, \
DomUtil::readEntry(dom,"/cppsupportpart/filetemplates/interfaceURL",""), \
FileTemplate::Custom); + else
+ hstr = FileTemplate::read(m_part, "h");
+ }
+
if (objc) {
hstr += QString("\n"
"#ifndef _$HEADERGUARD$_\n"
@@ -256,7 +266,8 @@
hstr.replace(QRegExp("\\$INHERITANCE\\$"), inheritance);
hstr.replace(QRegExp("\\$QOBJECT\\$"), qobject);
hstr.replace(QRegExp("\\$ARGS\\$"), args);
-
+ hstr.replace(QRegExp("\\$FILENAME\\$"), header);
+
QFile hfile(headerPath);
if (!hfile.open(IO_WriteOnly)) {
KMessageBox::error(this, "Cannot write to header file");
_______________________________________________
Kdevelop-devel mailing list
Kdevelop-devel@barney.cs.uni-potsdam.de
http://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic