예제 #1
0
        /// <summary>
        /// Overridden function.
        /// </summary>
        /// <returns></returns>
        public override EditorPluginInfo GetPluginInformation()
        {
            // Specifically for entities this version is a bit more complicated
              // as the underlying entity class can be from a different plugin than this
              if (_cachedEntitySourcePluginInfo.ContainsKey(_entityClass))
            return _cachedEntitySourcePluginInfo[_entityClass];

              EditorPluginInfo newInfo = new EditorPluginInfo();
              _cachedEntitySourcePluginInfo.Add(_entityClass, newInfo);
              StringCollection uniqueNames = new StringCollection();
              EditorManager.EngineManager.TypeManager_GetClassPluginNames(_entityClass, uniqueNames);
              newInfo.NativePluginNames = new string[uniqueNames.Count];
              uniqueNames.CopyTo(newInfo.NativePluginNames,0);
              return newInfo;
        }
예제 #2
0
        /// <summary>
        /// Overridden function
        /// </summary>
        /// <returns></returns>
        public override EditorPluginInfo GetPluginInformation()
        {
            if (DecorationModels.Count==0)
            return EditorPlugin.EDITOR_PLUGIN_INFO;

              // need to collect plugin names from decoration types:
              EditorPluginInfo info = new EditorPluginInfo();
              ArrayList plugins = new ArrayList(2);
              plugins.AddRange(EditorPlugin.EDITOR_PLUGIN_INFO.NativePluginNames);
              foreach (DecorationModelResource model in DecorationModels)
            model.AddPluginNames(plugins);

              info.NativePluginNames = (string[])plugins.ToArray(typeof(string));
              return info;
        }