Source
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
1. Compiling devcpp.exe The main executable devcpp.exe can be built using the following steps: 1) Compile and install the following package(s): Source\VCL\DevCpp.dpk Source\VCL\SynEdit\Packages\SynEdit_<Delphi Version>.dpk Source\VCL\ClassBrowsing\ClassBrowsing.dpk 2) Compile resources by running the following script(s): Source\CompileResources.bat 3) Open the project file devcpp.dpr. Your IDE should not produce any 'Module Not Found' or 'Resource Not Found' errors when opening files, compiling files or running devcpp.exe. 4) It is advisable to run CleanSource.bat before commiting work, when you get errors complaining about old versions of code or when you want to diff the source folder. This process has only been tested using Delphi 6 and Delphi 7. The code base should be compatible with more recent versions of Delphi, but there is no guarantee anything will work. 2. Compiling associated tools There are a couple of executables that need to be compiled and/or put in the right folder when building a full release. The source code of these files can be found in the Source\Tools subfolder. Precompiled versions are available in the Tools folder in the SourceForge repository. These three associated are required to be present by the setup scripts: 1) ConsolePauser.exe. This needs to be put in the root directory next to devcpp.exe. This executable is launched by devcpp.exe when a console program is run and the option "Pause console programs after return" is enabled in Environment Options. This file can be compiled using Source\Tools\ConsolePauser\ConsolePauser.dev 2) devcppPortable.exe. This file should be provided with all builds of Dev-C++ (also the nonportable ones) and should also be placed in the root directory. Launching this executable will run devcpp.exe and tell it to store configuration files in the program directory instead of in %APPDATA%\Dev-Cpp. This file can be compiled using Source\Tools\DevCppPortable\DevCppPortable.dev 3) Packman.exe (legacy). This file is launched by the menu item located at Tools >> Package Manager and provides .pak plugin support. This file has not been touched since like 2005 so do what you wish with it. 3. Other tools Other tools provided for legacy reasons or to easy the developer's life are: 1) GitPush. Automated script that adds, commits, and pushes the current code base to the SourceForge git repo. Please position this executable in the root folder of Dev-C++. 2) HeywordHighlighter. Used to generate the hash table of function pointers used by SynEditHighlighterCpp.pas to determine if a word is a keyword. 3) LangCheck. Compares any language file to the english language file and checks for missing entries and formatting options compatibility. 4) PackMaker (legacy). Used to create PAK extension files. 4. UPX To decrease the main executable size, the old developers from Bloodshed used a program called UPX to compress it. Here is a copy of their instructions on how to use it (I don't, since the mere megabyte you save in size pales to the 330MB of the provided compiler): When compressing with upx (Ultimate Packer for Executables) use: upx -9 --compress-icons=0 devcpp.exe Otherwise upx will compress all icons and the file associations will point to nonexisting (moved) icons within devcpp.exe 5. Shortcut Map This is an up to date map of the default shortcuts of Dev-C++. All Ctrl+(Letter) combinations are in use, except for the following letters: UJKL. The Shift modifier should be added to a shortcut to signify a multiplicated version of the regular shortcut. The use of Ctrl+Alt+(Key) or Shift+(Key) should be avoided. Misc. ----- F1 Help Alt+F4 Close Ctrl+Space Open Code Completion Executing/Debugging ------------------- F2 Goto Breakpoint F4 Toggle Breakpoint F5 Start Debug F6 Stop Debug/Regular F7 Next Line F8 Step Line F9 Compile F10 Start Regular F11 Compile and Run Regular F12 Rebuild Ctrl+F9 Syntax Check Current File Editing ------- Ctrl+Z Undo Ctrl+Y Redo Ctrl+X Cut Ctrl+C Copy Ctrl+V Paste Ctrl+A Select All Ctrl+Q Swap Header/Source Ctrl+. Comment Ctrl+, Uncomment Ctrl+/ Toggle Comment Ctrl+; Toggle Inline Comment Ctrl+T Add TODO Ctrl+D Delete Line Ctrl+E Duplicate Line Tab Indent Shift+Tab Unindent Shift+Ctrl+Up Move Selection Up Shift+Ctrl+Down Move Selection Down Shift+Ctrl+A Format Current File Searching --------- Ctrl+F Find Shift+Ctrl+F Find in Files Ctrl+R Replace Shift+Ctrl+R Replace in Files Ctrl+G Goto Line Shift+Ctrl+G Goto Function Ctrl+I Incremental Search Ctrl+M Swap Editor F3 Search Again Shift+F3 Reverse Search Again Files ----- Ctrl+N New File Ctrl+O Open File Ctrl+S Save File Shift+Ctrl+S Save All Files Ctrl+W Close File Shift+Ctrl+W Close All Files Ctrl+P Print File Ctrl+B Open Containing Folder View ---- Ctrl+F11 Toggle Fullscreen Ctrl+F12 Toggle Fullscreen Bar Ctrl+Tab Next Editor Shift+Ctrl+Tab Previous Editor Project ------- Ctrl+H Project Options 7. Image Map (somewhat outdated) These are the descriptions of the indices of the menu images lists used in d Transparent color is selected as the left most pixel of the bottom row. Menus: 0 = New Project 1 = New Source File/Project New Source File 2 = New Resource/Project Edit Resource/Resource Sheet 3 = New Template 4 = Open 5 = Clear History/Remove Watch 6 = Save File 7 = Save As 8 = Save All 9 = Close File/Close Sheet 10 = Print 11 = Exit 13 = Undo 14 = Redo/Step Over 15 = Cut 16 = Copy 17 = Paste 18 = Insert(edit Menu)/Next Step 19 = Toggle Bookmark 20 = Goto Bookmark 21 = Find/Add Watch/Find Sheet 22 = Replace 23 = Find Next 24 = Goto Line 25 = Project Add File 26 = Project Remove File 27 = Project Options 28 = Compile/Compile Sheet 30 = Rebuild 31 = Run 32 = Debug/Debug Sheet 33 = Compile and Run 34 = Compiler Options/Export (submenu) 35 = Environment Options 36 = Editor Options/Edit Watch 37 = Configure Tools 38 = Full Screen 39 = Next Editor 40 = Previous Editor 41 = Update Check 42 = About 43 = Log Sheet 44 = Toolbars Menu 45 = Full Screen Mode 46 = Help Toolbar Button 47 = Delete Profiling Information 48 = Package Manager 49 = Syntax Check 50 = Close All 51 = Class Browser Class/Struct 52 = Class Browser Method 53 = Class Browser Variable Gutter Images 0 = Breakpoint 1 = Active Breakpoint 2 = Invalid Breakpoint 3 = ??? Class Browser Images: 0 = Folder 1 = Classes 2 = Private Variables 3 = Protected Variables 4 = Public Variables 5 = Private Methods 6 = Protected Methods 7 = Public Methods 8 = Protected Inherited Methods ??? 9 = Public Inherited Methods ??? 10 = Protected Inherited Variables ??? 11 = Public Inherited Variables ??? Project Images 0 = Root Node 1 = File Node 2 = Run 3 = Recycle Bin ??? 4 = Folder Node 5 = Hamburger Icon ???