[GME-commit]
GMESRC/GME/GMEActiveBrowser ActiveBrowserPropertyPage.cpp,1.46,1.47
ActiveBrowserPropertyPage.h,1.14,1.15
AggregateContextMenu.cpp,1.24,1.25 AggregateContextMenu.h,1.7,1.8
AggregateTreeCtrl.cpp,1.26,1.27 GMEActiveBrowser.rc,1.14,1.15
resource.h,1.10,1.11
gme-commit at list.isis.vanderbilt.edu
gme-commit at list.isis.vanderbilt.edu
Mon Mar 13 19:24:26 CST 2006
- Previous message: [GME-commit]
GMESRC/GME/Mga MgaCheck.cpp,1.7,1.8 MgaComplexOps.cpp,1.15,1.16
MgaFCO.cpp,1.34,1.35 MgaFCO.h,1.25,1.26 MgaGeneric.h,1.8,1.9
- Next message: [GME-commit]
GMESRC/GME/Parser MgaDumper.cpp,1.27,1.28 MgaParser.cpp,1.31,1.32
MgaParser.h,1.15,1.16 mga.dtd,1.11,1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /project/gme-repository/GMESRC/GME/GMEActiveBrowser
In directory escher:/tmp/cvs-serv30279
Modified Files:
ActiveBrowserPropertyPage.cpp ActiveBrowserPropertyPage.h
AggregateContextMenu.cpp AggregateContextMenu.h
AggregateTreeCtrl.cpp GMEActiveBrowser.rc resource.h
Log Message:
Read-only flag can be applied to objects, from the "Access" menu.
CVS User: Zoltan Molnar, ISIS (zolmol)
Index: AggregateContextMenu.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/AggregateContextMenu.cpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** AggregateContextMenu.cpp 14 Feb 2006 18:50:15 -0000 1.24
--- AggregateContextMenu.cpp 13 Mar 2006 19:24:24 -0000 1.25
***************
*** 113,116 ****
--- 113,118 ----
case ID_POPUP_HELP: OnHelp();break;
case ID_POPUP_SHOWINPARENT: OnShowInParent();break;
+ case ID_POPUP_READONLY: OnReadOnly( true);break;
+ case ID_POPUP_READWRITE: OnReadOnly( false);break;
***************
*** 1117,1119 ****
--- 1119,1126 ----
pApp->GetCtrl()->FireShowInParentMgaObject( pUnknown);
}
+ }
+
+ void CAggregateContextMenu::OnReadOnly( bool pProtectMe)
+ {
+ m_pParent->accessRights( pProtectMe);
}
Index: ActiveBrowserPropertyPage.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/ActiveBrowserPropertyPage.cpp,v
retrieving revision 1.46
retrieving revision 1.47
diff -C2 -d -r1.46 -r1.47
*** ActiveBrowserPropertyPage.cpp 14 Feb 2006 18:50:15 -0000 1.46
--- ActiveBrowserPropertyPage.cpp 13 Mar 2006 19:24:24 -0000 1.47
***************
*** 3515,3516 ****
--- 3515,3548 ----
return false;
}
+
+ void CAggregatePropertyPage::accessRights( bool pbProtectIt)
+ {
+ CGMEActiveBrowserApp* pApp=(CGMEActiveBrowserApp*)AfxGetApp();
+ CMgaContext* pMgaContext=&pApp->m_CurrentProject.m_MgaContext;
+
+ HTREEITEM hItem = m_TreeAggregate.GetFirstSelectedItem();
+ if (hItem != NULL)
+ {
+
+ LPUNKNOWN pUnknown;
+
+ if(!m_TreeAggregate.m_MgaMap.LookupObjectUnknown(hItem,pUnknown))return;
+
+ CComQIPtr<IMgaObject> ccpObj(pUnknown);
+ if( !ccpObj)
+ return;
+
+ MSGTRY {
+
+ CGMEActiveBrowserApp* pApp=(CGMEActiveBrowserApp*)AfxGetApp();
+ CMgaContext* pMgaContext=&pApp->m_CurrentProject.m_MgaContext;
+
+ pMgaContext->BeginTransaction(FALSE);
+
+ COMTHROW(ccpObj->PutReadOnlyAccessWithPropagate( pbProtectIt ? VARIANT_TRUE:VARIANT_FALSE));
+ pMgaContext->CommitTransaction();
+
+ } MSGCATCH("Error while applying new access rights",pMgaContext->AbortTransaction();)
+ Refresh();
+ }
+ }
Index: AggregateContextMenu.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/AggregateContextMenu.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** AggregateContextMenu.h 14 Feb 2006 18:50:15 -0000 1.7
--- AggregateContextMenu.h 13 Mar 2006 19:24:24 -0000 1.8
***************
*** 36,39 ****
--- 36,40 ----
void SetFolderChildren(LPUNKNOWN pUnknown);
void CreateForSingleItem();
+ void OnReadOnly( bool ro);
void OnHelp();
void OnShowInParent();
Index: ActiveBrowserPropertyPage.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/ActiveBrowserPropertyPage.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** ActiveBrowserPropertyPage.h 31 Aug 2005 19:24:11 -0000 1.14
--- ActiveBrowserPropertyPage.h 13 Mar 2006 19:24:24 -0000 1.15
***************
*** 35,38 ****
--- 35,39 ----
void DoCopySmart( int k = 0);
bool askUserAndDetach( CComPtr<IMgaObject> obj); // called when archetype is deleted
+ void accessRights( bool pbProtectIt);
Index: resource.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/resource.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** resource.h 14 Feb 2006 18:50:15 -0000 1.10
--- resource.h 13 Mar 2006 19:24:24 -0000 1.11
***************
*** 75,79 ****
#define ID_EDIT_PASTESPECIAL_SMART_MERGE 32801
#define ID_EDIT_PASTESPECIAL_SMART_ADDITIVE 32802
! #define ID_POPUP_SHOWINPARENT 32803
// Next default values for new objects
--- 75,81 ----
#define ID_EDIT_PASTESPECIAL_SMART_MERGE 32801
#define ID_EDIT_PASTESPECIAL_SMART_ADDITIVE 32802
! #define ID_POPUP_SHOWINPARENT 32803
! #define ID_POPUP_READONLY 32805
! #define ID_POPUP_READWRITE 32807
// Next default values for new objects
***************
*** 82,86 ****
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 220
! #define _APS_NEXT_COMMAND_VALUE 32804
#define _APS_NEXT_CONTROL_VALUE 218
#define _APS_NEXT_SYMED_VALUE 104
--- 84,88 ----
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 220
! #define _APS_NEXT_COMMAND_VALUE 32808
#define _APS_NEXT_CONTROL_VALUE 218
#define _APS_NEXT_SYMED_VALUE 104
Index: AggregateTreeCtrl.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/AggregateTreeCtrl.cpp,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -d -r1.26 -r1.27
*** AggregateTreeCtrl.cpp 31 Aug 2005 19:24:11 -0000 1.26
--- AggregateTreeCtrl.cpp 13 Mar 2006 19:24:24 -0000 1.27
***************
*** 1171,1177 ****
// Checking access rights
VARIANT_BOOL vtbIsWritable=VARIANT_FALSE;
COMTHROW( ccpObject->get_IsWritable(&vtbIsWritable));
! if (vtbIsWritable != VARIANT_TRUE)
{
// Read only object
--- 1171,1179 ----
// Checking access rights
VARIANT_BOOL vtbIsWritable=VARIANT_FALSE;
+ VARIANT_BOOL vtbIsReadOnly=VARIANT_FALSE;
COMTHROW( ccpObject->get_IsWritable(&vtbIsWritable));
+ COMTHROW( ccpObject->HasReadOnlyAccess( &vtbIsReadOnly));
! if (vtbIsWritable != VARIANT_TRUE || vtbIsReadOnly == VARIANT_TRUE)
{
// Read only object
***************
*** 1203,1242 ****
/////////////// If it is an FCO cast it //////////////
! // If not an FCO
! if(ObjectProxy.m_TypeInfo==OBJTYPE_FOLDER)return;
! CComQIPtr<IMgaFCO> ccpMgaFCO(ObjectProxy.m_pMgaObject);
! if(!ccpMgaFCO)return; // Not an FCO
!
! pMgaContext->BeginTransaction();
! // Is it instance?
! VARIANT_BOOL vtbIsInstance=VARIANT_FALSE;
! COMTHROW(ccpMgaFCO->get_IsInstance(&vtbIsInstance));
! if(vtbIsInstance!=VARIANT_TRUE)
! {
! CComPtr<IMgaFCO> ccpBaseType;
! COMTHROW(ccpMgaFCO->get_BaseType(&ccpBaseType));
- if(!ccpBaseType)
- {
- // Not derived
}
else
{
! // Derived
! cState|=0x0008;
! }
!
! }
! else
! {
! // Instance
! cState|=0x0004;
! }
! pMgaContext->CommitTransaction();
--- 1205,1245 ----
/////////////// If it is an FCO cast it //////////////
! // If not an Folder deal with Subtype/instance flags
! if(ObjectProxy.m_TypeInfo!=OBJTYPE_FOLDER)
! {
! CComQIPtr<IMgaFCO> ccpMgaFCO(ObjectProxy.m_pMgaObject);
! if(!ccpMgaFCO)return; // Not an FCO
!
! pMgaContext->BeginTransaction();
! // Is it instance?
! VARIANT_BOOL vtbIsInstance=VARIANT_FALSE;
! COMTHROW(ccpMgaFCO->get_IsInstance(&vtbIsInstance));
! if(vtbIsInstance!=VARIANT_TRUE)
! {
! CComPtr<IMgaFCO> ccpBaseType;
! COMTHROW(ccpMgaFCO->get_BaseType(&ccpBaseType));
! if(!ccpBaseType)
! {
! // Not derived
! }
! else
! {
! // Derived
! cState|=0x0008;
! }
}
else
{
! // Instance
! cState|=0x0004;
! }
! pMgaContext->CommitTransaction();
! } // if not folder
Index: GMEActiveBrowser.rc
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/GMEActiveBrowser/GMEActiveBrowser.rc,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** GMEActiveBrowser.rc 14 Feb 2006 18:50:15 -0000 1.14
--- GMEActiveBrowser.rc 13 Mar 2006 19:24:24 -0000 1.15
***************
*** 345,349 ****
MENUITEM "&Preferences", ID_POPUP_PREFERENCES
MENUITEM "&Registry...", ID_POPUP_REGISTRY
- MENUITEM "Show in Parent", ID_POPUP_SHOWINPARENT
MENUITEM "Attach Library...", ID_POPUP_ATTACH_LIBRARY
MENUITEM "Refresh Library", ID_POPUP_REFRESH_LIBRARY
--- 345,348 ----
***************
*** 386,389 ****
--- 385,394 ----
END
MENUITEM "&Interpret", ID_POPUP_INTERPRET
+ POPUP "Access"
+ BEGIN
+ MENUITEM "Read Only", ID_POPUP_READONLY
+ MENUITEM "Read Write", ID_POPUP_READWRITE
+ END
+ MENUITEM "View in Parent", ID_POPUP_SHOWINPARENT
MENUITEM SEPARATOR
MENUITEM "&Help", ID_POPUP_HELP
- Previous message: [GME-commit]
GMESRC/GME/Mga MgaCheck.cpp,1.7,1.8 MgaComplexOps.cpp,1.15,1.16
MgaFCO.cpp,1.34,1.35 MgaFCO.h,1.25,1.26 MgaGeneric.h,1.8,1.9
- Next message: [GME-commit]
GMESRC/GME/Parser MgaDumper.cpp,1.27,1.28 MgaParser.cpp,1.31,1.32
MgaParser.h,1.15,1.16 mga.dtd,1.11,1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the GME-commit
mailing list