コード例 #1
0
ファイル: MapController.cs プロジェクト: rootix/Billapong
 /// <summary>
 /// Determines whether a callback is registered to a specific map.
 /// </summary>
 /// <param name="mapId">The map identifier.</param>
 /// <param name="callback">The callback.</param>
 /// <returns>Boolean value if the callback for the map is registered or not</returns>
 public bool IsCallbackRegistered(long mapId, IMapEditorCallback callback)
 {
     lock (CallbackLockObject)
     {
         if (!this.editors.ContainsKey(mapId))
         {
             return(false);
         }
         var editor = this.editors[mapId];
         return(editor.Callbacks.Contains(callback));
     }
 }
コード例 #2
0
ファイル: MapController.cs プロジェクト: rootix/Billapong
        /// <summary>
        /// Unregisters a callback form a specific map.
        /// </summary>
        /// <param name="id">The identifier.</param>
        /// <param name="callback">The callback.</param>
        public void UnregisterCallback(long id, IMapEditorCallback callback)
        {
            lock (CallbackLockObject)
            {
                if (!this.editors.ContainsKey(id))
                {
                    return;
                }

                var editor = this.editors[id];
                editor.Callbacks.Remove(callback);
            }
        }
コード例 #3
0
ファイル: MapController.cs プロジェクト: rootix/Billapong
        /// <summary>
        /// Registers a callback to a specific map.
        /// </summary>
        /// <param name="id">The identifier.</param>
        /// <param name="callback">The callback.</param>
        public void RegisterCallback(long id, IMapEditorCallback callback)
        {
            lock (CallbackLockObject)
            {
                MapEditor editor;
                if (this.editors.ContainsKey(id))
                {
                    editor = this.editors[id];
                }
                else
                {
                    editor = new MapEditor();
                    this.editors.Add(id, editor);
                }

                editor.Callbacks.Add(callback);
            }
        }