| [9] | 1 | IDE
 | 
|---|
 | 2 | 
 | 
|---|
 | 3 | ----------------------------------------------------------------------
 | 
|---|
 | 4 | 1. Find In Files always picks up word at cursor, even if option is deselected
 | 
|---|
 | 5 | - Fixed sometime
 | 
|---|
 | 6 | 
 | 
|---|
 | 7 | ----------------------------------------------------------------------
 | 
|---|
 | 8 | 2. In project manager, files are not sorted.
 | 
|---|
 | 9 | - Workaround, use SPT tool
 | 
|---|
 | 10 | 
 | 
|---|
 | 11 | ----------------------------------------------------------------------
 | 
|---|
 | 12 | 3. Debugger does not show PChar variables or large arrays 
 | 
|---|
 | 13 |   in any useful way (locks up). Have to use storage 
 | 
|---|
 | 14 | - Not fixed
 | 
|---|
 | 15 | 3a. String^ could be resolved also
 | 
|---|
 | 16 | 
 | 
|---|
 | 17 | ----------------------------------------------------------------------
 | 
|---|
 | 18 | 4. Can't inspect (right mouse) local variables. Have to use Watch.
 | 
|---|
 | 19 | - Not fixed
 | 
|---|
 | 20 | 
 | 
|---|
 | 21 | ----------------------------------------------------------------------
 | 
|---|
 | 22 | 5. Menu not keyboard accessible from control centre.
 | 
|---|
 | 23 | - Not fixed
 | 
|---|
 | 24 | 
 | 
|---|
 | 25 | ----------------------------------------------------------------------
 | 
|---|
 | 26 | 6. Debugger cannot run on OS/2 FP9 - 12 (?)
 | 
|---|
 | 27 | - Unimportant. Use < FP9 or > Fp12. Works with FP13 and on.
 | 
|---|
 | 28 | 
 | 
|---|
 | 29 | ----------------------------------------------------------------------
 | 
|---|
 | 30 | 7. Inconsistent useage of directories between build/compile make
 | 
|---|
 | 31 | If you're building (-B) then the compiler does not find SPU units in
 | 
|---|
 | 32 | the output directory. The error message is, 'File not found: forms.pas'. 
 | 
|---|
 | 33 | 
 | 
|---|
 | 34 | But
 | 
|---|
 | 35 | 
 | 
|---|
 | 36 | If you're making (-M) then the compiler DOES find SPU units in the
 | 
|---|
 | 37 | output directory.
 | 
|---|
 | 38 | 
 | 
|---|
 | 39 | This is the same for command line and IDE.
 | 
|---|
 | 40 | 
 | 
|---|
 | 41 | In fact Project - Build is exactly the same as Make except that it excludes
 | 
|---|
 | 42 | the output directory from looking for units.
 | 
|---|
 | 43 | Hence - it does not work if the output directory is one of the unit directories.
 | 
|---|
 | 44 | 
 | 
|---|
 | 45 | This is perhaps really a compiler bug, that it does not have a proper
 | 
|---|
 | 46 | BUILD mode.
 | 
|---|
 | 47 | 
 | 
|---|
 | 48 | - Not fixed
 | 
|---|
 | 49 | 
 | 
|---|
 | 50 | ----------------------------------------------------------------------
 | 
|---|
 | 51 | 8. Relative output directories do not work
 | 
|---|
 | 52 | - Fixed in SP4
 | 
|---|
 | 53 | 
 | 
|---|
 | 54 | If you specify an output directory for your project, relative to the
 | 
|---|
 | 55 | project directory (e.g. '.\output', or just 'output'), then the
 | 
|---|
 | 56 | debugger will refuse to run, saying 'Could not find starting CS:EIP'.
 | 
|---|
 | 57 | To workaround: don't use relative directories. Use the current
 | 
|---|
 | 58 | directory (leave the output dir blank) or specify the full path...
 | 
|---|
 | 59 | 
 | 
|---|
 | 60 | FIX:
 | 
|---|
 | 61 | It is a very simple error, the debug function HandleThreadCreate in
 | 
|---|
 | 62 | dbghlp.pas is being passed the string
 | 
|---|
 | 63 | c:\blah\projectdir\\output\filename.exe
 | 
|---|
 | 64 | Note the two slashes between the project dir and the relative output
 | 
|---|
 | 65 | dir.
 | 
|---|
 | 66 | 
 | 
