using System;
using System.Runtime.InteropServices;
using Muchinfo.MTPClient.Data;
using Muchinfo.MTPClient.Data.Model;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Windows.Input;
namespace Muchinfo.MTPClient.IService
{
public interface ISystemService
{
#region Methods
/////
///// 获取行情顶部类别按钮
/////
///// List{QuoteCategory}.
//List GetQuoteCategoryList();
///
/// 获取行情底部分类菜单
///
/// List{QuoteCategoryItem}.
List GetQuoteCategoryMenus();
///
/// 获取多资金账户菜单
///
///
List GetCaptialAccountMenus();
///
/// 获取系统菜单
///
/// List{SysMenuItem}.
ObservableCollection GetSysMenuItems(List accessFuncMenus,ICommand command);
///
/// 获取工具栏按钮
///
/// List{ToolbarGroup}.
List GetToolbarGroups();
///
/// 获取分析图表右键菜单
///
/// if set to true [is my selected].
/// if set to true [is comparison].
/// List{SysContextMenuItem}.
IEnumerable GetQuoteChartContextMenuItems(bool isMySelected, bool isNotComparison);
///
/// 获取行情列表右键菜单
///
/// if set to true [is my selected].
/// List{SysContextMenuItem}.
IEnumerable GetQuoteListContextMenuItems(bool isMySelected);
///
/// 获取行情列表右键交易菜单
///
/// List{SysContextMenuItem}.
IEnumerable BuildQuoteTradeContextMenuItems(bool isMySelected);
///
/// 获取挂牌右键菜单
///
///
IEnumerable BuildListingContextMenuItems();
///
/// 获取抬头列表
///
/// Type of the market.
/// IEnumerable{QuoteListHeader}.
IEnumerable GetQuoteListHeaders(eTradeMode marketType);
///
/// 获取交割商品抬头列表
///
/// Type of the market.
/// IEnumerable{QuoteListHeader}.
IEnumerable GetDeliveryQuoteListHeaders(eTradeMode marketType);
///
/// 根据交易模式获取列表抬头类型
///
/// Type of the market.
/// QuoteListHeaderType.
QuoteListHeaderType GetQuoteListHeaderType(eTradeMode marketType);
///
/// 创建图表周期
///
///
List GetAnalysisCycle();
///
/// 根据市场创建菜单
///
/// IEnumerable{SysMenuItem}.
IEnumerable GetMarketMenuItems(bool IsListing);
///
/// 创建
///
/// 返回图表菜单
List BuildFormChartMenuItems();
List GetQuoteChartMenuItems(bool isMySelected, bool isNotComparison, ICommand command);
///
/// 查询MTP系统参数
///
///
///
void QeuryMtpSystemConfigs(string configid, Action> successAction, Action errorAction);
///
/// 获取主页面设置的命令
///
///
///
List GetHomeKeyBindings(ICommand command);
#region 资源获取
///
/// 获取资源版本号
///
///
///
void QueryResxVer(Action> successAction, Action errorAction);
///
/// 获取资源描述内容
///
/// 资源类型
///
///
void QueryResxDescrition(ResxVerType resxVerType, Action,ResxVerType> successAction,
Action errorAction);
#endregion
///
/// 获取当前指标
///
///
List GetIndicator();
#endregion Methods
}
}