using System;
using System.Collections.Generic;

public abstract class BaseMaidPhotoWindow : PhotoWindow, InterfaceMaidPhotoWindow
{
	public override void SetWindowManager(BasePhotoWindowManager mgr)
	{
		NDebug.Assert(mgr as PhotoWindowManager != null, "windowマネージャーはPhotoWindowManager限定です");
		base.SetWindowManager(mgr);
	}

	public virtual void OnMaidChangeEvent(Maid maid)
	{
	}

	public virtual void OnMaidAddEvent(Maid maid, bool is_deserialize_load)
	{
	}

	public virtual void OnFinishMaidDeserializeLoad()
	{
	}

	public virtual void OnMaidRemoveEvent(Maid maid)
	{
	}

	public virtual void OnMaidRemoveEventPrev(Maid maid)
	{
	}

	public virtual void OnReset()
	{
	}

	public virtual void OnSerializeEvent()
	{
	}

	public abstract void OnDeserializeEvent();

	public Dictionary<string, string> GetMaidStoreData(Maid maid)
	{
		return this.mgr.GetMaidStoreData(maid, this);
	}

	public Dictionary<string, string> GetMaidStoreData(string maid_guid)
	{
		return this.mgr.GetMaidStoreData(maid_guid, this);
	}

	public PhotoWindowManager.WindowType window_type
	{
		get
		{
			return this.Type;
		}
	}

	public new PhotoWindowManager mgr
	{
		get
		{
			return base.mgr as PhotoWindowManager;
		}
	}
}
