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

List:       kde-commits
Subject:    extragear/sdk/kdevplatform/plugins/projectmanagerview
From:       Milian Wolff <mail () milianw ! de>
Date:       2010-01-27 23:54:53
Message-ID: 1264636493.283048.3732.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1081245 by mwolff:

only show the 'create file' and 'create folder' actions when a single folder/target \
was selected. imo it doesn't make much sense to show that when multiple folders where \
selected (usecase??)

 M  +19 -18    projectmanagerviewplugin.cpp  


--- trunk/extragear/sdk/kdevplatform/plugins/projectmanagerview/projectmanagerviewplugin.cpp \
#1081244:1081245 @@ -187,8 +187,24 @@
     //bool hasTargets = false;
     bool folderItemsAdded = false;
     bool removeAdded = false;
-    bool createFileAdded = false;
     bool renameAdded = false;
+
+    if ( items.count() == 1 ) {
+        // it only makes sense to create new stuff when a single folder/target was \
selected +        if ( items.first()->folder() || items.first()->target() ) {
+            KAction* action = new KAction( i18n( "Create File" ), this );
+            action->setIcon(KIcon("document-new"));
+            connect( action, SIGNAL(triggered()), this, \
SLOT(createFileFromContextMenu()) ); +            menuExt.addAction( \
ContextMenuExtension::FileGroup, action ); +        }
+        if ( items.first()->folder() ) {
+            KAction* action = new KAction( i18n( "Create Folder" ), this );
+            action->setIcon(KIcon("folder-new"));
+            connect( action, SIGNAL(triggered()), this, \
SLOT(createFolderFromContextMenu()) ); +            menuExt.addAction( \
ContextMenuExtension::FileGroup, action ); +        }
+    }
+
     foreach( ProjectBaseItem* item, items )
     {
         d->ctxProjectItemList << item;
@@ -211,7 +227,7 @@
             menuExt.addAction( ContextMenuExtension::BuildGroup, action );
             buildItemsAdded = true;
         }
-        
+
         KDevelop::ProjectFolderItem *prjitem = item->folder();
         if ( !closeProjectsAdded && prjitem && prjitem->isProjectRoot() )
         {
@@ -222,26 +238,11 @@
             closeProjectsAdded = true;
         }
 
-        if ( !createFileAdded && (item->folder() || item->target()) )
-        {
-            createFileAdded = true;
-
-            KAction* action = new KAction( i18n( "Create File" ), this );
-            action->setIcon(KIcon("document-new"));
-            connect( action, SIGNAL(triggered()), this, \
                SLOT(createFileFromContextMenu()) );
-            menuExt.addAction( ContextMenuExtension::FileGroup, action );
-        }
-
         if ( !folderItemsAdded && prjitem )
         {
             folderItemsAdded = true;
 
-            KAction* action = new KAction( i18n( "Create Folder" ), this );
-            action->setIcon(KIcon("folder-new"));
-            connect( action, SIGNAL(triggered()), this, \
                SLOT(createFolderFromContextMenu()) );
-            menuExt.addAction( ContextMenuExtension::FileGroup, action );
-
-            action = new KAction( i18n( "Reload" ), this );
+            KAction* action = new KAction( i18n( "Reload" ), this );
             action->setIcon(KIcon("view-refresh"));
             connect( action, SIGNAL(triggered()), this, \
SLOT(reloadFromContextMenu()) );  menuExt.addAction( ContextMenuExtension::FileGroup, \
action );


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

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