fpconst.pas 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428
  1. {
  2. $Id$
  3. This file is part of the Free Pascal Integrated Development Environment
  4. Copyright (c) 1998 by Berczi Gabor
  5. Constants used by the IDE
  6. See the file COPYING.FPC, included in this distribution,
  7. for details about the copyright.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  11. **********************************************************************}
  12. unit FPConst;
  13. interface
  14. uses Views,App,Commands,
  15. WViews;
  16. const
  17. VersionStr = '0.9';
  18. MaxRecentFileCount = 5;
  19. MaxToolCount = 16;
  20. CompilerStatusUpdateDelay = 0.8; { in secs }
  21. ININame = 'fp.ini';
  22. SwitchesName = 'fp.cfg';
  23. DesktopName = 'fp.dsk';
  24. ToolCaptureName = '$$TOOL$$.OUT';
  25. FilterCaptureName = '$FILTER$.OUT';
  26. HelpFileExts = '*.tph;*.htm*';
  27. EnterSign = #17#196#217;
  28. { Strings/Messages }
  29. strLoadingHelp = 'Loading help files...';
  30. strBuildingHelpIndex = 'Building Help Index...';
  31. strLocatingTopic = 'Locating topic...';
  32. { Main menu submenu indexes }
  33. menuFile = 0;
  34. menuTools = 6;
  35. { MouseAction constants }
  36. acNone = 0;
  37. acTopicSearch = 1;
  38. acGotoCursor = 2;
  39. acBreakpoint = 3;
  40. acEvaluate = 4;
  41. acAddWatch = 5;
  42. acBrowseSymbol = 6;
  43. acFirstAction = acTopicSearch;
  44. acLastAction = acBrowseSymbol;
  45. { Startup Option constants }
  46. soReturnToLastDir = $00000001;
  47. { Desktop Flag constants - what to include in the desktop file }
  48. dfHistoryLists = $00000001;
  49. dfClipboardContent = $00000002;
  50. dfWatches = $00000004;
  51. dfBreakpoints = $00000008;
  52. dfOpenWindows = $00000010;
  53. dfSymbolInformation = $00000020;
  54. { Auto Save flag constants }
  55. asEditorFiles = $00000001; { Editor files }
  56. asEnvironment = $00000002; { .INI file }
  57. asDesktop = $00000004; { .DSK file }
  58. { Misc. Options flag constants }
  59. moAutoTrackSource = $00000001;
  60. moCloseOnGotoSource = $00000002;
  61. moChangeDirOnOpen = $00000004;
  62. { Desktop Location constants }
  63. dlCurrentDir = $00;
  64. dlConfigFileDir = $01;
  65. { Command constants }
  66. cmShowClipboard = 201;
  67. cmFindProcedure = 206;
  68. cmObjects = 207;
  69. cmModules = 208;
  70. cmGlobals = 209;
  71. cmRun = 210;
  72. cmParameters = 211;
  73. cmCompile = 212;
  74. cmMake = 213;
  75. cmBuild = 214;
  76. cmTarget = 215;
  77. cmPrimaryFile = 216;
  78. cmClearPrimary = 217;
  79. cmInformation = 218;
  80. cmWindowList = 219;
  81. cmHelpTopicSearch = 220;
  82. cmMsgGotoSource = 221;
  83. cmMsgTrackSource = 222;
  84. cmGotoCursor = 223;
  85. cmToggleBreakpoint = 224;
  86. cmAddWatch = 225;
  87. cmTraceInto = 226;
  88. cmStepOver = 227;
  89. cmResetDebugger = 228;
  90. cmContToCursor = 229;
  91. cmOpenGDBWindow = 230;
  92. cmToolsMsgNext = 231;
  93. cmToolsMsgPrev = 232;
  94. cmGrep = 233;
  95. cmCompilerMessages = 234;
  96. cmNotImplemented = 1000;
  97. cmNewFromTemplate = 1001;
  98. cmSearchWindow = 1500;
  99. cmSourceWndClosing = 1601;
  100. cmCalculatorPaste = 1603;
  101. cmMsgClear = 1604;
  102. cmUpdateTools = 1605;
  103. { cmGrep = 160?;}
  104. cmAddItem = 1620;
  105. cmEditItem = 1621;
  106. cmDeleteItem = 1622;
  107. cmUserScreen = 1650;
  108. cmUserScreenWindow = 1651;
  109. cmEvaluate = 1652;
  110. cmCalculator = 1653;
  111. cmASCIITable = 1654;
  112. cmToolsMessages = 1700;
  113. cmToolsBase = 1800;
  114. cmRecentFileBase = 1850;
  115. cmCompiler = 2000;
  116. cmMemorySizes = 2001;
  117. cmLinker = 2002;
  118. cmDebugger = 2003;
  119. cmDirectories = 2004;
  120. cmTools = 2005;
  121. cmPreferences = 2006;
  122. cmEditor = 2007;
  123. cmMouse = 2008;
  124. cmStartup = 2009;
  125. cmColors = 2010;
  126. cmOpenINI = 2011;
  127. cmSaveINI = 2012;
  128. cmSaveAsINI = 2013;
  129. cmSwitchesMode = 2014;
  130. cmBrowser = 2015;
  131. cmDesktopOptions = 2016;
  132. cmHelpContents = 2100;
  133. cmHelpIndex = 2101;
  134. cmHelpPrevTopic = 2103;
  135. cmHelpUsingHelp = 2104;
  136. cmHelpFiles = 2105;
  137. cmAbout = 2106;
  138. cmOpenAtCursor = 2200;
  139. cmBrowseAtCursor = 2201;
  140. cmEditorOptions = 2202;
  141. cmBrowserOptions = 2203;
  142. cmTrackReference = 2300;
  143. cmGotoReference = 2301;
  144. { Help constants }
  145. hcSourceWindow = 8000;
  146. hcHelpWindow = 8001;
  147. hcClipboardWindow = 8002;
  148. hcCalcWindow = 8003;
  149. hcInfoWindow = 8004;
  150. hcBrowserWindow = 8005;
  151. hcMessagesWindow = 8006;
  152. hcShift = 10000;
  153. hcUsingHelp = 2;
  154. hcContents = 3;
  155. hcQuit = hcShift+cmQuit;
  156. hcRedo = hcShift+cmRedo;
  157. hcFind = hcShift+cmFind;
  158. hcReplace = hcShift+cmReplace;
  159. hcSearchAgain = hcShift+cmSearchAgain;
  160. hcGotoLine = hcShift+cmJumpLine;
  161. hcUserScreen = hcShift+cmUserScreen;
  162. hcUserScreenWindow = hcShift+cmUserScreenWindow;
  163. hcToolsMessages = hcShift+cmToolsMessages;
  164. hcToolsBase = hcShift+cmToolsBase;
  165. hcRecentFileBase = hcShift+cmRecentFileBase;
  166. hcCompiler = hcShift+cmCompiler;
  167. hcMemorySizes = hcShift+cmMemorySizes;
  168. hcLinker = hcShift+cmLinker;
  169. hcDebugger = hcShift+cmDebugger;
  170. hcDirectories = hcShift+cmDirectories;
  171. hcTools = hcShift+cmTools;
  172. hcPreferences = hcShift+cmPreferences;
  173. hcEditor = hcShift+cmEditor;
  174. hcMouse = hcShift+cmMouse;
  175. hcStartup = hcShift+cmStartup;
  176. hcColors = hcShift+cmColors;
  177. hcOpenINI = hcShift+cmOpenINI;
  178. hcSaveINI = hcShift+cmSaveINI;
  179. hcSaveAsINI = hcShift+cmSaveAsINI;
  180. hcCalculator = hcShift+cmCalculator;
  181. hcAsciiTable = hcShift+cmAsciiTable;
  182. { hcGrep = hcShift+cmGrep;}
  183. hcSwitchesMode = hcShift+cmSwitchesMode;
  184. hcBrowser = hcShift+cmBrowser;
  185. hcDesktopOptions = hcShift+cmDesktopOptions;
  186. hcAbout = hcShift+cmAbout;
  187. hcCompilerMessages = hcShift+cmCompilerMessages;
  188. hcSystemMenu = 9000;
  189. hcFileMenu = 9001;
  190. hcEditMenu = 9002;
  191. hcSearchMenu = 9003;
  192. hcRunMenu = 9004;
  193. hcCompileMenu = 9005;
  194. hcDebugMenu = 9006;
  195. hcToolsMenu = 9007;
  196. hcOptionsMenu = 9008;
  197. hcEnvironmentMenu = 9009;
  198. hcWindowMenu = 9010;
  199. hcHelpMenu = 9011;
  200. hcFirstCommand = hcSystemMenu;
  201. hcLastCommand = 65535;
  202. hcShowClipboard = hcShift+cmShowClipboard;
  203. hcFindProcedure = hcShift+cmFindProcedure;
  204. hcObjects = hcShift+cmObjects;
  205. hcModules = hcShift+cmModules;
  206. hcGlobals = hcShift+cmGlobals;
  207. hcRun = hcShift+cmRun;
  208. hcParameters = hcShift+cmParameters;
  209. hcResetDebugger = hcShift+cmResetDebugger;
  210. hcContToCursor = hcShift+cmContToCursor;
  211. hcOpenGDBWindow = hcShift+cmOpenGDBWindow;
  212. hcToolsMsgNext = hcShift+cmToolsMsgNext;
  213. hcToolsMsgPrev = hcShift+cmToolsMsgPrev;
  214. hcCompile = hcShift+cmCompile;
  215. hcMake = hcShift+cmMake;
  216. hcBuild = hcShift+cmBuild;
  217. hcTarget = hcShift+cmTarget;
  218. hcPrimaryFile = hcShift+cmPrimaryFile;
  219. hcClearPrimary = hcShift+cmClearPrimary;
  220. hcInformation = hcShift+cmInformation;
  221. hcWindowList = hcShift+cmWindowList;
  222. hcNewFromTemplate = hcShift+cmNewFromTemplate;
  223. hcHelpTopicSearch = hcShift+cmHelpTopicSearch;
  224. hcHelpContents = hcShift+cmHelpContents;
  225. hcHelpIndex = hcShift+cmHelpIndex;
  226. hcHelpPrevTopic = hcShift+cmHelpPrevTopic;
  227. hcHelpUsingHelp = hcShift+cmHelpUsingHelp;
  228. hcHelpFiles = hcShift+cmHelpFiles;
  229. hcUpdate = hcShift+cmUpdate;
  230. hcMsgClear = hcShift+cmMsgClear;
  231. hcMsgGotoSource = hcShift+cmMsgGotoSource;
  232. hcMsgTrackSource = hcShift+cmMsgTrackSource;
  233. hcGotoCursor = hcShift+cmGotoCursor;
  234. hcToggleBreakpoint = hcShift+cmToggleBreakpoint;
  235. hcEvaluate = hcShift+cmEvaluate;
  236. hcAddWatch = hcShift+cmAddWatch;
  237. hcGrep = hcShift+cmGrep;
  238. hcOpenAtCursor = hcShift+cmOpenAtCursor;
  239. hcBrowseAtCursor = hcShift+cmBrowseAtCursor;
  240. hcEditorOptions = hcShift+cmEditorOptions;
  241. { History constants }
  242. hisChDirDialog = 2000;
  243. CIDEHelpDialog =
  244. #128#129#130#131#132#133#134#135#136#137#138#139#140#141#142#143 +
  245. #144#145#146#147#148#149#150#151#152#153#154#155#156#157#158#159 +
  246. #160#161#162#163 +
  247. #164#165#166;
  248. CSourceWindow =
  249. #167#168#169#170#171#172#173#174#175#176#177#178#179#180#181#182 +
  250. #183#184#185#186#187#188#189#190#191#192#193#194#195#196#197#198 +
  251. #199#200#201#202#203#204#205#206#207#208#209#210#211#212#213#214 ;
  252. CBrowserWindow =
  253. #215#216#217#218#219#220#221#222#223#224#225#226;
  254. CBrowserListBox =
  255. #9#9#10#11#12;
  256. CBrowserTab =
  257. #6#12;
  258. CBrowserOutline = #9#10#10#11;
  259. CGDBInputLine = #9#9#10#11#12;
  260. CIDEAppColor = CAppColor +
  261. { CIDEHelpDialog }
  262. {128-143}#$70#$7F#$7A#$13#$13#$70#$70#$7F#$7E#$20#$2B#$2F#$78#$2E#$70#$30 + { 1-16}
  263. {144-159}#$3F#$3E#$1F#$2F#$1A#$20#$72#$31#$31#$30#$2F#$3E#$31#$13#$38#$00 + {17-32}
  264. {160-163}#$30#$3E#$1E#$70 + { CHelpViewer } {33-36}
  265. {164-166}#$30#$3F#$3A + { CHelpFrame } {37-39}
  266. { CSourceWindow }
  267. {167-182}#$17#$1F#$1A#$31#$31#$1E#$71#$1F#$00#$00#$00#$00#$00#$00#$00#$00 + { 1-16}
  268. {183-198}#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00 + {17-32}
  269. {199-214}#$1E#$1F#$17#$1F#$1E#$1B#$13#$1A#$1E#$71#$3F#$30#$1C#$13#$1F#$4E + {33-48}
  270. { CBrowserWindow }
  271. {215- }#$31#$3F#$3A#$31#$31#$31#$71#$1F#$31#$2F#$3E#$3F ;
  272. implementation
  273. END.
  274. {
  275. $Log$
  276. Revision 1.17 1999-04-07 21:55:44 peter
  277. + object support for browser
  278. * html help fixes
  279. * more desktop saving things
  280. * NODEBUG directive to exclude debugger
  281. Revision 1.16 1999/03/23 15:11:27 peter
  282. * desktop saving things
  283. * vesa mode
  284. * preferences dialog
  285. Revision 1.15 1999/03/19 16:04:28 peter
  286. * new compiler dialog
  287. Revision 1.14 1999/03/16 12:38:08 peter
  288. * tools macro fixes
  289. + tph writer
  290. + first things for resource files
  291. Revision 1.13 1999/03/01 15:41:51 peter
  292. + Added dummy entries for functions not yet implemented
  293. * MenuBar didn't update itself automatically on command-set changes
  294. * Fixed Debugging/Profiling options dialog
  295. * TCodeEditor converts spaces to tabs at save only if efUseTabChars is set
  296. * efBackSpaceUnindents works correctly
  297. + 'Messages' window implemented
  298. + Added '$CAP MSG()' and '$CAP EDIT' to available tool-macros
  299. + Added TP message-filter support (for ex. you can call GREP thru
  300. GREP2MSG and view the result in the messages window - just like in TP)
  301. * A 'var' was missing from the param-list of THelpFacility.TopicSearch,
  302. so topic search didn't work...
  303. * In FPHELP.PAS there were still context-variables defined as word instead
  304. of THelpCtx
  305. * StdStatusKeys() was missing from the statusdef for help windows
  306. + Topic-title for index-table can be specified when adding a HTML-files
  307. Revision 1.12 1999/02/22 11:51:34 peter
  308. * browser updates from gabor
  309. Revision 1.11 1999/02/20 15:18:28 peter
  310. + ctrl-c capture with confirm dialog
  311. + ascii table in the tools menu
  312. + heapviewer
  313. * empty file fixed
  314. * fixed callback routines in fpdebug to have far for tp7
  315. Revision 1.10 1999/02/11 19:07:19 pierre
  316. * GDBWindow redesigned :
  317. normal editor apart from
  318. that any kbEnter will send the line (for begin to cursor)
  319. to GDB command !
  320. GDBWindow opened in Debugger Menu
  321. still buggy :
  322. -echo should not be present if at end of text
  323. -GDBWindow becomes First after each step (I don't know why !)
  324. Revision 1.9 1999/02/08 17:40:00 pierre
  325. + cmContToCursor added
  326. Revision 1.8 1999/02/04 12:23:43 pierre
  327. + cmResetDebugger and cmGrep
  328. * Avoid StatusStack overflow
  329. Revision 1.7 1999/01/22 10:24:02 peter
  330. * first debugger things
  331. Revision 1.6 1999/01/21 11:54:12 peter
  332. + tools menu
  333. + speedsearch in symbolbrowser
  334. * working run command
  335. Revision 1.5 1999/01/12 14:29:33 peter
  336. + Implemented still missing 'switch' entries in Options menu
  337. + Pressing Ctrl-B sets ASCII mode in editor, after which keypresses (even
  338. ones with ASCII < 32 ; entered with Alt+<###>) are interpreted always as
  339. ASCII chars and inserted directly in the text.
  340. + Added symbol browser
  341. * splitted fp.pas to fpide.pas
  342. Revision 1.4 1999/01/04 11:49:43 peter
  343. * 'Use tab characters' now works correctly
  344. + Syntax highlight now acts on File|Save As...
  345. + Added a new class to syntax highlight: 'hex numbers'.
  346. * There was something very wrong with the palette managment. Now fixed.
  347. + Added output directory (-FE<xxx>) support to 'Directories' dialog...
  348. * Fixed some possible bugs in Running/Compiling, and the compilation/run
  349. process revised
  350. Revision 1.2 1998/12/28 15:47:43 peter
  351. + Added user screen support, display & window
  352. + Implemented Editor,Mouse Options dialog
  353. + Added location of .INI and .CFG file
  354. + Option (INI) file managment implemented (see bottom of Options Menu)
  355. + Switches updated
  356. + Run program
  357. Revision 1.3 1998/12/22 10:39:41 peter
  358. + options are now written/read
  359. + find and replace routines
  360. }