[commit] r1966 - in trunk: Paradigms/MetaGME/MetaDecorator SDK/DecoratorLib
GMESRC Repository Notifications
gme-commit at list.isis.vanderbilt.edu
Thu Jul 12 12:26:19 CDT 2012
Author: ksmyth
Date: Thu Jul 12 12:26:19 2012
New Revision: 1966
Log:
Dont try to edit names or attribute names when in a library. Fixes CrashRpt a655a4c5-1484-4785-a67d-05c97927d675
Modified:
trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.cpp
trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.h
trunk/SDK/DecoratorLib/ClassLabelPart.cpp
Modified: trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.cpp
==============================================================================
--- trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.cpp Wed Jul 11 08:34:41 2012 (r1965)
+++ trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.cpp Thu Jul 12 12:26:19 2012 (r1966)
@@ -40,7 +40,9 @@
m_strText = newString;
CComBSTR bstr;
CopyTo(newString, bstr);
- COMTHROW(m_spActualFCO->put_Name(bstr));
+ HRESULT hr = m_spActualFCO->put_Name(bstr);
+ if (hr != E_MGA_NAME_DUPLICATE)
+ COMTHROW(hr);
// transaction operation end
}
@@ -51,4 +53,12 @@
return (m_boxPos.y < boxPos.y || m_boxPos.y == boxPos.y && m_boxPos.x < boxPos.x);
}
+void MetaAttributePart::InitializeEx(CComPtr<IMgaProject>& pProject, CComPtr<IMgaMetaPart>& pPart, CComPtr<IMgaFCO>& pFCO, HWND parentWnd, DecoratorSDK::PreferenceMap& preferences)
+{
+ __super::InitializeEx(pProject, pPart, pFCO, parentWnd, preferences);
+ VARIANT_BOOL isLibObject = VARIANT_TRUE;
+ pFCO->get_IsLibObject(&isLibObject);
+ m_bTextEditable = isLibObject == VARIANT_FALSE;
+}
+
}; // namespace MetaDecor
Modified: trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.h
==============================================================================
--- trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.h Wed Jul 11 08:34:41 2012 (r1965)
+++ trunk/Paradigms/MetaGME/MetaDecorator/MetaAttributePart.h Thu Jul 12 12:26:19 2012 (r1966)
@@ -32,6 +32,10 @@
const CString& nameStr, const CString& typeStr, const CPoint& boxPos, CComPtr<IMgaFCO>& pFCO);
virtual ~MetaAttributePart();
+
+ virtual void InitializeEx (CComPtr<IMgaProject>& pProject, CComPtr<IMgaMetaPart>& pPart,
+ CComPtr<IMgaFCO>& pFCO, HWND parentWnd, DecoratorSDK::PreferenceMap& preferences);
+
virtual void ExecuteOperation (const CString& newString);
virtual bool IsLesser (const AttributePart* other);
Modified: trunk/SDK/DecoratorLib/ClassLabelPart.cpp
==============================================================================
--- trunk/SDK/DecoratorLib/ClassLabelPart.cpp Wed Jul 11 08:34:41 2012 (r1965)
+++ trunk/SDK/DecoratorLib/ClassLabelPart.cpp Thu Jul 12 12:26:19 2012 (r1966)
@@ -65,6 +65,10 @@
if (m_bIsAbstract)
m_iFontKey = FONT_ABSTRACT;
+
+ VARIANT_BOOL isLibObject = VARIANT_TRUE;
+ pFCO->get_IsLibObject(&isLibObject);
+ m_bTextEditable = isLibObject == VARIANT_FALSE;
}
CPoint ClassLabelPart::GetTextPosition(CDC* pDC, Gdiplus::Graphics* gdip) const
More information about the gme-commit
mailing list