|---|
 | 67 | This is due to a bug (or omission) in the ExpandPath function, as
 | 
|---|
 | 68 | far as I can tell. It takes two parameters:
 | 
|---|
 | 69 | ExpandPath( Path, BaseDirectory)
 | 
|---|
 | 70 | If BaseDirectory ends with a \ then relative directories end up with
 | 
|---|
 | 71 | the two slashes.
 | 
|---|
 | 72 | 
 | 
|---|
 | 73 | I used the previously released source code for the IDE, which I was not
 | 
|---|
 | 74 | able to get functioning very well (won't load forms or compile :-) 
 | 
|---|
 | 75 | BUT I was able to make a Sibyl.exe that can debug when the exe is in a
 | 
|---|
 | 76 | relative directory, as proof of the fix. (I didn't fix ExpandPath, 
 | 
|---|
 | 77 | instead I fixed the following in projects.pas:
 | 
|---|
 | 78 | 
 | 
|---|
 | 79 | FUNCTION FExpandProject(Path:STRING):STRING;
 | 
|---|
 | 80 | var
 | 
|---|
 | 81 |    projDir :  string;
 | 
|---|
 | 82 | BEGIN
 | 
|---|
 | 83 |   Result := '';
 | 
|---|
 | 84 |   IF Path = '' THEN exit;
 | 
|---|
 | 85 |   Path := ReplaceEnvStrings(Path);
 | 
|---|
 | 86 |   IF Path = '' THEN exit;
 | 
|---|
 | 87 |   //relative Pfade sind relativ zum SPR File
 | 
|---|
 | 88 |   IF ProjectBaseDir <> '' THEN
 | 
|---|
 | 89 | // begin fix
 | 
|---|
 | 90 |   begin
 | 
|---|
 | 91 |      projdir:= ProjectBaseDir;
 | 
|---|
 | 92 |      if projdir[ length( projdir ) ] = '\' then
 | 
|---|
 | 93 |         delete( projdir, length( projdir ), 1 );
 | 
|---|
 | 94 | 
 | 
|---|
 | 95 |     Result := ExpandPath(Path, projdir)
 | 
|---|
 | 96 |   end
 | 
|---|
 | 97 | // end fix
 | 
|---|
 | 98 |   ELSE
 | 
|---|
 | 99 |     Result := DOS.FExpand(Path);
 | 
|---|
 | 100 | END;
 | 
|---|
 | 101 | 
 | 
|---|
 | 102 | -- END FIX ---
 | 
|---|
 | 103 | 
 | 
|---|
 | 104 | ----------------------------------------------------------------------
 | 
|---|
 | 105 | 9. Always reloads "last" project after compiling complib
 | 
|---|
 | 106 | 
 | 
|---|
 | 107 | After installing components, it should not reload the last
 | 
|---|
 | 108 | project if there wasn't one open before installing
 | 
|---|
 | 109 | 
 | 
|---|
 | 110 | - Not fixed.
 | 
|---|
 | 111 | 
 | 
|---|
 | 112 | (Similarly, if set to not open last project at startup, 
 | 
|---|
 | 113 | opens a blank one instead).
 | 
|---|
 | 114 | 
 | 
|---|
 | 115 | ----------------------------------------------------------------------
 | 
|---|
 | 116 | 10. Multiple error messages for missing components when loading project
 | 
|---|
 | 117 | 
 | 
|---|
 | 118 | Say a single error message for all components that are not
 | 
|---|
 | 119 | installed, when loading a project, or at least one per class, not 
 | 
|---|
 | 120 | for every single component (very tedious)
 | 
|---|
 | 121 | 
 | 
|---|
 | 122 | - ?
 | 
|---|
 | 123 | 
 | 
|---|
 | 124 | ----------------------------------------------------------------------
 | 
|---|
 | 125 | 11. "Illegal SCU" error message after installing components
 | 
|---|
 | 126 | 
 | 
|---|
 | 127 | Often after installing a component(s), it reloads the project but then
 | 
|---|
 | 128 | says "illegal SCU format". But shutting down Sibyl and restarting, it
 | 
|---|
 | 129 | can load the project OK. That one sounds hard to find...
 | 
|---|
 | 130 | 
 | 
|---|
 | 131 | - ?
 | 
|---|
 | 132 | 
 | 
|---|
 | 133 | ----------------------------------------------------------------------
 | 
|---|
 | 134 | 12. Asks if want to save unchanged project
 | 
|---|
 | 135 | 
 | 
|---|
 | 136 | If you start Sibyl with a new project (e.g. have deselected 'load last
 | 
|---|
 | 137 | project' then it asks you if you want to save the new project even if
 | 
|---|
 | 138 | you haven't made any changes. Would be better to start with no project
 | 
|---|
 | 139 | at all.
 | 
|---|
 | 140 | 
 | 
|---|
 | 141 | - Not fixed
 | 
|---|
 | 142 | 12a. Maybe these options:
 | 
|---|
 | 143 |  1) Start with blank project (initial setting)
 | 
|---|
 | 144 |  2) Reload last project
 | 
|---|
 | 145 |  3) Start with no project
 | 
