1 //---------------------------------------------------------------------------
4 //---------------------------------------------------------------------------
6 #include <Controls.hpp>
7 #include <StdCtrls.hpp>
10 #include "../DCHook/DCHook.h"
11 #include <ExtCtrls.hpp>
13 #include <Graphics.hpp>
14 //---------------------------------------------------------------------------
16 #include "StringLib.h"
18 #define WM_POPUP (WM_APP+0x200)
19 #define WM_NOTIFYICON (WM_APP+0x201)
20 #define WM_TOGGLE (WM_APP+0x202)
21 #define UM_SHORTCUT (WM_APP+33)
22 #define WM_MOVESEND (WM_APP+0x208) // DCH_MOVESEND
\82Ì
\91ã
\82í
\82è
\82ÉPostMessage
\82Å
\91\97\82é
24 class TDCHookMainForm : public TForm
27 __published: // IDE
\8aÇ
\97\9d\82Ì
\83R
\83\93\83|
\81[
\83l
\83\93\83g
43 TPopupMenu *pmTrayIcon;
51 TMenuItem *miEnablePopup;
57 TMenuItem *miClickOnly;
64 TMenuItem *miIncSearch;
68 TMenuItem *miInstallMODI;
69 TTimer *tmMODIInstallCheck;
71 TMenuItem *miCheckLatest;
74 void __fastcall miHookClick(TObject *Sender);
75 void __fastcall miUnhookClick(TObject *Sender);
76 void __fastcall miExitClick(TObject *Sender);
77 void __fastcall miTestClick(TObject *Sender);
78 void __fastcall miDdeTestClick(TObject *Sender);
79 void __fastcall FormCreate(TObject *Sender);
80 void __fastcall miAboutClick(TObject *Sender);
81 void __fastcall miOptionClick(TObject *Sender);
82 void __fastcall pmTrayIconPopup(TObject *Sender);
83 void __fastcall miEnablePopupClick(TObject *Sender);
84 void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
85 void __fastcall BootTimerTimer(TObject *Sender);
86 void __fastcall ImageMouseUp(TObject *Sender, TMouseButton Button,
87 TShiftState Shift, int X, int Y);
88 void __fastcall FormKeyPress(TObject *Sender, char &Key);
89 void __fastcall TestTimerTimer(TObject *Sender);
90 void __fastcall btnOKClick(TObject *Sender);
91 void __fastcall ImageMouseDown(TObject *Sender, TMouseButton Button,
92 TShiftState Shift, int X, int Y);
93 void __fastcall ImageMouseMove(TObject *Sender, TShiftState Shift, int X,
95 void __fastcall miClickOnlyClick(TObject *Sender);
96 void __fastcall miReloadClick(TObject *Sender);
97 void __fastcall miCloseClick(TObject *Sender);
98 void __fastcall tmMenuCloseTimer(TObject *Sender);
99 void __fastcall tmNotifyTimer(TObject *Sender);
100 void __fastcall tmPopupTimer(TObject *Sender);
101 void __fastcall miReadMeClick(TObject *Sender);
102 void __fastcall miIncSearchClick(TObject *Sender);
103 void __fastcall tmMouseMoveTimer(TObject *Sender);
104 void __fastcall miConfigClick(TObject *Sender);
105 void __fastcall tmMODIInstallCheckTimer(TObject *Sender);
106 void __fastcall tmMODINotifyTimer(TObject *Sender);
107 void __fastcall miCheckLatestClick(TObject *Sender);
108 void __fastcall miOCRTextClick(TObject *Sender);
109 void __fastcall tmReInitTimer(TObject *Sender);
110 private: //
\83\86\81[
\83U
\81[
\90é
\8c¾
111 //void __fastcall IdleHandler(TObject *sender, bool &done);
116 class TDCHookLoader *hDll;
120 // Popup Configuration //
122 AnsiString GroupName;
126 int CaptureMode; // 0:conventional 1:use AMODI
127 bool AMODIAvail; // AMODI available or not
128 AnsiString AMODIPath;
130 public: //
\83\86\81[
\83U
\81[
\90é
\8c¾
131 __fastcall TDCHookMainForm(TComponent* Owner);
132 void EvCopyData(TMessage&);
137 void EvToggle( TMessage & );
138 void EvShortcut( TMessage & );
139 void EvGetVersion( TMessage & );
151 bool DoPopup( const tchar *text, const tchar *prevtext, bool movesend );
155 void EvPopup(TMessage &);
157 void EvMoveSend(TMessage &);
158 void EvMoveSend(bool enable);
160 // Tray Icon Control //
161 void RegisterTrayIcon( bool flag );
162 void EvNotifyIcon( TMessage & );
164 void EnableClickOnly( bool enable );
165 void DokoPopMenu( bool all );
168 void __fastcall miDicGroup(TObject *Sender);
169 void OpenDicGroup( const char *name );
170 TDdeClientConv *OpenPdic( const char *topic );
171 void ClosePdic( TDdeClientConv *dde );
173 // WM_COPYDATA control //
175 LRESULT SendCopyData( HWND hwnd, int message, const char *str );
183 VCL_MESSAGE_HANDLER(WM_COPYDATA, TMessage, EvCopyData)
184 VCL_MESSAGE_HANDLER(WM_POPUP, TMessage, EvPopup)
185 VCL_MESSAGE_HANDLER(WM_MOVESEND, TMessage, EvMoveSend)
186 VCL_MESSAGE_HANDLER(WM_NOTIFYICON, TMessage, EvNotifyIcon)
187 VCL_MESSAGE_HANDLER(WM_TOGGLE, TMessage, EvToggle)
188 VCL_MESSAGE_HANDLER(UM_SHORTCUT, TMessage, EvShortcut)
189 VCL_MESSAGE_HANDLER(WM_GET_VERSION, TMessage, EvGetVersion)
190 END_MESSAGE_MAP(TForm)
192 //---------------------------------------------------------------------------
193 extern PACKAGE TDCHookMainForm *DCHookMainForm;
194 //---------------------------------------------------------------------------