1 /* # skkinput (Simple Kana-Kanji Input) 2 * 3 * This file is part of skkinput. 4 * Copyright (C) 2002 5 * Takashi SAKAMOTO (PXG01715@nifty.ne.jp) 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2, or (at your option) 10 * any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with skkinput; see the file COPYING. If not, write to 19 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 20 */ 21 #if !defined (lispfunc_h) 22 #define lispfunc_h 23 24 #include "lispmgr.h" 25 #include "Char.h" 26 #include "lentity.h" 27 #include "lbind.h" 28 #include "kfile.h" 29 #include "lispyevent.h" 30 31 struct tagTLispBind ; 32 struct tagTLispEntity ; 33 struct tagTLispManager ; 34 35 /* Constants */ 36 enum { 37 /* �ǿ��Ǥ��뤳�ȡ�*/ 38 LISPMGR_SIZE_SYMBOL_HASH = 127, 39 LISPMGR_SIZE_INTEGER_HASH = 13, 40 LISPMGR_SIZE_SUBR_HASH = 23, 41 MAX_NEST_COUNT = 128, 42 } ; 43 44 enum { 45 LISPMGR_INDEX_NIL = 0, 46 LISPMGR_INDEX_T, 47 LISPMGR_INDEX_MINUS, 48 LISPMGR_INDEX_LAMBDA, 49 LISPMGR_INDEX_MACRO, 50 LISPMGR_INDEX_OPTIONAL, 51 LISPMGR_INDEX_REST, 52 LISPMGR_INDEX_KEYMAP, 53 LISPMGR_INDEX_ERROR, 54 LISPMGR_INDEX_EXIT, 55 LISPMGR_INDEX_QUIT, 56 LISPMGR_INDEX_QUIT_FLAG, 57 LISPMGR_INDEX_INHIBIT_QUIT, 58 LISPMGR_INDEX_FEATURES, 59 LISPMGR_INDEX_INTERACTIVE, 60 LISPMGR_INDEX_THIS_COMMAND, 61 LISPMGR_INDEX_LAST_COMMAND, 62 LISPMGR_INDEX_UNREAD_COMMAND_EVENTS, 63 LISPMGR_INDEX_PRE_COMMAND_HOOK, 64 LISPMGR_INDEX_POST_COMMAND_HOOK, 65 LISPMGR_INDEX_LAST_COMMAND_CHAR, 66 LISPMGR_INDEX_LAST_COMMAND_EVENT, 67 LISPMGR_INDEX_UNREAD_COMMAND_CHAR, 68 LISPMGR_INDEX_GLOBAL_MAP, 69 LISPMGR_INDEX_MINIBUFFER_LOCAL_MAP, 70 LISPMGR_INDEX_MINOR_MODE_MAP_ALIST, 71 LISPMGR_INDEX_WRONG_TYPE_ARGUMENT, 72 LISPMGR_INDEX_BUFFER_FILE_NAME, 73 LISPMGR_INDEX_MODE_LINE_FORMAT, 74 LISPMGR_INDEX_LOAD_PATH, 75 LISPMGR_INDEX_KILL_RING, 76 LISPMGR_INDEX_KILL_REGION, 77 LISPMGR_INDEX_KILL_RING_YANK_POINTER, 78 LISPMGR_INDEX_YANK, 79 80 LISPMGR_INDEX_CODING_SYSTEM_FOR_READ, 81 LISPMGR_INDEX_CODING_SYSTEM_FOR_WRITE, 82 LISPMGR_INDEX_EUC_JAPAN, 83 LISPMGR_INDEX_EUC_JP, 84 LISPMGR_INDEX_SHIFT_JIS, 85 LISPMGR_INDEX_JAPANESE_SHIFT_JIS, 86 LISPMGR_INDEX_SJIS, 87 LISPMGR_INDEX_JUNET, 88 LISPMGR_INDEX_ISO2022JP, 89 LISPMGR_INDEX_ISO2022JP2, 90 LISPMGR_INDEX_CTEXT, 91 LISPMGR_INDEX_X_CTEXT, 92 LISPMGR_INDEX_COMPOUND_TEXT, 93 94 LISPMGR_INDEX_SKK_SERVER_HOST, 95 LISPMGR_INDEX_SKK_SERVER_LIST, 96 LISPMGR_INDEX_SKK_PORTNUM, 97 LISPMGR_INDEX_SKK_PROCESS_OKURI_EARLY, 98 LISPMGR_INDEX_J_HENKAN_KEY, 99 LISPMGR_INDEX_J_SEARCH_KEY, 100 LISPMGR_INDEX_J_OKURI_ARI, 101 LISPMGR_INDEX_J_HENKAN_OKURIGANA, 102 LISPMGR_INDEX_J_HENKAN_OKURI_STRICTLY, 103 104 LISPMGR_INDEX_SKK_SERVERS_LIST, 105 106 LISPMGR_SIZE_RESERVED, 107 } ; 108 109 /* Structures */ 110 /* ���Фΰ�̣�ϼ����̤ꡣ 111 * m_iMarker 112 * GC �˻Ȥ��ޡ��� 113 * m_apSymbolListTop 114 * Intern ����Ƥ��륷��ܥ��������Ƥ��롣 115 * m_apIntegerListTop 116 * Ʊ�����ͤ� Integer �� eq �Ǥ���褦�� Integer Entity ����� 117 * ���Ƥ��롣 118 * m_apSubrListTop 119 * ���֥롼���δ����� 120 * m_pOtherEntityListTop 121 * Ʊ�������ݾڤ���ʤ��Ƥ⤫�ޤ�ʤ� Entity �Ϥ��Υꥹ�Ȥˤ� 122 * �ʤ���Ƥ��롣 123 * m_apEntReserved 124 * ���ˤ˻��Ȥ���� Symbol �餫���� Cache ���Ƥ��롣t �� 125 * nil �ʤɡ�Intern ����Ƥ��롣 126 * m_pVoid 127 * ���������Ƥ��Ƥ��ʤ����� (void) �λ��˳�����Ƥ����̤� 128 * �͡� 129 * m_vbufLocalSymbol 130 * �Хåե��������˺��줿���˼�ưŪ���Ѱդ����������ѿ� 131 * ��¸�ߤ����硢�����ѿ��Ĥ��� SYMBOL �����������롣����� 132 * �� void �Ǥ��롣(�ǽ�� default-value �����Τޤ��Ȥ���� 133 * ���֤Ǥ��뤬���������ͤ�����) 134 * make-variable-buffer-local �������ɲä���롣 135 */ 136 struct tagTLispManager { 137 int m_iMarker ; 138 struct tagTLispEntity* m_apSymbolListTop [LISPMGR_SIZE_SYMBOL_HASH] ; 139 struct tagTLispEntity* m_apIntegerListTop [LISPMGR_SIZE_INTEGER_HASH] ; 140 struct tagTLispEntity* m_apSubrListTop [LISPMGR_SIZE_SUBR_HASH] ; 141 struct tagTLispEntity* m_pEntListNamedMutex ; 142 struct tagTLispEntity* m_pEntListNoNameMutex ; 143 struct tagTLispEntity* m_pEntMiscListTop ; 144 struct tagTLispEntity* m_apEntReserved [LISPMGR_SIZE_RESERVED] ; 145 struct tagTLispEntity* m_pEntVoid ; 146 struct tagTLispEntity* m_pEntEmpty ; 147 TVarbuffer m_vbufLocalSymbol ; 148 } ; 149 150 struct tagTLispNumber { 151 Boolean m_fFloatp ; 152 union { 153 float m_fFloat ; 154 long m_lLong ; 155 } m_Value ; 156 } ; 157 158 typedef struct tagTLispNumber TLispNumber ; 159 160 /* lispmgr.kc */ 161 Boolean lispMgr_SetSymbolFunctionValue (TLispManager*, TLispEntity*, TLispEntity*) ; 162 Boolean lispMgr_GetSymbolFunctionValue (TLispManager*, TLispEntity*, TLispEntity** const) ; 163 Boolean lispMgr_SetSymbolFunctionValueWithName (TLispManager*, const Char*, int, TLispEntity*) ; 164 Boolean lispMgr_GetSymbolFunctionValueWithName (TLispManager*, const Char*, int, TLispEntity** const) ; 165 Boolean lispMgr_SetSymbolValue (TLispManager*, TLispEntity*, TLispEntity*) ; 166 Boolean lispMgr_SetSymbolValueWithName (TLispManager*, const Char*, int, TLispEntity*) ; 167 Boolean lispMgr_GetSymbolValue (TLispManager*, TLispEntity*, TLispEntity** const) ; 168 Boolean lispMgr_GetSymbolValueWithName (TLispManager*, const Char*, int, TLispEntity** const) ; 169 Boolean lispMgr_Allocate (TLispManager*, size_t, void*) ; 170 void lispMgr_Deallocate (TLispManager*, void*) ; 171 Boolean lispMgr_AllocateEntity (TLispManager*, size_t, TLispEntity** const) ; 172 Boolean lispMgr_CollectGarbage (TLispManager*) ; 173 Boolean lispMgr_RegisterMisc (TLispManager*, TLispEntity*) ; 174 Boolean lispMgr_UnregisterMisc (TLispManager*, TLispEntity*) ; 175 void lispMgr_DestroyEntity (TLispManager*, TLispEntity*) ; 176 177 /* lispsymbol.c */ 178 Boolean lispMgr_CreateSymbol (TLispManager*, const Char*, int, TLispEntity** const) ; 179 Boolean lispMgr_CreateSymbolA (TLispManager*, const char*, int, TLispEntity** const) ; 180 Boolean lispMgr_InternSymbol (TLispManager*, const Char*, int, TLispEntity** const) ; 181 Boolean lispMgr_InternSymbolA (TLispManager*, const char*, int, TLispEntity** const) ; 182 Boolean lispMgr_CollectSymbolGarbage (TLispManager*) ; 183 Boolean lispMgr_SearchSymbol (TLispManager*, const Char*, int, TLispEntity** const) ; 184 Boolean lispMgr_SearchSymbolA (TLispManager*, const char*, int, TLispEntity** const) ; 185 Boolean lispMgr_UnregisterSymbol (TLispManager*, TLispEntity*) ; 186 Boolean lispMgr_SymbolRequireEvalp (TLispManager*, TLispEntity*) ; 187 188 /* lentity.c */ 189 Boolean lispEntity_Memq (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity**) ; 190 Boolean lispEntity_Member (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity**) ; 191 Boolean lispEntity_Rassoc (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity**) ; 192 Boolean lispEntity_Nconc (TLispManager*, TLispEntity*, TLispEntity**) ; 193 Boolean lispEntity_Equal (TLispManager*, TLispEntity*, TLispEntity*) ; 194 Boolean lispEntity_GetNumberValueOrMarkerPosition (TLispManager*, TLispEntity*, TLispNumber*) ; 195 Boolean lispEntity_GetLength (TLispManager*, TLispEntity*, int*) ; 196 Boolean lispEntity_Format (TLispManager*, const Char*, int, TLispEntity*, TLispEntity**) ; 197 Boolean lispEntity_FormatA (TLispManager*, const char*, int, TLispEntity*, TLispEntity**) ; 198 Boolean lispEntity_PrincStr (TLispManager*, TLispEntity*, TVarbuffer*) ; 199 Boolean lispEntity_Print (TLispManager*, TLispEntity*) ; 200 Boolean lispEntity_Copy (TLispManager*, TLispEntity*, TLispEntity**) ; 201 202 /* lispstring.c */ 203 Boolean lispMgr_CreateString (TLispManager*, const Char*, int, TLispEntity** const) ; 204 Boolean lispMgr_StringToCharList (TLispManager*, TLispEntity*, TLispEntity** const) ; 205 Boolean lispMgr_Concat (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 206 Boolean lispMgr_Substring (TLispManager*, TLispEntity*, long, long, TLispEntity** const) ; 207 Boolean lispEntity_Upcase (TLispManager*, TLispEntity*, TLispEntity** const) ; 208 Boolean lispEntity_Downcase (TLispManager*, TLispEntity*, TLispEntity** const) ; 209 210 /* lisplist.c */ 211 Boolean lispMgr_CreateConscell (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 212 Boolean lispMgr_CreateList (TLispManager*, TLispEntity** const, int, TLispEntity** const) ; 213 Boolean lispMgr_CreateTime (TLispManager*, time_t, TLispEntity** const) ; 214 Boolean lispEntity_PlistGet (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 215 Boolean lispEntity_PlistPut (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 216 Boolean lispEntity_CopyList (TLispManager*, TLispEntity*, TLispEntity** const) ; 217 Boolean lispEntity_Push2List (TLispManager*, TLispConscell*, TLispEntity*) ; 218 219 /* lnum.c */ 220 Boolean lispMgr_CreateInteger (TLispManager*, long, TLispEntity** const) ; 221 Boolean lispMgr_CreateFloat (TLispManager*, float, TLispEntity** const) ; 222 Boolean lispMgr_CollectIntegerGarbage (TLispManager*) ; 223 Boolean lispMgr_MathGreaterThan (TLispManager*, TLispEntity*, TLispEntity*, Boolean*) ; 224 Boolean lispMgr_MathGreaterEqual (TLispManager*, TLispEntity*, TLispEntity*, Boolean*) ; 225 Boolean lispMgr_MathLessThan (TLispManager*, TLispEntity*, TLispEntity*, Boolean*) ; 226 Boolean lispMgr_MathLessEqual (TLispManager*, TLispEntity*, TLispEntity*, Boolean*) ; 227 Boolean lispMgr_MathEqual (TLispManager*, TLispEntity*, TLispEntity*, Boolean*) ; 228 229 /* lvector.c */ 230 Boolean lispMgr_CreateVector (TLispManager*, TLispEntity** const, int, TLispEntity** const) ; 231 Boolean lispMgr_CreateVectorFill (TLispManager*, TLispEntity*, int, TLispEntity** const) ; 232 void lispMgr_DestroyVector (TLispManager*, TLispEntity*) ; 233 Boolean lispMgr_Vconcat (TLispManager*, TLispEntity*, TLispEntity** const) ; 234 235 /* lsubr.c */ 236 Boolean lispMgr_CreateSubr (TLispManager*, struct tagLMCMDINFO const*, TLispEntity** const) ; 237 Boolean lispSubr_GetName (TLispManager*, TLispEntity*, const Char**) ; 238 239 /* parser.kc */ 240 TLispEntity* lispMgr_ParseString (TLispManager*, const Char*, int, int*) ; 241 TLispEntity* lispMgr_ParseStringA (TLispManager*, const char*, int, int*) ; 242 #if defined (WIN32) 243 TLispEntity* lispMgr_ParseFile (TLispManager*, LPCWSTR) ; 244 #else 245 TLispEntity* lispMgr_ParseFile (TLispManager*, const char*) ; 246 #endif 247 248 /* lsub.kc */ 249 Boolean lispMgr_Append (TLispManager*, TLispEntity*, TLispEntity** const) ; 250 Boolean lispMgr_Nreverse (TLispManager*, TLispEntity*, TLispEntity** const ppReturn) ; 251 Boolean lispMgr_Delete (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 252 Boolean lispMgr_Delq (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 253 254 /* lispmarker.c */ 255 Boolean lispMgr_CreateMarker (TLispManager*, TLispEntity** const) ; 256 void lispMgr_DestroyMarker (TLispManager*, TLispEntity*) ; 257 Boolean lispMarker_SetBufferPosition (TLispManager*, TLispEntity*, TLispEntity*, int) ; 258 Boolean lispMarker_SetInsertionType (TLispManager*, TLispEntity*, Boolean) ; 259 Boolean lispMarker_SetNext (TLispManager*, TLispEntity*, TLispEntity*) ; 260 Boolean lispMarker_SetPrevious (TLispManager*, TLispEntity*, TLispEntity*) ; 261 Boolean lispMarker_GetInsertionType (TLispManager*, TLispEntity*, Boolean*) ; 262 Boolean lispMarker_GetBufferPosition (TLispManager*, TLispEntity*, TLispEntity** const, int* const) ; 263 Boolean lispMarker_GetNext (TLispManager*, TLispEntity*, TLispEntity** const) ; 264 Boolean lispMarker_GetPrevious (TLispManager*, TLispEntity*, TLispEntity** const) ; 265 Boolean lispMarker_MoveWithInsertion (TLispManager*, TLispEntity*, int, int) ; 266 Boolean lispMarker_MoveWithDeletion (TLispManager*, TLispEntity*, int, int) ; 267 Boolean lispMarker_Print (TLispManager*, TLispEntity*) ; 268 269 /* lispbuffer.c */ 270 Boolean lispMgr_CreateBuffer (TLispManager*, TLispEntity** const) ; 271 void lispMgr_DestroyBuffer (TLispManager*, TLispEntity*) ; 272 Boolean lispBuffer_SetNext (TLispEntity*, TLispEntity*) ; 273 Boolean lispBuffer_SetPrevious (TLispEntity*, TLispEntity*) ; 274 Boolean lispBuffer_GetNext (TLispEntity*, TLispEntity** const) ; 275 Boolean lispBuffer_GetPrevious (TLispEntity*, TLispEntity** const) ; 276 Boolean lispBuffer_MakeSymbolValue (TLispManager*, TLispEntity*, TLispEntity*) ; 277 Boolean lispBuffer_SetSymbolValue (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity*) ; 278 Boolean lispBuffer_SetSymbolValueWithName (TLispManager*, TLispEntity*, const Char*, const int, TLispEntity*) ; 279 Boolean lispBuffer_GetSymbolValue (TLispManager*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 280 Boolean lispBuffer_GetSymbolValueWithName (TLispManager*, TLispEntity*, const Char*, const int, TLispEntity** const) ; 281 Boolean lispBuffer_AddMarker (TLispManager*, TLispEntity*, TLispEntity*) ; 282 Boolean lispBuffer_RemoveMarker (TLispManager*, TLispEntity*) ; 283 Boolean lispBuffer_SetName (TLispManager*, TLispEntity*, TLispEntity*) ; 284 Boolean lispBuffer_GetName (TLispManager*, TLispEntity*, TLispEntity**) ; 285 Boolean lispBuffer_SetKeymap (TLispManager*, TLispEntity*, TLispEntity*) ; 286 Boolean lispBuffer_GetKeymap (TLispEntity*, TLispEntity**) ; 287 Boolean lispBuffer_SetPrompt (TLispManager*, TLispEntity*, const Char*, int) ; 288 Boolean lispBuffer_Point (TLispManager*, TLispEntity*, int*) ; 289 Boolean lispBuffer_PointBufferEnd (TLispManager*, TLispEntity*, int*) ; 290 Boolean lispBuffer_PointMax (TLispManager*, TLispEntity*, int*) ; 291 Boolean lispBuffer_PointBufferTop (TLispManager*, TLispEntity*, int*) ; 292 Boolean lispBuffer_PointMin (TLispManager*, TLispEntity*, int*) ; 293 Boolean lispBuffer_PointMarker (TLispManager*, TLispEntity*, TLispEntity** const) ; 294 Boolean lispBuffer_MarkMarker (TLispManager*, TLispEntity*, TLispEntity** const) ; 295 Boolean lispBuffer_GetString (TLispManager*, TLispEntity*, TBufStringMarker*, int* const) ; 296 Boolean lispBuffer_GetFullString (TLispManager*, TLispEntity*, TBufStringMarker*, int* const) ; 297 Boolean lispBuffer_Narrow (TLispManager*, TLispEntity*, int, int) ; 298 Boolean lispBuffer_Widen (TLispManager*, TLispEntity*) ; 299 Boolean lispBuffer_InsertChar (TLispManager*, TLispEntity*, int, const Char, int) ; 300 Boolean lispBuffer_DeleteChar (TLispManager*, TLispEntity*, int, int nCount) ; 301 Boolean lispBuffer_InsertFileContents (TLispManager*, TLispEntity*, int, KFILE*, int*) ; 302 Boolean lispBuffer_InsertString (TLispManager*, TLispEntity*, int, const Char*, int) ; 303 Boolean lispBuffer_MoveMarkerWithInsertion (TLispManager*, TLispEntity*, int, int) ; 304 Boolean lispBuffer_MoveMarkerWithDeletion (TLispManager*, TLispEntity*, int, int) ; 305 Boolean lispBuffer_Print (TLispManager*, TLispEntity*) ; 306 Boolean lispBuffer_GetModifiedp (TLispManager*, TLispEntity*) ; 307 void lispBuffer_SetModifiedp (TLispManager*, TLispEntity*, Boolean) ; 308 void lispBuffer_Desync (TLispManager*, TLispEntity*) ; 309 310 /* lispwindow.c */ 311 Boolean lispMgr_CreateWindow (TLispManager*, Boolean, TLispEntity** const) ; 312 void lispMgr_DestroyWindow (TLispManager*, TLispEntity*) ; 313 Boolean lispWindow_SetNext (TLispEntity*, TLispEntity*) ; 314 Boolean lispWindow_SetPrevious (TLispEntity*, TLispEntity*) ; 315 Boolean lispWindow_GetNext (TLispEntity*, TLispEntity** const) ; 316 Boolean lispWindow_GetPrevious (TLispEntity*, TLispEntity** const) ; 317 Boolean lispWindow_SetBuffer (TLispManager*, TLispEntity*, TLispEntity*) ; 318 Boolean lispWindow_GetBuffer (TLispEntity*, TLispEntity** const) ; 319 Boolean lispWindow_SetFrame (TLispEntity*, TLispEntity*) ; 320 Boolean lispWindow_GetFrame (TLispEntity*, TLispEntity** const) ; 321 Boolean lispWindow_SetArea (TLispEntity*, const XRectangle*) ; 322 Boolean lispWindow_GetArea (TLispEntity*, XRectangle*) ; 323 Boolean lispWindow_HaveFocusp (TLispEntity*) ; 324 Boolean lispWindow_SetFocus (TLispEntity*, Boolean) ; 325 Boolean lispWindow_EnableModeline (TLispEntity*, Boolean) ; 326 Boolean lispWindow_SetMessage (TLispManager*, TLispEntity*, TLispEntity*) ; 327 Boolean lispWindow_GetMessage (TLispEntity*, TLispEntity** const) ; 328 Boolean lispWindow_GetViewMarker (TLispEntity*, TLispEntity** const) ; 329 Boolean lispWindow_Minibufferp (TLispEntity*) ; 330 void lispWindow_SetMinibufWindow (TLispEntity*, Boolean) ; 331 332 /* lispframe.c */ 333 Boolean lispMgr_MakeFrame (TLispManager*, Widget, TLispEntity*, TLispEntity*, TLispEntity*, TLispEntity** const) ; 334 void lispMgr_DestroyFrame (TLispManager*, TLispEntity*) ; 335 Boolean lispFrame_GetTopWindow (TLispEntity*, TLispEntity** const) ; 336 Boolean lispFrame_GetMinibufferWindow (TLispEntity*, TLispEntity** const) ; 337 Boolean lispFrame_GetNext (TLispEntity*, TLispEntity** const) ; 338 Boolean lispFrame_GetPrevious (TLispEntity*, TLispEntity** const) ; 339 Boolean lispFrame_SetNext (TLispEntity*, TLispEntity*) ; 340 Boolean lispFrame_SetPrevious (TLispEntity*, TLispEntity*) ; 341 Boolean lispFrame_InsertWindow (TLispManager*, TLispEntity*, TLispEntity*) ; 342 Boolean lispFrame_RemoveWindow (TLispManager*, TLispEntity*, TLispEntity*) ; 343 Boolean lispFrame_GetTerminal (TLispEntity*, Widget* const) ; 344 void lispFrame_Activate (TLispManager*, TLispEntity*, Boolean) ; 345 Boolean lispFrame_NeedUpdatep (TLispManager*, TLispEntity*) ; 346 void lispFrame_ScheduleUpdate (TLispManager*, TLispEntity*) ; 347 348 /* lispfile.c */ 349 Boolean lispMgr_Load (TLispManager*, const Char*, int, TLispEntity** const) ; 350 351 /* lispkeymap.kc */ 352 Boolean lispMgr_CreateKeymap (TLispManager*, TLispEntity*, TLispEntity**) ; 353 Boolean lispMgr_CreateSparseKeymap (TLispManager*, TLispEntity*, TLispEntity** const) ; 354 Boolean lispMgr_CopyKeymap (TLispManager*, TLispEntity*, TLispEntity** const) ; 355 Boolean lispEntity_Keymapp (TLispManager*, TLispEntity*) ; 356 Boolean lispKeymap_Lookup (TLispManager*, TLispEntity*, TLispEntity*, Boolean, Boolean, int*, TLispEntity** const) ; 357 Boolean lispKeymap_LookupWithString (TLispManager*, TLispEntity*, const Char*, int, Boolean, Boolean, int*, TLispEntity** const) ; 358 Boolean lispKeymap_LookupWithVector (TLispManager*, TLispEntity*, TLispEntity**, int, Boolean, Boolean, int*, TLispEntity** const) ; 359 Boolean lispKeymap_LookupWithList (TLispManager*, TLispEntity*, TLispEntity*, Boolean, Boolean, int*, TLispEntity** const) ; 360 Boolean lispKeymap_DefineKeyWithVector (TLispManager*, TLispEntity*, TLispEntity**, int, TLispEntity*) ; 361 Boolean lispKeymap_DefineKey (TLispManager*, TLispEntity*, const Char*, int, TLispEntity*) ; 362 363 /* limclient.c */ 364 Boolean lispMgr_CreateIMClient (TLispManager*, void*, void (*)(), void (*)(), void (*)(), TLispEntity** const) ; 365 Boolean lispIMClient_KeyNotify (TLispEntity*, TXEvent*) ; 366 Boolean lispIMClient_TextNotify (TLispEntity*, const Char*, int) ; 367 Boolean lispIMClient_EndNotify (TLispEntity*) ; 368 369 /* lmutex.c */ 370 Boolean lispMgr_CreateMutex (TLispManager*, const Char*, int, TLispEntity** const) ; 371 Boolean lispEntity_Mutexp (TLispManager*, TLispEntity*) ; 372 Boolean lispMgr_LockMutex (TLispManager*, TLispEntity*, void*) ; 373 Boolean lispMgr_UnlockMutex (TLispManager*, TLispEntity*, void*) ; 374 Boolean lispEntity_GetMutexInfo (TLispManager*, TLispEntity*, const Char**, int*, unsigned int*, const void**) ; 375 Boolean lispMgr_SearchMutex (TLispManager*, const Char*, int, TLispEntity** const) ; 376 void lispMgr_AbondonMutex (TLispManager*, const void*) ; 377 378 Boolean lispMgr_CreateXEvent (TLispManager*, TLispEntity*, const XEvent*, TLispEntity** const) ; 379 void lispMgr_DestroyXEvent (TLispManager*, TLispEntity*) ; 380 381 /* Library Internal Functions Prototype */ 382 #include "lentity-inl.h" 383 #include "lispmgr-inl.h" 384 385 #endif 386 387