|---|
 | 146 | 
 | 
|---|
 | 147 | 12b. There is not really any "no project" mode 
 | 
|---|
 | 148 | 
 | 
|---|
 | 149 | ----------------------------------------------------------------------
 | 
|---|
 | 150 | 13. Copy and paste adds "1" to all components
 | 
|---|
 | 151 | 
 | 
|---|
 | 152 | When you copy and paste, all the controls are renamed to XXX1  even if
 | 
|---|
 | 153 | there isn't any existing XXX. This means cutting and pasting lots of
 | 
|---|
 | 154 | controls takes a lot of fiddling since you have to go and correct all
 | 
|---|
 | 155 | the names back to what they used to be. 
 | 
|---|
 | 156 | 
 | 
|---|
 | 157 | - Not fixed
 | 
|---|
 | 158 | 
 | 
|---|
 | 159 | ----------------------------------------------------------------------
 | 
|---|
 | 160 | 14. Non-visual components off form are unmoveable
 | 
|---|
 | 161 | 
 | 
|---|
 | 162 | If you accidentally move a non-visual control (e.g. a popup menu) out of
 | 
|---|
 | 163 | sight (e.g. past the edge of a panel) it's almost impossible to do
 | 
|---|
 | 164 | anything with it any more. There is no way to move it back again.
 | 
|---|
 | 165 | 
 | 
|---|
 | 166 | - Sort of fixed in FP4
 | 
|---|
 | 167 |  When selected from list in object inspector, they are moved onscreen
 | 
|---|
 | 168 | 
 | 
|---|
 | 169 | ----------------------------------------------------------------------
 | 
|---|
 | 170 | 15. Popup menu editor bugs
 | 
|---|
 | 171 | 
 | 
|---|
 | 172 | 15a - when you click outside the menu it seems to dissappear, but doesn't
 | 
