[Uml-devel] kdesdk/umbrello/umbrello

Sebastian Stein seb.kde at hpfsc.de
Fri Sep 12 12:55:08 UTC 2003


CVS commit by sstein: 

You can now change the display/show settings of multiple selected classes or interfaces:

- before the right click context menu is constructed, we check if all selected items have the same BaseType
- handle show/display setting change for multiple selected items with the same BaseType


  M +23 -1     umlwidget.cpp   1.50


--- kdesdk/umbrello/umbrello/umlwidget.cpp  #1.49:1.50
@@ -473,4 +473,15 @@ void UMLWidget::slotMenuSelection(int se
                         m_pView->selectionUseFillColor( m_bUseFillColour );
                         break;
+            case ListPopupMenu::mt_Show_Attributes_Selection:
+            case ListPopupMenu::mt_Show_Operations_Selection:
+            case ListPopupMenu::mt_Scope_Selection:
+            case ListPopupMenu::mt_DrawAsCircle_Selection:
+            case ListPopupMenu::mt_Show_Operation_Signature_Selection:
+            case ListPopupMenu::mt_Show_Attribute_Signature_Selection:
+            case ListPopupMenu::mt_Show_Packages_Selection:
+            case ListPopupMenu::mt_Show_Stereotypes_Selection:
+                        m_pView->selectionToggleShow(sel);
+                        m_pView->getDocument()->setModified(true);
+                        break;
 
                 case ListPopupMenu::mt_ViewCode: {
@@ -684,4 +695,8 @@ void UMLWidget::startPopupMenu(QPoint At
         // determine multi state
         bool multi = false;
+
+        // if multiple selected items have the same type
+        bool unique = false;
+
         if( m_bSelected ) 
                 if( m_pView -> getType() == dt_Sequence ) {
@@ -698,5 +713,12 @@ void UMLWidget::startPopupMenu(QPoint At
                 } 
 
-        m_pMenu = new ListPopupMenu(static_cast<QWidget*>(m_pView), this, multi);
+        // if multiple items are selected, we have to check if they all have the same
+        // base type
+        if (multi == true)
+                unique = m_pView -> checkUniqueSelection();
+
+        // create the right click context menu
+        m_pMenu = new ListPopupMenu(static_cast<QWidget*>(m_pView), this,
+                                                                                                                                                                        multi, unique);
 
         // disable the "view code" menu for simple code generators






More information about the umbrello-devel mailing list