fpconst.pas 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534
  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,
  15. FVConsts,
  16. WViews,WEditor,WHTMLHlp;
  17. const
  18. VersionStr = '1.0.2';
  19. MaxRecentFileCount = 9;
  20. MaxToolCount = 16;
  21. ReservedWordMaxLen = 16;
  22. CompilerStatusUpdateDelay = 0.1; { in secs }
  23. {$undef USE_SPECIAL_BASENAME}
  24. {$ifdef m68k}
  25. {$ifdef cpui386}
  26. {$define USE_SPECIAL_BASENAME}
  27. FPBaseName = 'fpm68k';
  28. {$endif cpui386}
  29. {$endif m68k}
  30. {$ifdef powerpc}
  31. {$ifdef cpui386}
  32. {$define USE_SPECIAL_BASENAME}
  33. FPBaseName = 'fpppc';
  34. {$endif powerpc}
  35. {$endif m68k}
  36. {$ifdef i386}
  37. {$ifdef cpu68k}
  38. {$define USE_SPECIAL_BASENAME}
  39. FPBaseName = 'fpi386';
  40. {$endif cpu68k}
  41. {$endif i386}
  42. {$ifndef USE_SPECIAL_BASENAME}
  43. FPBaseName = 'fp';
  44. {$endif not USE_SPECIAL_BASENAME}
  45. ININame = FPBaseName+'.ini';
  46. DirInfoName = FPBaseName+'.dir';
  47. SwitchesName = FPBaseName+'.cfg';
  48. DesktopName = FPBaseName+'.dsk';
  49. BrowserName = FPBaseName+'.brw';
  50. BackgroundName = 'fp.ans';
  51. ReadmeName = 'readme.ide';
  52. ToolCaptureName = '__tool__.out'; { all '$' signs replaces with '_'s }
  53. ToolCaptureErr = '__tool__.err'; { all '$' signs replaces with '_'s }
  54. FilterCaptureName = '_filter_.out';
  55. FPOutFileName = 'fp___.out';
  56. FPErrFileName = 'fp___.err';
  57. GDBOutFileName = 'gdb___.out';
  58. GDBOutPutFileName = 'gdb___.txt';
  59. GDBPrompt = 'gdb>';
  60. DesktopTempName = 'fp___.dsk';
  61. GrepOutName = 'grep$$.out';
  62. GrepErrName = 'grep$$.err';
  63. CodeCompleteUnitName = '__fp__';
  64. HTMLIndexExt = WHTMLHlp.extHTMLIndex;
  65. HTMLExt = WHTMLHlp.extHTML;
  66. TemplateExt = '.pt';
  67. NGExt = '.ng';
  68. INFExt = '.inf';
  69. WinHelpExt = '.hlp';
  70. HelpFileExts = '*.tph;*.htm*;*'+HTMLIndexExt+';*'+NGExt+';*'+WinHelpExt+';*'+INFExt;
  71. {$ifdef UNIX}
  72. EnterSign = '<'+#196#217;
  73. {$else}
  74. EnterSign = #17#196#217;
  75. {$endif}
  76. { Main menu submenu indexes }
  77. menuFile = 0;
  78. menuTools = 6;
  79. { MouseAction constants }
  80. acNone = 0;
  81. acTopicSearch = 1;
  82. acGotoCursor = 2;
  83. acBreakpoint = 3;
  84. acEvaluate = 4;
  85. acAddWatch = 5;
  86. acBrowseSymbol = 6;
  87. acFirstAction = acTopicSearch;
  88. acLastAction = acBrowseSymbol;
  89. { Startup Option constants }
  90. soReturnToLastDir = $00000001;
  91. soHeapMonitor = $00000002;
  92. { Desktop Flag constants - what to include in the desktop file }
  93. dfHistoryLists = $00000001;
  94. dfClipboardContent = $00000002;
  95. dfWatches = $00000004;
  96. dfBreakpoints = $00000008;
  97. dfOpenWindows = $00000010;
  98. dfSymbolInformation = $00000020;
  99. dfCodeCompleteWords = $00000040;
  100. dfCodeTemplates = $00000080;
  101. { Auto Save flag constants }
  102. asEditorFiles = $00000001; { Editor files }
  103. asEnvironment = $00000002; { .INI file }
  104. asDesktop = $00000004; { .DSK file }
  105. { Misc. Options flag constants }
  106. moAutoTrackSource = $00000001;
  107. moCloseOnGotoSource = $00000002;
  108. moChangeDirOnOpen = $00000004;
  109. { Desktop Location constants }
  110. dlCurrentDir = $00;
  111. dlConfigFileDir = $01;
  112. { History ids }
  113. hidRunParameters = 200;
  114. hidOpenSourceFile = 201;
  115. hidPrimaryFile = 202;
  116. hidOpenIniFile = 203;
  117. hidSaveIniFile = hidOpenIniFile;
  118. hidOpenHelpFile = 204;
  119. hidConditionalDefines= 205;
  120. hidCompilerArgs = 206;
  121. hidWatchDialog = 207;
  122. hidBreakpointDialogName = 208;
  123. hidRunDir = 209;
  124. hidBreakpointDialogCond = 210;
  125. { Command constants }
  126. cmShowClipboard = 201;
  127. cmFindProcedure = 206;
  128. cmObjects = 207;
  129. cmModules = 208;
  130. cmGlobals = 209;
  131. cmRun = 210;
  132. cmParameters = 211;
  133. cmCompile = 212;
  134. cmMake = 213;
  135. cmBuild = 214;
  136. cmTarget = 215;
  137. cmPrimaryFile = 216;
  138. cmClearPrimary = 217;
  139. cmRunDir = 218;
  140. { cmWindowList = 219; defined in command.pas, too! - Gabor }
  141. cmHelpTopicSearch = 220;
  142. cmMsgGotoSource = 221;
  143. cmMsgTrackSource = 222;
  144. cmGotoCursor = 223;
  145. {cmToggleBreakpoint = 224; never disabled =>2403 }
  146. cmAddWatch = 225;
  147. cmTraceInto = 226;
  148. cmStepOver = 227;
  149. cmResetDebugger = 228;
  150. cmContToCursor = 229;
  151. cmOpenGDBWindow = 230;
  152. cmToolsMsgNext = 231;
  153. cmToolsMsgPrev = 232;
  154. cmGrep = 233;
  155. cmCompilerMessages = 234;
  156. cmSymbol = 235;
  157. cmStack = 236;
  158. cmBreakpointList = 237;
  159. cmWatches = 238;
  160. cmUntilReturn = 239;
  161. { WARNING these two are also defined in weditor.pas PM }
  162. { and why aren't these defines then removed? Gabor }
  163. cmCopyWin = 240;
  164. cmPasteWin = 241;
  165. cmRegisters = 242;
  166. cmFPURegisters = 243;
  167. cmDoReload = 244;
  168. cmVectorRegisters = 245;
  169. cmNotImplemented = 1000;
  170. cmNewFromTemplate = 1001;
  171. cmShowReadme = 1002;
  172. cmSearchWindow = 1500;
  173. cmSourceWndClosing = 1601;
  174. cmCalculatorPaste = 1603;
  175. cmMsgClear = 1604;
  176. cmUpdateTools = 1605;
  177. { cmGrep = 160?;}
  178. cmAddItem = 1620;
  179. cmEditItem = 1621;
  180. cmDeleteItem = 1622;
  181. cmShowItem = 1623;
  182. cmHideItem = 1624;
  183. cmUserScreen = 1650;
  184. cmUserScreenWindow = 1651;
  185. cmEvaluate = 1652;
  186. cmCalculator = 1653;
  187. cmASCIITable = 1654;
  188. cmToolsMessages = 1700;
  189. cmToolsBase = 1800;
  190. cmRecentFileBase = 1850;
  191. cmCompiler = 2000;
  192. cmMemorySizes = 2001;
  193. cmLinker = 2002;
  194. cmDebugger = 2003;
  195. cmDirectories = 2004;
  196. cmTools = 2005;
  197. cmPreferences = 2006;
  198. cmEditor = 2007;
  199. cmMouse = 2008;
  200. cmStartup = 2009;
  201. cmColors = 2010;
  202. cmOpenINI = 2011;
  203. cmSaveINI = 2012;
  204. cmSaveAsINI = 2013;
  205. cmSwitchesMode = 2014;
  206. cmBrowser = 2015;
  207. cmDesktopOptions = 2016;
  208. cmCodeCompleteOptions=2017;
  209. cmCodeTemplateOptions=2018;
  210. cmKeys = 2019;
  211. cmAskSaveAll = 2020;
  212. cmRemoteDialog = 2021;
  213. cmTransferRemote = 2022;
  214. cmHelpContents = 2100;
  215. cmHelpIndex = 2101;
  216. cmHelpPrevTopic = 2103;
  217. cmHelpUsingHelp = 2104;
  218. cmHelpFiles = 2105;
  219. cmAbout = 2106;
  220. cmEditorOptions = 2202;
  221. cmBrowserOptions = 2203;
  222. cmTrackReference = 2300;
  223. cmGotoReference = 2301;
  224. cmEditBreakpoint = 2400;
  225. cmNewBreakpoint = 2401;
  226. cmDeleteBreakpoint = 2402;
  227. cmToggleBreakpoint = 2403;
  228. cmToggleBreakInList = 2404;
  229. cmDumpUndo = 2500;
  230. cmUndoAll = 2501;
  231. cmRedoAll = 2502;
  232. cmDebuggerStopped = 2600;
  233. cmDisassemble = 2601;
  234. cmSymBrowse = 2700;
  235. cmSymGotoSource = 2701;
  236. cmSymTrackSource = 2702;
  237. cmSymOptions = 2703;
  238. { Help constants }
  239. hcSourceWindow = 8000;
  240. hcHelpWindow = 8001;
  241. hcClipboardWindow = 8002;
  242. hcCalcWindow = 8003;
  243. hcInfoWindow = 8004;
  244. hcBrowserWindow = 8005;
  245. hcMessagesWindow = 8006;
  246. hcGDBWindow = 8007;
  247. hcBreakpointListWindow = 8008;
  248. hcASCIITableWindow = 8009;
  249. hcCompilerMessagesWindow = 8010;
  250. hcDisassemblyWindow = 8011;
  251. hcShift = 10000;
  252. hcNoAltXShift = 20000;
  253. hcUsingHelp = 2;
  254. hcContents = 3;
  255. hcQuit = hcShift+cmQuit;
  256. hcRedo = hcShift+cmRedo;
  257. hcFind = hcShift+cmFind;
  258. hcReplace = hcShift+cmReplace;
  259. hcSearchAgain = hcShift+cmSearchAgain;
  260. hcGotoLine = hcShift+cmJumpLine;
  261. hcUserScreen = hcShift+cmUserScreen;
  262. hcUserScreenWindow = hcShift+cmUserScreenWindow;
  263. hcToolsMessages = hcShift+cmToolsMessages;
  264. hcToolsBase = hcShift+cmToolsBase;
  265. hcRecentFileBase = hcShift+cmRecentFileBase;
  266. hcCompiler = hcShift+cmCompiler;
  267. hcCompilerNoAltX = hcNoAltXShift+cmCompiler;
  268. hcMemorySizes = hcShift+cmMemorySizes;
  269. hcLinker = hcShift+cmLinker;
  270. hcDebugger = hcShift+cmDebugger;
  271. hcRemoteDialog = hcShift+cmRemoteDialog;
  272. hcTransferRemote = hcShift+cmTransferRemote;
  273. hcDirectories = hcShift+cmDirectories;
  274. hcTools = hcShift+cmTools;
  275. hcPreferences = hcShift+cmPreferences;
  276. hcEditor = hcShift+cmEditor;
  277. hcMouse = hcShift+cmMouse;
  278. hcStartup = hcShift+cmStartup;
  279. hcColors = hcShift+cmColors;
  280. hcKeys = hcShift+cmKeys;
  281. hcOpenINI = hcShift+cmOpenINI;
  282. hcSaveINI = hcShift+cmSaveINI;
  283. hcSaveAsINI = hcShift+cmSaveAsINI;
  284. hcCalculator = hcShift+cmCalculator;
  285. hcAsciiTable = hcShift+cmAsciiTable;
  286. { hcGrep = hcShift+cmGrep;}
  287. hcSwitchesMode = hcShift+cmSwitchesMode;
  288. hcBrowser = hcShift+cmBrowser;
  289. hcDesktopOptions = hcShift+cmDesktopOptions;
  290. hcCodeCompleteOptions=hcShift+cmCodeCompleteOptions;
  291. hcCodeTemplateOptions=hcShift+cmCodeTemplateOptions;
  292. hcAbout = hcShift+cmAbout;
  293. hcCompilerMessages = hcShift+cmCompilerMessages;
  294. hcSystemMenu = 9000;
  295. hcFileMenu = 9001;
  296. hcEditMenu = 9002;
  297. hcSearchMenu = 9003;
  298. hcRunMenu = 9004;
  299. hcCompileMenu = 9005;
  300. hcDebugMenu = 9006;
  301. hcToolsMenu = 9007;
  302. hcOptionsMenu = 9008;
  303. hcEnvironmentMenu = 9009;
  304. hcWindowMenu = 9010;
  305. hcHelpMenu = 9011;
  306. hcFirstCommand = hcSystemMenu;
  307. hcLastNormalCommand = hcNoAltXShift - 1;
  308. hcFirstNoAltXCommand = hcNoAltXShift;
  309. hcLastCommand = 65535;
  310. hcShowClipboard = hcShift+cmShowClipboard;
  311. hcCopyWin = hcShift+cmCopyWin;
  312. hcPasteWin = hcShift+cmPasteWin;
  313. hcFindProcedure = hcShift+cmFindProcedure;
  314. hcObjects = hcShift+cmObjects;
  315. hcModules = hcShift+cmModules;
  316. hcGlobals = hcShift+cmGlobals;
  317. hcSymbol = hcShift+cmSymbol;
  318. hcRun = hcShift+cmRun;
  319. hcRunDir = hcShift+cmRunDir;
  320. hcParameters = hcShift+cmParameters;
  321. hcResetDebugger = hcShift+cmResetDebugger;
  322. hcContToCursor = hcShift+cmContToCursor;
  323. hcUntilReturn = hcShift+cmUntilReturn;
  324. hcOpenGDBWindow = hcShift+cmOpenGDBWindow;
  325. hcToolsMsgNext = hcShift+cmToolsMsgNext;
  326. hcToolsMsgPrev = hcShift+cmToolsMsgPrev;
  327. hcCompile = hcShift+cmCompile;
  328. hcMake = hcShift+cmMake;
  329. hcBuild = hcShift+cmBuild;
  330. hcTarget = hcShift+cmTarget;
  331. hcPrimaryFile = hcShift+cmPrimaryFile;
  332. hcClearPrimary = hcShift+cmClearPrimary;
  333. hcWindowList = hcShift+cmWindowList;
  334. hcNewFromTemplate = hcShift+cmNewFromTemplate;
  335. hcHelpTopicSearch = hcShift+cmHelpTopicSearch;
  336. hcHelpContents = hcShift+cmHelpContents;
  337. hcHelpIndex = hcShift+cmHelpIndex;
  338. hcHelpPrevTopic = hcShift+cmHelpPrevTopic;
  339. hcHelpUsingHelp = hcShift+cmHelpUsingHelp;
  340. hcHelpFiles = hcShift+cmHelpFiles;
  341. hcUpdate = hcShift+cmUpdate;
  342. hcMsgClear = hcShift+cmMsgClear;
  343. hcMsgGotoSource = hcShift+cmMsgGotoSource;
  344. hcMsgTrackSource = hcShift+cmMsgTrackSource;
  345. hcSymBrowse = hcShift+cmSymBrowse;
  346. hcSymGotoSource = hcShift+cmSymGotoSource;
  347. hcSymTrackSource = hcShift+cmSymTrackSource;
  348. hcSymOptions = hcShift+cmSymOptions;
  349. hcGotoCursor = hcShift+cmGotoCursor;
  350. hcNewBreakpoint = hcShift+cmNewBreakpoint;
  351. hcEditBreakpoint = hcShift+cmEditBreakpoint;
  352. hcDeleteBreakpoint = hcShift+cmDeleteBreakpoint;
  353. hcToggleBreakpoint = hcShift+cmToggleBreakpoint;
  354. hcEvaluate = hcShift+cmEvaluate;
  355. hcAddWatch = hcShift+cmAddWatch;
  356. hcWatchesWindow = hcShift+cmWatches;
  357. hcGrep = hcShift+cmGrep;
  358. hcStackWindow = hcShift+cmStack;
  359. hcBreakPointList = hcShift+cmBreakpointList;
  360. hcRegistersWindow = hcShift+cmRegisters;
  361. hcFPURegisters = hcShift+cmFPURegisters;
  362. hcVectorRegisters = hcShift+cmVectorRegisters;
  363. hcOpenAtCursor = hcShift+cmOpenAtCursor;
  364. hcBrowseAtCursor = hcShift+cmBrowseAtCursor;
  365. hcEditorOptions = hcShift+cmEditorOptions;
  366. hcBrowserOptions = hcShift+cmBrowserOptions;
  367. hcDoReload = hcShift+cmDoReload;
  368. { History constants }
  369. hisChDirDialog = 2000;
  370. CIDEHelpDialog =
  371. #128#129#130#131#132#133#134#135#136#137#138#139#140#141#142#143 +
  372. #144#145#146#147#148#149#150#151#152#153#154#155#156#157#158#159 +
  373. #160#161#162#163 +
  374. #164#165#166;
  375. CSourceWindow =
  376. #167#168#169#170#171#172#173#174#175#176#177#178#179#180#181#182 +
  377. #183#184#185#186#187#188#189#190#191#192#193#194#195#196#197#198 +
  378. #199#200#201#202#203#204#205#206#207#208#209#210#211#212#213#214 ;
  379. CBrowserWindow =
  380. #215#216#217#218#219#220#221#222#223#224#225#226;
  381. CBrowserListBox =
  382. #9#9#10#11#12;
  383. CBrowserTab =
  384. #6#12;
  385. CBrowserOutline = #9#10#10#11;
  386. CGDBInputLine = #9#9#10#11#12;
  387. CFPClockView = #0#227;
  388. CFPToolTip = #228;
  389. CFPMemo = #26#26#26#28#26#29#26#26#26#27#26#26#26#26#26#26#26;
  390. CFPSymbolMemo = #9#9#9#9#9#9#9#9#9#9#9#9#9#9#9#9#9;
  391. CHTMLSectionAttrs = #229#230#231#232#233#234;
  392. CIDEAppColor = CAppColor +
  393. { CIDEHelpDialog }
  394. {128-143}#$70#$7F#$7A#$13#$13#$70#$70#$7F#$7E#$20#$2B#$2F#$78#$2E#$70#$30 + { 1-16}
  395. {144-159}#$3F#$3E#$1F#$2F#$1A#$20#$72#$31#$31#$30#$2F#$3E#$31#$13#$38#$00 + {17-32}
  396. {160-163}#$30#$3E#$1E#$70 + { CHelpViewer } {33-36}
  397. {164-166}#$30#$3F#$3A + { CHelpFrame } {37-39}
  398. { CSourceWindow }
  399. {167-182}#$17#$1F#$1A#$31#$31#$1E#$71#$1F#$00#$00#$00#$00#$00#$00#$00#$00 + { 1-16}
  400. {183-198}#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00 + {17-32}
  401. {199-214}#$1E#$1F#$17#$1F#$1E#$1B#$13#$1A#$1E#$71#$3F#$30#$1C#$13#$1F#$4E + {33-48}
  402. { CBrowserWindow }
  403. {215-226}#$31#$3F#$3A#$31#$31#$31#$71#$1F#$31#$2F#$3E#$3F +
  404. { CFPClockView }
  405. {227-227}#$70 +
  406. { CToolTip }
  407. {228-228}#$20 +
  408. { CHTMLSectionAttrs }
  409. {229-234}#$ff#$3a#$37#$ff#$ff#$ff;
  410. implementation
  411. END.
  412. {
  413. $Log$
  414. Revision 1.20 2005-01-08 13:43:44 florian
  415. * updated version and copyright
  416. Revision 1.19 2005/01/08 11:43:18 florian
  417. + vector unit window
  418. Revision 1.18 2004/12/30 16:14:13 florian
  419. * ide version to 1.0.0 changed
  420. Revision 1.17 2004/11/21 20:53:26 peter
  421. * fixed breakpoint dialog
  422. Revision 1.16 2004/11/20 14:21:19 florian
  423. * implemented reload menu item
  424. * increased file history to 9 files
  425. Revision 1.15 2004/11/08 20:28:26 peter
  426. * Breakpoints are now deleted when removed from source, disabling is
  427. still possible from the breakpoint list
  428. * COMPILER_1_0, FVISION, GABOR defines removed, only support new
  429. FV and 1.9.x compilers
  430. * Run directory added to Run menu
  431. * Useless programinfo window removed
  432. Revision 1.14 2004/11/05 00:21:56 peter
  433. version info at startup
  434. Revision 1.13 2003/01/22 00:27:58 pierre
  435. * implement reloadfile if changed
  436. Revision 1.12 2002/11/30 01:53:02 pierre
  437. + cross-powerpc specific filenames
  438. Revision 1.11 2002/11/28 12:52:14 pierre
  439. * cross cpu IDE use different config/ini and cfg files
  440. Revision 1.10 2002/09/11 13:12:42 pierre
  441. * fix CodeComplete loading and use a unit for standard units code complete
  442. Revision 1.9 2002/09/07 15:40:42 peter
  443. * old logs removed and tabs fixed
  444. Revision 1.8 2002/09/03 13:57:05 pierre
  445. + hidWatchDialog and hidBreakpointDialog added
  446. Revision 1.7 2002/09/02 10:18:09 pierre
  447. * fix problems with breakpoint lists
  448. Revision 1.6 2002/03/28 16:25:16 peter
  449. * use < for left arrow under unix
  450. Revision 1.5 2002/01/24 09:21:41 pierre
  451. * only disable Alt-X in Options|Compiler dialog
  452. Revision 1.4 2002/01/22 16:33:51 pierre
  453. Change IDE version to 0.9.2
  454. }