Nemerle.VisualStudio.Project.NemerleProjectNode.GetSpecificEditorProperty C# (CSharp) Method

GetSpecificEditorProperty() public method

public GetSpecificEditorProperty ( string mkDocument, int propid, object &result ) : int
mkDocument string
propid int
result object
return int
        public int GetSpecificEditorProperty(string mkDocument, int propid, out object result)
        {
            // Initialize output params.
            //
            result = null;

            // Validate input.
            //
            if (string.IsNullOrEmpty(mkDocument))
                throw new ArgumentException("Was null or empty", "mkDocument");

            // Make sure that the document moniker passed to us is part of this project.
            // We also don't care if it is not a nemerle file node.
            //
            uint itemid;

            ErrorHandler.ThrowOnFailure(ParseCanonicalName(mkDocument, out itemid));

            HierarchyNode hierNode = NodeFromItemId(itemid);

            if (hierNode == null || ((hierNode as NemerleFileNode) == null))
                return VSConstants.E_NOTIMPL;

            switch (propid)
            {
                case (int)__VSPSEPROPID.VSPSEPROPID_UseGlobalEditorByDefault:
                    // We do not want to use global editor for form files.
                    //
                    result = true;
                    break;

                case (int)__VSPSEPROPID.VSPSEPROPID_ProjectDefaultEditorName:
                    result = "Nemerle Form Editor";
                    break;
            }

            return VSConstants.S_OK;
        }