//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
namespace GameFramework.UI
{
///
/// 界面接口。
///
public interface IUIForm
{
///
/// 获取界面序列编号。
///
int SerialId
{
get;
}
///
/// 获取界面资源名称。
///
string UIFormAssetName
{
get;
}
///
/// 获取界面实例。
///
object Handle
{
get;
}
///
/// 获取界面所属的界面组。
///
IUIGroup UIGroup
{
get;
}
///
/// 获取界面在界面组中的深度。
///
int DepthInUIGroup
{
get;
}
///
/// 获取是否暂停被覆盖的界面。
///
bool PauseCoveredUIForm
{
get;
}
///
/// 初始化界面。
///
/// 界面序列编号。
/// 界面资源名称。
/// 界面所属的界面组。
/// 是否暂停被覆盖的界面。
/// 是否是新实例。
/// 用户自定义数据。
void OnInit(int serialId, string uiFormAssetName, IUIGroup uiGroup, bool pauseCoveredUIForm, bool isNewInstance, object userData);
///
/// 界面回收。
///
void OnRecycle();
///
/// 界面打开。
///
/// 用户自定义数据。
void OnOpen(object userData);
///
/// 界面关闭。
///
/// 是否是关闭界面管理器时触发。
/// 用户自定义数据。
void OnClose(bool isShutdown, object userData);
///
/// 界面暂停。
///
void OnPause();
///
/// 界面暂停恢复。
///
void OnResume();
///
/// 界面遮挡。
///
void OnCover();
///
/// 界面遮挡恢复。
///
void OnReveal();
///
/// 界面激活。
///
/// 用户自定义数据。
void OnRefocus(object userData);
///
/// 界面轮询。
///
/// 逻辑流逝时间,以秒为单位。
/// 真实流逝时间,以秒为单位。
void OnUpdate(float elapseSeconds, float realElapseSeconds);
///
/// 界面深度改变。
///
/// 界面组深度。
/// 界面在界面组中的深度。
void OnDepthChanged(int uiGroupDepth, int depthInUIGroup);
}
}