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;
73 void __fastcall miHookClick(TObject *Sender);
74 void __fastcall miUnhookClick(TObject *Sender);
75 void __fastcall miExitClick(TObject *Sender);
76 void __fastcall miTestClick(TObject *Sender);
77 void __fastcall miDdeTestClick(TObject *Sender);
78 void __fastcall FormCreate(TObject *Sender);
79 void __fastcall miAboutClick(TObject *Sender);
80 void __fastcall miOptionClick(TObject *Sender);
81 void __fastcall pmTrayIconPopup(TObject *Sender);
82 void __fastcall miEnablePopupClick(TObject *Sender);
83 void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
84 void __fastcall BootTimerTimer(TObject *Sender);
85 void __fastcall ImageMouseUp(TObject *Sender, TMouseButton Button,
86 TShiftState Shift, int X, int Y);
87 void __fastcall FormKeyPress(TObject *Sender, char &Key);
88 void __fastcall TestTimerTimer(TObject *Sender);
89 void __fastcall btnOKClick(TObject *Sender);
90 void __fastcall ImageMouseDown(TObject *Sender, TMouseButton Button,
91 TShiftState Shift, int X, int Y);
92 void __fastcall ImageMouseMove(TObject *Sender, TShiftState Shift, int X,
94 void __fastcall miClickOnlyClick(TObject *Sender);
95 void __fastcall miReloadClick(TObject *Sender);
96 void __fastcall miCloseClick(TObject *Sender);
97 void __fastcall tmMenuCloseTimer(TObject *Sender);
98 void __fastcall tmNotifyTimer(TObject *Sender);
99 void __fastcall tmPopupTimer(TObject *Sender);
100 void __fastcall miReadMeClick(TObject *Sender);
101 void __fastcall miIncSearchClick(TObject *Sender);
102 void __fastcall tmMouseMoveTimer(TObject *Sender);
103 void __fastcall miConfigClick(TObject *Sender);
104 void __fastcall tmMODIInstallCheckTimer(TObject *Sender);
105 void __fastcall tmMODINotifyTimer(TObject *Sender);
106 void __fastcall miCheckLatestClick(TObject *Sender);
107 void __fastcall miOCRTextClick(TObject *Sender);
108 private: //
\83\86\81[
\83U
\81[
\90é
\8c¾
109 //void __fastcall IdleHandler(TObject *sender, bool &done);
114 class TDCHookLoader *hDll;
118 // Popup Configuration //
120 AnsiString GroupName;
124 int CaptureMode; // 0:conventional 1:use AMODI
125 bool AMODIAvail; // AMODI available or not
126 AnsiString AMODIPath;
128 public: //
\83\86\81[
\83U
\81[
\90é
\8c¾
129 __fastcall TDCHookMainForm(TComponent* Owner);
130 void EvCopyData(TMessage&);
135 void EvToggle( TMessage & );
136 void EvShortcut( TMessage & );
137 void EvGetVersion( TMessage & );
149 bool DoPopup( const tchar *text, const tchar *prevtext, bool movesend );
153 void EvPopup(TMessage &);
155 void EvMoveSend(TMessage &);
156 void EvMoveSend(bool enable);
158 // Tray Icon Control //
159 void RegisterTrayIcon( bool flag );
160 void EvNotifyIcon( TMessage & );
162 void EnableClickOnly( bool enable );
163 void DokoPopMenu( bool all );
166 void __fastcall miDicGroup(TObject *Sender);
167 void OpenDicGroup( const char *name );
168 TDdeClientConv *OpenPdic( const char *topic );
169 void ClosePdic( TDdeClientConv *dde );
171 // WM_COPYDATA control //
173 LRESULT SendCopyData( HWND hwnd, int message, const char *str );
181 VCL_MESSAGE_HANDLER(WM_COPYDATA, TMessage, EvCopyData)
182 VCL_MESSAGE_HANDLER(WM_POPUP, TMessage, EvPopup)
183 VCL_MESSAGE_HANDLER(WM_MOVESEND, TMessage, EvMoveSend)
184 VCL_MESSAGE_HANDLER(WM_NOTIFYICON, TMessage, EvNotifyIcon)
185 VCL_MESSAGE_HANDLER(WM_TOGGLE, TMessage, EvToggle)
186 VCL_MESSAGE_HANDLER(UM_SHORTCUT, TMessage, EvShortcut)
187 VCL_MESSAGE_HANDLER(WM_GET_VERSION, TMessage, EvGetVersion)
188 END_MESSAGE_MAP(TForm)
190 //---------------------------------------------------------------------------
191 extern PACKAGE TDCHookMainForm *DCHookMainForm;
192 //---------------------------------------------------------------------------