|---|
 | 173 | come up properly next time (doesn't fully draw itself). It only seems
 | 
|---|
 | 174 | to be properly closed if you hit escape with the menu open. 
 | 
|---|
 | 175 | 
 | 
|---|
 | 176 | 15b - when you insert new items, then click on them, other menu items are
 | 
|---|
 | 177 | left as if they are still selected. 
 | 
|---|
 | 178 | 
 | 
|---|
 | 179 | 15c - Double clicking a menu item does nothing, you have to go to the event
 | 
|---|
 | 180 | panel and select the onClick event there. 
 | 
|---|
 | 181 | 
 | 
|---|
 | 182 | 15d - You can't move items up and down.
 | 
|---|
 | 183 | 
 | 
|---|
 | 184 | ----------------------------------------------------------------------
 | 
|---|
 | 185 | 16. The big error "removing this event requires the manual removal" or
 | 
|---|
 | 186 | whatever it is, when you blank out a event handler, is useless and annoying.
 | 
|---|
 | 187 | 
 | 
|---|
 | 188 | - Fixed in FP4?
 | 
|---|
 | 189 | 
 | 
|---|
 | 190 | ----------------------------------------------------------------------
 | 
|---|
 | 191 | 17. After menu from alt key, sometimes focus does not come back to edit
 | 
|---|
 | 192 | window
 | 
|---|
 | 193 | 
 | 
|---|
 | 194 | ----------------------------------------------------------------------
 | 
|---|
 | 195 | 18. After searching finishes without finding anything, next edit window is selected
 | 
|---|
 | 196 | 
 | 
|---|
 | 197 | ----------------------------------------------------------------------
 | 
|---|
 | 198 | 19. Debugger - Local variables do not always work (may be blank)
 | 
|---|
 | 199 | - Fixed in FP4
 | 
|---|
 | 200 | Workaround: make sure Local Variables pane is visible before first
 | 
|---|
 | 201 | break (?)
 | 
|---|
 | 202 | 
 | 
|---|
 | 203 | 19a Variables inside a nested procedure/function are not visible to debugger
 | 
|---|
 | 204 |   (Also compiler bug: self does not work with a nested p/f inside a method)
 | 
|---|
 | 205 | ----------------------------------------------------------------------
 | 
|---|
 | 206 | 21. Startup splash screen not on top
 | 
|---|
 | 207 | 
 | 
|---|
 | 208 | - Not fixed
 | 
|---|
 | 209 | - Not so bad
 | 
|---|
 | 210 | 
 | 
|---|
 | 211 | ----------------------------------------------------------------------
 | 
|---|
 | 212 | 22. Always recompiling main file (?)
 | 
|---|
 | 213 | 
 | 
|---|
 | 214 | - ?
 | 
|---|
 | 215 | 
 | 
|---|
 | 216 | ----------------------------------------------------------------------
 | 
|---|
 | 217 | 23. Last 'edit' item in object inspector remains 
 | 
|---|
 | 218 | Sometimes when changing to another component, if there is an edit box
 | 
|---|
 | 219 | showing, it gets left behind.
 | 
|---|
 | 220 | 
 | 
|---|
 | 221 | ----------------------------------------------------------------------
 | 
|---|
 | 222 | 24. Sibyl debugger does not handle all opcodes
 | 
|---|
 | 223 | 
 | 
|---|
 | 224 | ----------------------------------------------------------------------
 | 
|---|
 | 225 | 25. Install component does not remember it's directory or start from current
 | 
|---|
 | 226 | 
 | 
|---|
 | 227 | ----------------------------------------------------------------------
 | 
|---|
 | 228 | 26. Title of editor window is often not refreshed when a file is loaded.
 | 
|---|
 | 229 | 
 | 
|---|
 | 230 | ----------------------------------------------------------------------
 | 
|---|
 | 231 | 27. Setting application font
 | 
|---|
 | 232 | Did not update all forms until FP4?
 | 
|---|
 | 233 | 
 | 
|---|
 | 234 | ----------------------------------------------------------------------
 | 
|---|
 | 235 | 28. Browser-information is partially not correct (FB)
 | 
|---|
 | 236 | Fixed in FP4
 | 
|---|
 | 237 | 
 | 
|---|
 | 238 | ----------------------------------------------------------------------
 | 
|---|
 | 239 | 29. Search function finds only the first matching string in large files (FB)
 | 
|---|
 | 240 | Fixed in FP4
 | 
|---|
 | 241 | 
 | 
|---|
 | 242 | ----------------------------------------------------------------------
 | 
|---|
 | 243 | - Relative path names for compiler OUTPUT doesn't work in the IDE (FB)
 | 
|---|
 | 244 | Fixed in FP4
 | 
|---|
 | 245 | 
 | 
|---|
 | 246 | ----------------------------------------------------------------------
 | 
|---|
 | 247 | - Source code generator has problems with forward class definitions (FB)
 | 
|---|
 | 248 | Fixed in FP4
 | 
|---|
 | 249 | 
 | 
|---|
 | 250 | ----------------------------------------------------------------------
 | 
|---|
 | 251 | - Inspector combobox containts an item for pictures if you insert a TImage (FB)
 | 
|---|
 | 252 | Fixed in FP4
 | 
|---|
 | 253 | 
 | 
|---|
 | 254 | ----------------------------------------------------------------------
 | 
|---|
 | 255 | - Alt+F3 hangs the IDE in Win32 (FB)
 | 
|---|
 | 256 | Fixed in FP4
 | 
|---|
 | 257 | 
 | 
|---|
 | 258 | ----------------------------------------------------------------------
 | 
|---|
 | 259 | - Reinstalling component is not an error
 | 
|---|
 | 260 | 
 | 
|---|
 | 261 | A more useful message when reinstalling a component.
 | 
|---|
 | 262 | 
 | 
|---|
 | 263 | - ?
 | 
|---|
 | 264 | 
 | 
|---|
 | 265 | ----------------------------------------------------------------------
 | 
|---|
 | 266 | - Application icon does not usually work
 | 
|---|
 | 267 | - Fixed in FP4?
 | 
|---|
 | 268 | Possibly because, the default Sibyl icon has various sizes, so that
 | 
|---|
 | 269 | OS/2 picks those rather than scaling your supplied icon?
 | 
|---|
 | 270 | Or, need to set form icon.
 | 
|---|
 | 271 | 
 | 
|---|
 | 272 | ----------------------------------------------------------------------
 | 
|---|
 | 273 | - Setting form icon crashes the IDE
 | 
|---|
 | 274 | 
 | 
|---|
 | 275 | ----------------------------------------------------------------------
 | 
|---|
 | 276 | - If the EXE contains no debug information the IDE
 | 
|---|
 | 277 |   pops up 3 errors instead of one, when doing Debug - Go
 | 
|---|
 | 278 | 
 | 
|---|
 | 279 | ----------------------------------------------------------------------
 | 
|---|
 | 280 | - The inspector comboboxes are only 8 items in length
 | 
|---|
 | 281 | 
 | 
|---|
 | 282 | ----------------------------------------------------------------------
 | 
|---|
 | 283 | - The inspector component combobox does nothing useful with keypresses
 | 
|---|
 | 284 |   (incremental search might be nice)
 | 
|---|
 | 285 | 
 | 
|---|
 | 286 | ----------------------------------------------------------------------
 | 
|---|
 | 287 | - Find in files offers no efficient method to search only the
 | 
|---|
 | 288 |   files in the project or the project directory
 | 
|---|
 | 289 | 
 | 
|---|
 | 290 | ----------------------------------------------------------------------
 | 
|---|
 | 291 | - No way to change components ZOrder amongst themselves
 | 
|---|
 | 292 | 
 | 
|---|
 | 293 | ----------------------------------------------------------------------
 | 
|---|
 | 294 | - Inspector crashes when working with record properties that have
 | 
|---|
 | 295 |   unions (alternative forms) e.g. TRect
 | 
|---|
 | 296 |   Expand then collapse to reproduce.
 | 
|---|
 | 297 |   Workaround: don't use record types with unions.
 | 
|---|
 | 298 | ----------------------------------------------------------------------
 | 
|---|
 | 299 | - Inspector doesn't work for char properties.
 | 
|---|
 | 300 | ----------------------------------------------------------------------
 | 
|---|
 | 301 | - Line numbers displayed in CPU window are one less than correct.
 | 
|---|
 | 302 |   Compare with the main edit windows.
 | 
|---|
 | 303 | ----------------------------------------------------------------------
 | 
|---|
 | 304 | 
 | 
|---|
 | 305 | Enhancements/Other issues
 | 
|---|
 | 306 | -------------------------
 | 
|---|
 | 307 | 
 | 
|---|
 | 308 | Incremental search improvements:
 | 
|---|
 | 309 | - retrieve last search
 | 
|---|
 | 310 | - repeat
 | 
|---|
 | 311 | - back
 | 
|---|
 | 312 | 
 | 
|---|
 | 313 | Ability to show address of variables
 | 
|---|
 | 314 | - e.g. evaluate @ Variable and Addr( variable)
 | 
|---|
 | 315 | 
 | 
|---|
 | 316 | It would be nice to implement Delphi's behaviour of, if you have an
 | 
|---|
 | 317 | empty event handler, to delete it for you - this is especially good
 | 
|---|
 | 318 | for when you accidentally double click a control.
 | 
|---|
 | 319 | 
 | 
|---|
 | 320 | Keep same property selected when changing from one component to
 | 
|---|
 | 321 | another (object inspector) 
 | 
|---|
 | 322 | 
 | 
|---|
 | 323 | Improve incremental search 
 | 
|---|
 | 324 | - repeat
 | 
|---|
 | 325 | - backward
 | 
|---|
 | 326 | 
 | 
|---|
 | 327 | Customisable keys
 | 
|---|
 | 328 | 
 | 
|---|
 | 329 | Enhance the component install. Allow selecting multiple files.
 | 
|---|
 | 330 | 
 | 
|---|
 | 331 | Automatically delete empty event handlers 
 | 
|---|
 | 332 | 
 | 
|---|
 | 333 | Simpler keystroke to do debug - go
 | 
|---|
 | 334 | 
 | 
|---|
 | 335 | Split editor window
 | 
|---|
 | 336 | 
 | 
|---|
 | 337 | Put form data in separate files (safety)
 | 
|---|
 | 338 | 
 | 
|---|
 | 339 | Help always on top (option)
 | 
|---|
 | 340 | 
 | 
|---|
 | 341 | 
 | 
|---|