中国象棋控件 2.0.15
载入中...
�索中...
未找到
ChineseChessActiveX.idl
1// ChineseChessActiveX.idl: ActiveX ¿Ø¼þÏîÄ¿µÄÀàÐÍ¿âÔ´¡£
2
3// ´ËÎļþ½«ÓÉ MIDL ±àÒëÆ÷¹¤¾ß´¦ÀíÒÔ
4// Éú³ÉÀàÐÍ¿â(ChineseChessActiveX.tlb)£¬¸ÃÀàÐͿ⽫³ÉΪ
5// ChineseChessActiveX.ocx¡£
6
7#include <olectl.h>
8#include <idispids.h>
9
10[ uuid(80e92be0-a67b-421b-8ef7-8f42414880c0), version(1.0),
11 helpfile("ÖйúÏóÆå¿Ø¼þ.hlp"),
12 helpstring("ÖйúÏóÆå¿Ø¼þ"), /*ÏÔʾÔÚÒýÓÃÁбí¿òÖÐ*/
13 control ]
14library ChineseChessActiveXLib
15{
16 importlib(STDOLE_TLB);
17 importlib(STDTYPE_TLB);
18
19 //ÆåÅ̲¼¾Ö:Ïê¼û¡¶ÏóÆå¾ºÈü¹æÔò(2011)¡·µÚÒ»Õ µÚ1Ìõ
20 typedef enum _ENUM_BoardLayout {
21 NoQi = 0,
22 OnlyTopBlack = 1,
23 OnlyBottomRed = 2,
24 SwapRedBetweenBlack = 4,
25 OnlyTopRed = OnlyBottomRed | SwapRedBetweenBlack,
26 OnlyBottomBlack = OnlyTopBlack | SwapRedBetweenBlack,
27 TopBlackAndBottomRed = OnlyTopBlack | OnlyBottomRed,
28 TopRedAndBottomBlack = TopBlackAndBottomRed | SwapRedBetweenBlack
29 } ENUM_BoardLayout;
30
31 typedef enum _ENUM_QiZi {
32 RShuai = 1, //ºì˧
33 RShi = 2, //ºìÊË
34 RXiang = 3, //ºìÏà
35 RMa = 4, //ºìÂí
36 RChe = 5, //ºì³µ
37 RPao = 6, //ºìÅÚ
38 RBing = 7, //ºì±ø
39 NoQiZi = 0, //ÎÞ×Ó
40 BShuai = 0x8 | RShuai, //ºÚ˧
41 BShi = 0x08 | RShi, //ºÚÊË
42 BXiang = 0x08 | RXiang, //ºÚÏà
43 BMa = 0x08 | RMa, //ºÚÂí
44 BChe = 0x08 | RChe, //ºÚ³µ
45 BPao = 0x08 | RPao, //ºÚÅÚ
46 BBing = 0x08 | RBing //ºÚ±ø
47 } ENUM_QiZi;
48
49 // CChineseChessActiveXCtrl µÄÖ÷µ÷¶È½Ó¿Ú
50 [
51 uuid(7192fb6d-7455-4da8-b3ac-645dd60557f3),
52 helpstring("ÖйúÏóÆå¿Ø¼þ - ·Ö·¢½Ó¿Ú")
53 ]
55 {
56 properties:
57 [id(1), helpstring("ÆåÅÌÑÕÉ«")] OLE_COLOR QiPangColor;
58 [id(2), helpstring("ÆåÅÌÌáʾ¿òÑÕÉ«")] OLE_COLOR TiShiBoxColor;
59 [id(3), helpstring("ÆåÅ̲¼¾Ö")] ENUM_BoardLayout BoardLayout;
60 [id(4), helpstring("ÔÊÐíÌáʾÒô")] VARIANT_BOOL EnablePromptSound;
61 [id(5), helpstring("ÔÊÐíÌáʾÏûÏ¢")] VARIANT_BOOL EnablePromptMessage;
62 [id(11), helpstring("ÉèÖú췽Ãû×Ö")] BSTR RedName;
63 [id(12), helpstring("ÉèÖúڷ½Ãû×Ö")] BSTR BlackName;
64 [id(13), helpstring("ÉèÖÿªÊ¼Ê±¼ä")] LONG StartTime;
65 [id(14), helpstring("ÉèÖýáÊøÊ±¼ä")] LONG EndTime;
66
67 methods:
68 [id(DISPID_ABOUTBOX)] void AboutBox();
69 [id(6), helpstring("×߯å")] VARIANT_BOOL GoChess(SHORT i, SHORT j);
70 [id(7), helpstring("±£´æÆå¾Ö")] VARIANT_BOOL SaveChessGame(BSTR szFile);
71 [id(8), helpstring("¼ÓÔØÆå¾Ö")] VARIANT_BOOL LoadChessGame(BSTR szFile);
72 [id(9), helpstring("ÏÂÒ»²½")] VARIANT_BOOL NextStep();
73 [id(10), helpstring("ÉÏÒ»²½")] VARIANT_BOOL PreviouStep();
74 [id(15), helpstring("Ôö¼ÓÆå¾ÖÖ¸¶¨µÄ±êÇ©")] VARIANT_BOOL AddGameTag(BSTR szTag, BSTR szVal);
75 [id(16), helpstring("µÃµ½Æå¾ÖÖ¸¶¨µÄ±êÇ©")] BSTR GetgameTag([in] BSTR szTag);
76 };
77
78 // CChineseChessActiveXCtrl µÄʼþµ÷¶È½Ó¿Ú
79
80 [
81 uuid(0850de98-fc76-4b94-9bbe-e2e59e0fe0ea),
82 helpstring("ÖйúÏóÆå¿Ø¼þ - ʼþ½Ó¿Ú")
83 ]
85 {
86 properties:
87 // ʼþ½Ó¿ÚûÓÐÈκÎÊôÐÔ
88
89 methods:
90 [id(1)] void EventGoChess(SHORT i, SHORT j, LONG qz);
91 };
92
93 // CChineseChessActiveXCtrl µÄÀàÐÅÏ¢
94 [
95 uuid(e4e060cb-a3aa-4278-b1ed-ce5020c42ec7),
96 helpstring("ÖйúÏóÆå¿Ø¼þ")
97 ]
99 {
100 [default] dispinterface _DChineseChessActiveX;
101 [default, source] dispinterface _DChineseChessActiveXEvents;
102 };
103
104};