diff --git a/modules/gui/pymod/export_scene_win.cc b/modules/gui/pymod/export_scene_win.cc
index f9d344bf5fc51cce35df1734e8337f83975f4ddc..1ded4aea89ebdefd026b6a71db7cf15e540ce4b3 100644
--- a/modules/gui/pymod/export_scene_win.cc
+++ b/modules/gui/pymod/export_scene_win.cc
@@ -71,6 +71,7 @@ void export_SceneWin()
       .value("NOT_HIDDEN", NOT_HIDDEN)
       .value("NOT_SCENE", NOT_SCENE)
       .value("SINGLE", SINGLE)
+      .value("MULTI", MULTI)
 #if OST_IMG_ENABLED
       .value("MAP", MAP)
 #endif
diff --git a/modules/gui/pymod/init_context_menu.py b/modules/gui/pymod/init_context_menu.py
index b77fbe1421961bb2dca6c9470b024ddbee5f1705..652c456ffaf52fac8f01a2822a2534d84d216a91 100644
--- a/modules/gui/pymod/init_context_menu.py
+++ b/modules/gui/pymod/init_context_menu.py
@@ -12,7 +12,8 @@ class AlignmentContextMenu(QtCore.QObject):
 
       self.action = QtGui.QAction("Align", self)
       QtCore.QObject.connect(self.action,QtCore.SIGNAL("triggered()"), self.Align)
-      context_menu.AddAction(self.action, gui.ContextActionType.ENTITY)
+      print gui.ContextActionType.ENTITY | gui.ContextActionType.MULTI
+      context_menu.AddAction(self.action, gui.ContextActionType.ENTITY | gui.ContextActionType.MULTI)
     except FileNotFound:
       return
     
diff --git a/modules/gui/src/scene_win/context_menu.cc b/modules/gui/src/scene_win/context_menu.cc
index b1ea35b604f8daac98f2f3a9a9a5c94423c04cf5..d873c99f5ba58e3ed84404a49e177821bd3ce570 100644
--- a/modules/gui/src/scene_win/context_menu.cc
+++ b/modules/gui/src/scene_win/context_menu.cc
@@ -124,9 +124,11 @@ void ContextMenu::ShowMenu(const QPoint& pos)
   ContextActionTypes flags;
   flags = ~flags;
 
+  int cnt = 0;
   if(indexes.size()>0){
     for(int i = 0; i < indexes.size(); i++){
       if(indexes[i].column()==0){
+        cnt++;
         GfxSceneNode* gfx_scene_node = qobject_cast<GfxSceneNode*>(model_->GetItem(indexes[i]));
         if(gfx_scene_node){
           gfx::GfxNodeP gfx_node = gfx_scene_node->GetGfxNode();
@@ -164,6 +166,12 @@ void ContextMenu::ShowMenu(const QPoint& pos)
       }
     }
 
+    if(cnt==1){
+      flags &= ~MULTI;
+    }
+    else{
+      flags &= ~SINGLE;
+    }
     QMenu* menu = new QMenu();
     QMapIterator<QAction*, ContextActionTypes> i(actions_);
     flags ^= NOT_VISIBLE;
diff --git a/modules/gui/src/scene_win/context_menu.hh b/modules/gui/src/scene_win/context_menu.hh
index 55c73e438537bd84a031525da2a20b4799436190..bc2f8e9d133215c7c66550e4b68c31e2ad575b77 100644
--- a/modules/gui/src/scene_win/context_menu.hh
+++ b/modules/gui/src/scene_win/context_menu.hh
@@ -42,9 +42,10 @@ enum ContextActionType
   NOT_VISIBLE=0x10,
   NOT_HIDDEN=0x20,
   NOT_SCENE=0x40,
-  SINGLE=0x80
+  SINGLE=0x80,
+  MULTI=0x100
 #if OST_IMG_ENABLED
-  ,MAP=0x100
+  ,MAP=0x200
 #endif
 };
 Q_DECLARE_FLAGS(ContextActionTypes, ContextActionType)