[prev in list] [next in list] [prev in thread] [next in thread]
List: kdevelop-bugs
Subject: [Bug 86361] switch to buffer doesn't differentiate between buffers
From: Jens Dagerbo <jens.dagerbo () swipnet ! se>
Date: 2007-01-02 0:17:55
Message-ID: 20070102001755.31053.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=86361
jens.dagerbo swipnet se changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
------- Additional Comments From jens.dagerbo swipnet se 2007-01-02 01:17 -------
SVN commit 618662 by dagerbo:
# Improve "switch to.." dialog
# Make it possible to differentiate between several files with the same name
BUG: 86361
M +7 -6 Makefile.am
M +7 -29 partcontroller.cpp
A switchtodialog.cpp [License: GPL (v2+)]
A switchtodialog.h [License: GPL (v2+)]
A switchtodialogbase.ui
--- branches/kdevelop/3.4/src/Makefile.am #618661:618662
@ -13,11 +13,11 @
$(top_builddir)/lib/widgets/libkdevwidgets.la \
$(top_builddir)/lib/interfaces/extras/libkdevextras.la \ \
$(top_builddir)/src/newui/libd.la $(LIB_KHTML) -lktexteditor libkdevshell_la_SOURCES \
= api.cpp core.cpp documentationpart.cpp \
- editorproxy.cpp generalinfowidget.cpp languageselectwidget.cpp mainwindowshare.cpp \
\
- partcontroller.cpp plugincontroller.cpp projectmanager.cpp \
- projectsession.cpp splashscreen.cpp statusbar.cpp toplevel.cpp \
generalinfowidgetbase.ui \
- mimewarningdialog.ui shellextension.cpp simplemainwindow.cpp multibuffer.cpp \
- pluginselectdialogbase.ui pluginselectdialog.cpp pluginselectdialog.h
+ editorproxy.cpp generalinfowidget.cpp generalinfowidgetbase.ui \
languageselectwidget.cpp \ + mainwindowshare.cpp mimewarningdialog.ui multibuffer.cpp \
partcontroller.cpp \ + plugincontroller.cpp pluginselectdialog.cpp \
pluginselectdialog.h pluginselectdialogbase.ui \ + projectmanager.cpp \
projectsession.cpp shellextension.cpp simplemainwindow.cpp \ + splashscreen.cpp \
statusbar.cpp switchtodialog.cpp switchtodialogbase.ui toplevel.cpp
bin_PROGRAMS = kdevelop kdevassistant
@ -46,7 +46,7 @
generalinfowidget.h languageselectwidget.h mainwindowshare.h \
partcontroller.h plugincontroller.h projectmanager.h projectsession.h \
shellextension.h \ splashscreen.h statusbar.h toplevel.h generalinfowidgetbase.h \
mimewarningdialog.h \
- settingswidget.h simplemainwindow.h multibuffer.h
+ settingswidget.h simplemainwindow.h multibuffer.h switchtodialog.h
DOXYGEN_REFERENCES = dcop interfaces kdecore kdefx kdeui khtml kmdi kio kjs kparts \
kutils kdevutil kdevinterfaces kdevextensions DOXYGEN_PROJECTNAME = KDevelop Generic \
Shell @ -55,3 +55,4 @
profilesdatadir = $(kde_datadir)/kdevelop/profiles
profilesdata_DATA = projectprofiles
AM_CXXFLAGS = -w
+
--- branches/kdevelop/3.4/src/partcontroller.cpp #618661:618662
@ -65,6 +65,8 @
#include "multibuffer.h"
#include "partcontroller.h"
+#include "switchtodialog.h"
+
class QDomDocument;
PartController *PartController::s_instance = 0;
@ -316,7 +318,7 @
}
}
- if ( !done && ( !url.isValid() || !KIO::NetAccess::exists(url, false, 0) ))
+ if ( !done && ( !url.isValid() || !KIO::NetAccess::exists(url, false, 0) ))
{
// Not found - prompt the user to find it?
kdDebug(9000) << "cannot find URL: " << url.url() << endl;
@ -1311,35 +1313,11 @
void PartController::slotSwitchTo()
{
- QMap<QString,KParts::ReadOnlyPart*> parts_map;
- QStringList part_list;
- QPtrList<KParts::Part> pl = *parts();
- KParts::Part *part;
- for(part=pl.first();part;part=pl.next()) {
- kdDebug(9000) << "Part..." << endl;
- if (part->inherits("KParts::ReadOnlyPart")) {
- KParts::ReadOnlyPart *ro_part = static_cast<KParts::ReadOnlyPart*>(part);
- QString name = ro_part->url().fileName();
- part_list.append(name);
- parts_map[name] = ro_part;
- kdDebug(9000) << "Found part for URL " << ro_part->url().prettyURL() << \
endl; + SwitchToDialog dlg( openURLs() );
+ if ( dlg.exec() == QDialog::Accepted )
+ {
+ editDocument( dlg.selectedUrl() );
}
- }
-
- KDialogBase dialog(KDialogBase::Plain, i18n("Switch To"), \
KDialogBase::Ok|KDialogBase::Cancel,
- KDialogBase::Ok, 0, "Switch to", true);
- QGridLayout *grid = new QGridLayout( dialog.plainPage(), 2, 1, 10, 10);
- KLineEdit *editbox = new KLineEdit(dialog.plainPage());
- grid->addWidget(new QLabel( i18n("Switch to buffer:"), dialog.plainPage() ), 0, \
0);
- grid->addWidget(editbox, 1, 0);
- editbox->completionObject()->setItems( part_list );
- editbox->setFocus();
- int result = dialog.exec();
- if (result==KDialogBase::KDialogBase::Accepted) {
- if (parts_map.contains(editbox->text())) {
- activatePart(parts_map[editbox->text()]);
- }
- }
}
void PartController::showPart( KParts::Part* part, const QString& name, const \
QString& shortDescription )
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic