protected override Action <ITextControl> ExecutePsiTransaction(ISolution solution, IProgressIndicator progress)
            {
                if (myIsSerialized)
                {
                    AttributeUtil.RemoveAttributeFromAllDeclarations(myFieldDeclaration, KnownTypes.SerializeField);
                    if (myFieldDeclaration.GetAccessRights() == AccessRights.PUBLIC)
                    {
                        AttributeUtil.AddAttributeToAllDeclarations(myFieldDeclaration,
                                                                    PredefinedType.NONSERIALIZED_ATTRIBUTE_CLASS, myModule, myElementFactory);
                    }
                }
                else
                {
                    if (myFieldDeclaration.IsStatic)
                    {
                        ModifiersUtil.SetStatic(myMultipleFieldDeclaration, false);
                    }
                    if (myFieldDeclaration.IsReadonly)
                    {
                        ModifiersUtil.SetReadonly(myMultipleFieldDeclaration, false);
                    }

                    AttributeUtil.RemoveAttributeFromAllDeclarations(myFieldDeclaration,
                                                                     PredefinedType.NONSERIALIZED_ATTRIBUTE_CLASS);
                    if (myFieldDeclaration.GetAccessRights() != AccessRights.PUBLIC)
                    {
                        AttributeUtil.AddAttributeToAllDeclarations(myFieldDeclaration, KnownTypes.SerializeField,
                                                                    myModule, myElementFactory);
                    }
                }

                return(null);
            }
示例#2
0
            protected override Action <ITextControl> ExecutePsiTransaction(ISolution solution, IProgressIndicator progress)
            {
                var fieldDeclaration = (IFieldDeclaration)myMultipleFieldDeclaration.Declarators[0];

                if (myExistingAttribute != null)
                {
                    CSharpSharedImplUtil.RemoveAttribute(fieldDeclaration, myExistingAttribute);
                }
                else
                {
                    AttributeUtil.AddAttributeToAllDeclarations(fieldDeclaration, KnownTypes.HideInInspector,
                                                                myModule, myElementFactory);
                }

                return(null);
            }