[commit] r1673 - trunk/GME/Gme

GMESRC Repository Notifications gme-commit at list.isis.vanderbilt.edu
Tue Nov 8 10:24:12 CST 2011


Author: ksmyth
Date: Tue Nov  8 10:24:11 2011
New Revision: 1673

Log:
Fix bug where Part Browser wasnt updated when switching model editor tabs. Fix bugs with model editor>object inspector updates: Ctrl-A, switch model editor tab, deselect by clicking blank canvas, deselect by changing aspect

Modified:
   trunk/GME/Gme/ChildFrm.cpp
   trunk/GME/Gme/GMEView.cpp

Modified: trunk/GME/Gme/ChildFrm.cpp
==============================================================================
--- trunk/GME/Gme/ChildFrm.cpp	Mon Nov  7 09:42:32 2011	(r1672)
+++ trunk/GME/Gme/ChildFrm.cpp	Tue Nov  8 10:24:11 2011	(r1673)
@@ -198,5 +198,18 @@
 {
 	CMDIChildWndEx::OnMDIActivate(bActivate, pActivateWnd, pDeactivateWnd);
 	if (pActivateWnd == this)
-		((CGMEView*)GetActiveView())->DoPannWinRefresh();
+	{
+		CGMEView* view = ((CGMEView*)GetActiveView());
+		view->DoPannWinRefresh();
+		if (view->guiMeta) {
+			theApp.UpdateCompList4CurrentKind( view->guiMeta->name);
+			CMainFrame::theInstance->SetPartBrowserMetaModel(view->guiMeta);
+			CMainFrame::theInstance->SetPartBrowserBg(view->bgColor);
+			CMainFrame::theInstance->ChangePartBrowserAspect(view->currentAspect->index);
+
+			view->ChangeAttrPrefObjs(view->selected);
+
+		}
+		view->SetScroll();
+	}
 }

Modified: trunk/GME/Gme/GMEView.cpp
==============================================================================
--- trunk/GME/Gme/GMEView.cpp	Mon Nov  7 09:42:32 2011	(r1672)
+++ trunk/GME/Gme/GMEView.cpp	Tue Nov  8 10:24:11 2011	(r1673)
@@ -2259,12 +2259,19 @@
 {
 	CComPtr<IMgaObjects> mgaobjs;
 	COMTHROW(mgaobjs.CoCreateInstance(L"Mga.MgaObjects"));
-	POSITION pos = objlist.GetHeadPosition();
-	while (pos) {
-		CGuiObject *guiObj = objlist.GetNext(pos);
-		CComPtr<IMgaObject> mgaobj;
-		COMTHROW(guiObj->mgaFco.QueryInterface(&mgaobj));
-		COMTHROW(mgaobjs->Append(mgaobj));
+	if (objlist.GetCount() == 0)
+	{
+		COMTHROW(mgaobjs->Append(currentModel));
+	}
+	else
+	{
+		POSITION pos = objlist.GetHeadPosition();
+		while (pos) {
+			CGuiObject *guiObj = objlist.GetNext(pos);
+			CComPtr<IMgaObject> mgaobj;
+			COMTHROW(guiObj->mgaFco.QueryInterface(&mgaobj));
+			COMTHROW(mgaobjs->Append(mgaobj));
+		}
 	}
 
 	CGMEObjectInspector::theInstance->SetObjects(mgaobjs);
@@ -2716,6 +2723,7 @@
 	CGMEEventLogger::LogGMEEvent(_T("CGMEView::ModeChange in ")+path+name+_T("\r\n"));
 	this->SendUnselEvent4List( &selected);
 	selected.RemoveAll();
+	ChangeAttrPrefObjs(selected);
 	RemoveAllAnnotationFromSelection();
 	ClearConnectionSelection();
 	ClearConnSpecs();
@@ -4285,6 +4293,8 @@
 			selected.RemoveAll();
 			RemoveAllAnnotationFromSelection();
 			ClearConnectionSelection();
+			ChangeAttrPrefObjs(selected);
+
 
 //			CGMEView* gmeviewA = (CGMEView*)GetActiveView();
 //			if (gmeviewA)
@@ -5144,9 +5154,9 @@
 								annotation = selectedAnnotations.GetHead();
 								// ANNTODO: ChangeAttrPrefFco...
 							}
-							ChangeAttrPrefObjs(selected);
 						}
 					}
+					ChangeAttrPrefObjs(selected);
 				}
 				bool succ = this->SendNow();
 				Invalidate( succ);
@@ -8815,6 +8825,7 @@
 
 	GMEEVENTLOG_GUIANNOTATORS(selectedAnnotations);
 	Invalidate();
+	ChangeAttrPrefObjs(selected);
 	this->SendNow();
 }
 


More information about the gme-commit mailing list