SVN commit 694862 by uwolfer: Bookmark support. This allows also later a history implementation. M +1 -0 CMakeLists.txt A bookmarkmanager.cpp [License: GPL (v2+)] A bookmarkmanager.h [License: GPL (v2+)] M +1 -0 krdcui.rc M +18 -1 mainwindow.cpp M +6 -0 mainwindow.h M +5 -0 remoteview.cpp M +5 -0 remoteview.h --- trunk/KDE/kdenetwork/krdc/CMakeLists.txt #694861:694862 @@ -44,6 +44,7 @@ config/hostpreferenceslist.cpp config/preferencesdialog.cpp floatingtoolbar.cpp + bookmarkmanager.cpp remoteview.cpp mainwindow.cpp main.cpp --- trunk/KDE/kdenetwork/krdc/krdcui.rc #694861:694862 @@ -15,6 +15,7 @@ + &Settings --- trunk/KDE/kdenetwork/krdc/mainwindow.cpp #694861:694862 @@ -27,6 +27,7 @@ #include "settings.h" #include "config/preferencesdialog.h" #include "floatingtoolbar.h" +#include "bookmarkmanager.h" #ifdef BUILD_RDP #include "rdpview.h" #endif @@ -36,6 +37,7 @@ #include #include +#include #include #include #include @@ -181,6 +183,11 @@ gotoAction->setText(i18n("&Goto address")); gotoAction->setIcon(KIcon("browser-go")); connect(gotoAction, SIGNAL(triggered()), SLOT(slotNewConnection())); + + KActionMenu *bookmarkMenu = new KActionMenu(i18n("&Bookmarks"), actionCollection()); + m_bookmarkManager = new BookmarkManager(actionCollection(), bookmarkMenu->menu(), this); + actionCollection()->addAction("bookmark" , bookmarkMenu); + connect(m_bookmarkManager, SIGNAL(openUrl(KUrl)), SLOT(slotNewConnection(KUrl))); } void MainWindow::slotNewConnection(const KUrl &newUrl, bool switchFullscreenWhenConnected) @@ -571,7 +578,7 @@ { kDebug(5010) << "tabChanged: " << index << endl; - m_currentRemoteView = index - m_showStartPage ? 1 : 0; + m_currentRemoteView = index - (m_showStartPage ? 1 : 0); QString tabTitle = m_tabWidget->tabText(index).remove('&'); @@ -647,4 +654,14 @@ "Example: rdpserver (host)"), this); } +QList MainWindow::remoteViewList() const +{ + return m_remoteViewList; +} + +int MainWindow::currentRemoteView() const +{ + return m_currentRemoteView; +} + #include "mainwindow.moc" --- trunk/KDE/kdenetwork/krdc/mainwindow.h #694861:694862 @@ -32,6 +32,7 @@ class KTabWidget; class KUrlNavigator; +class BookmarkManager; class FloatingToolBar; class RemoteView; class QScrollArea; @@ -43,6 +44,9 @@ MainWindow(QWidget *parent = 0); ~MainWindow(); + QList remoteViewList() const; + int currentRemoteView() const; + public slots: void slotNewConnection(const KUrl &newUrl = KUrl(), bool switchFullscreenWhenConnected = false); @@ -84,6 +88,8 @@ FloatingToolBar *m_toolBar; + BookmarkManager *m_bookmarkManager; + QList m_remoteViewList; int m_topBottomBorder; // tabwidget borders --- trunk/KDE/kdenetwork/krdc/remoteview.cpp #694861:694862 @@ -148,6 +148,11 @@ { } +KUrl RemoteView::url() +{ + return m_url; +} + QString RemoteView::readWalletPassword() { QString krdc_folder = "KRDC"; --- trunk/KDE/kdenetwork/krdc/remoteview.h #694861:694862 @@ -238,6 +238,11 @@ */ RemoteStatus status(); + /** + * @return the current url + */ + KUrl url(); + public slots: /** * Called to enable or disable scaling.