[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdebase/apps/dolphin/src
From:       Peter Penz <peter.penz () gmx ! at>
Date:       2008-11-14 19:51:17
Message-ID: 1226692277.247898.26766.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 884373 by ppenz:

provide a 'Create New' entry for a context menu above a directory

BUG: 169880

 M  +16 -3     dolphincontextmenu.cpp  
 M  +1 -1      dolphinmainwindow.cpp  
 M  +2 -2      dolphinnewmenu.cpp  
 M  +1 -1      dolphinnewmenu.h  


--- trunk/KDE/kdebase/apps/dolphin/src/dolphincontextmenu.cpp #884372:884373
@@ -21,6 +21,7 @@
 #include "dolphincontextmenu.h"
 
 #include "dolphinmainwindow.h"
+#include "dolphinnewmenu.h"
 #include "dolphinsettings.h"
 #include "dolphinview.h"
 #include "dolphinviewcontainer.h"
@@ -173,9 +174,21 @@
 
     KMenu* popup = new KMenu(m_mainWindow);
     if (m_fileInfo.isDir() && (m_selectedUrls.count() == 1)) {
-      popup->addAction(m_mainWindow->actionCollection()->action("open_in_new_window"));
-      popup->addAction(m_mainWindow->actionCollection()->action("open_in_new_tab"));
-      popup->addSeparator();
+        // setup 'Create New' menu
+        DolphinNewMenu* newMenu = new DolphinNewMenu(popup, m_mainWindow);
+        newMenu->slotCheckUpToDate();
+        newMenu->setPopupFiles(m_fileInfo.url());
+        
+        KMenu* menu = newMenu->menu();
+        menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
+        menu->setIcon(KIcon("document-new"));
+        popup->addMenu(newMenu->menu());
+        popup->addSeparator();
+    
+        // insert 'Open in new window' and 'Open in new tab' entries
+        popup->addAction(m_mainWindow->actionCollection()->action("open_in_new_window"));
+        popup->addAction(m_mainWindow->actionCollection()->action("open_in_new_tab"));
+        popup->addSeparator();
     }
     addShowMenubarAction(popup);
     insertDefaultItemActions(popup);
--- trunk/KDE/kdebase/apps/dolphin/src/dolphinmainwindow.cpp #884372:884373
@@ -945,7 +945,7 @@
 void DolphinMainWindow::setupActions()
 {
     // setup 'File' menu
-    m_newMenu = new DolphinNewMenu(this);
+    m_newMenu = new DolphinNewMenu(this, this);
     KMenu* menu = m_newMenu->menu();
     menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
     menu->setIcon(KIcon("document-new"));
--- trunk/KDE/kdebase/apps/dolphin/src/dolphinnewmenu.cpp #884372:884373
@@ -27,8 +27,8 @@
 #include <kactioncollection.h>
 #include <kio/job.h>
 
-DolphinNewMenu::DolphinNewMenu(DolphinMainWindow* mainWin) :
-    KNewMenu(mainWin->actionCollection(), mainWin, "create_new"),
+DolphinNewMenu::DolphinNewMenu(QWidget* parent, DolphinMainWindow* mainWin) :
+    KNewMenu(mainWin->actionCollection(), parent, "create_new"),
     m_mainWin(mainWin)
 {
 }
--- trunk/KDE/kdebase/apps/dolphin/src/dolphinnewmenu.h #884372:884373
@@ -39,7 +39,7 @@
     Q_OBJECT
 
 public:
-    DolphinNewMenu(DolphinMainWindow* mainWin);
+    DolphinNewMenu(QWidget* parent, DolphinMainWindow* mainWin);
     virtual ~DolphinNewMenu();
 
 protected slots:
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic