2000-12-12 #1 Compiled under Java2. #2 Removed a try-catch for Exception around java.io.File constructor. Is unneeded. #3 Added more keyboard shortcuts. New N Open O Close Q Save S SaveAs shift-S 2000-12-23 #5 Ctrl P and Ctrl O both removed through being annoying. It's a waste of the ctrl characters. #7 Added a bit to catch InvocationTargetException when invoke is called for main. This means that errors in the application should be being passed through. It currently seems that they're not being passed, even though the javadoc suggests they should be automatically. ## jpe-src0.9.02.stable 2000-12-24 #8 Fixed up the code to JPEFilenameFilter. Doesn't work on EPOC. #9 Due to problems caused by either #4 or #6 or something related, the crtl-e y/n question fails to accept the answer. It is also different behaviour to all other EPOC programs, so I've removed it. Ctrl-e is not something you do accidentally. Rather than removed, it's commented out in FileHandler.java. #10 Made a major bug fix! Changed the code from using KeyListener to using TextListener. The upshot of this is that it now works properly when you close the file and knows when the file has been changed and when it hasn't. In the old functionality doing a ctrl-e counted as a change to the file. It required a call to file.clearDirty() being put into the useFile method. A touch ugly. #11 Added a shortcut for lock/unlock. 'L', it toggles on and off. The 'l' in the corner doesn't work properly, plus #10 can get confused if someone tries to change a locked file. @1 Discovered a paste bug. If you select text and paste, it doesn't replace the currently selected text. Might be an epoc java thing though. #12 Minor change to the locking code in FileHandler makes the 'l' in the titlebar work. Also needed a larger change to TitlebarHandler's say method. ## jpe-src0.9.04.stable 2000-12-25 #13 Modified FileHandler so that it remembers the directory the user last successfully loaded from. #14 Made the directory to load from a datum in the xml. 'currentdir' #15 Integrated JStyle's JSFormatter and JSBeautifier. No shortcuts yet. @2 Bug in ctrl e. Insists on the locked readme.txt being saved when it's not changed. Seems to work otherwise. ## jpe-src0.9.06.stable 2000-12-26 #16 Fixed pasting bug. @1. Method needs changing from insertText to pasteText(?). TextHandler. #17 Removed the shortcut on the open files menu. Ctrl 1 seems to be illegal. As does ctrl > and ctrl <. Added in a shortcut ctrl-J to go back and a ctrl-K to go forward. #18 Added Regexp to the searching. Currently it's a hidden feature, if you do a search which starts with '/', then it does a regexp search. #19 Added substitution. in Find: s/blah/whee with an optional flag of 'g'. #20 Moved substitution from Find to its own menu heading, with ctrl A as a shortcut atm. This involved a large rewrite of JPETextArea to allow for multiple questions to be asked of the user. It appears to work. @4 ctrl J/ctrl K is not always setup properly. @5 when readme.txt is shown, it has '//' in it. @6 copy and paste doesn't use the system clipboard. 2000-12-27 #21 Fixed @6. Had to add a permission to the SecurityManager. Highlighted the fact that code run in JPE shares the JVM and doesn't get its own JVM. This is nice for memory but rather yucky when example code needs a different static variable setting. #22 Tried flipping ctrlj/k to ctrl,/. Only issue is that ctrl , and ctrl . when unconsumed are turned into their literal characters. Added code to make these consumed. It's rather ugly as the JPETextArea needs to ask the JPE to ask the TitleBarHandler if there are any left as it doesn't always want to consume keyevents. This shows a need for an abstract information request framework. Needs to use Command Pattern as arguments need to be Objects rather than Strings. However, it seems to work nicely now. Whether it's platform independent, I've no idea. ## jpe-src0.9.08.stable #23 Added create from template. Currently handles the tag. @7 New files use 'untitled'+i. Poor system. Actually creates the files. #24 Renamed TextHandler to Editor as it doesn't implement handlerInterface. #25 Added import functionality. #26 Added JPE Log. Including Log.log() functionality. Slowly moving the application to use this for application errors. @8 Psion system clipboard appears to have a size limit. Need to implement a temporary psion fix for this so it handles it internally. #27 Changed substitution so that it only substitutes inside selected text if text is selected. #28 Added code to JPETextArea to remove a newline from question replies. #29 Renamed handlerInterface to Handler, Handler to AbstractHandler, added set/getJPE() and set/getName() methods to AbstractHandler. Fixed all extenders to use the new methods. Added a new constructor to AbstractHandler. Made ConfigHandler and TitlebarHandler extend Handler. Rewrote JPE to use a Hashtable to store Handlers in by name. (#4 Renamed handlerInterface to HandlerInterface. Superceded.) #30 Changed the handlers so that they are given the MenuBar to add themselves onto, rather than having to return their top level Menu. This fits my Hashtable change nicely, and also gives the Handler more say in how it appears. It does remove centralised control though. #31 Returned copy and paste to using a java buffer, due to too many bugs in the Epoc Java VM. My apologies to the original author. Keeping it so that when it copies/ cuts, it puts data onto the system clipboard, and making it so that it does attempt to use the System clipboard when something is put on that by another program. Fix to @8. 2001-01-05 #32 Added a recently opened files functionality. Persisted the recently opened files in config.xml. Does up to a max of 5. Need to move the value 5 to a configurable constant. #34 Fixed bug @2. Whenever new files were opened, or logs switched to, the code was not working correctly. Now seems to be fine. @9 If you exit wihle viewing a log window, no 'current-file' is saved. 2001-01-06 #35 Small one. Made the value of 5 configuable in the config.xml. 2001-01-07 #36 Added a Revert to original file option. ie) Reload the file off the disk. I decided this wasn't a common option, so it asks for verification. #37 Fixed a bug in ConfigHandler XML parsing. It wasn't maintaining the order of XML tags. While order isn't a part of the XML spec, it makes life a lot easier. Interesting to note that when the program starts up, it reads config.xml and then immediately saves it. Wonder what causes that. Possibly loading my recent files list? #38 Minor fix. Opening files wasn't creating ctrl-, and ctrl-.'s at all. ## jpe-src0.9.10.stable (start of jpe-src0.9.11.dev) ** The purpose of the 0.9.12 release is to work on Linux and Windows under ** java 1.1. Also to add some very nice additional functionalities that ** improve the IDE in large functional steps rather than filling out ** existing functionalities. #39 Added Garbage Collection option to shift-ctrl M. Dunno if any use, but what they hey. 2001-01-08 #40 Added it so that the param to command lines and the param to Find is saved so if you just hit return the next time, it re-uses it. @10 Find does not search from the cursor, but rather searches from the last point something was found at for this document. #41 Minor fix to code in Editor. If no config file then it causes an NPE. Missing else. ### Ran on Linux!!! ### ### Shortcuts broken. FIXED ### Nothing listening to window closing event. FIXED. ### System.setErr() crashes the damn thing. (Red Hat. IBM jdk 1.1.8) (Seems to be fixed) ### Titlebar doesn't consume key strokes properly. ### Aim to have it cross-platform ASAP. ### #42 Changed it so that on exit, if files are not saved it asks if you still wish to exit. #43 Moved the call to System.exit from FileHandler to JPE. Added in a call from Editor's windowClosing() event. This means that Close File from the System panel in psion works. 2001-01-11 ..Added some code to remember the cursor position of an openfile. Currently ..it seems that nothing but the value 0 is put into it. 2001-01-12 #44 Implemented AutoIndentation. Woo. On the psion it's a bit irritating as the textarea changes caret position to 0 and then back when you insert text. Work-around in for a psion bug. In a better JVM, some of the processing can be removed. Is also buggy. 2001-01-13 #45 Implemented import fixing. It's still very buggy and untested, but it does a relatively good job. 2001-01-15 #46 Minor change. Made it so it only sets the SecurityManager once. ie) Doesn't do so if SecManager is already the SecurityManager. Also made it dispose the Editor when it exits. The two of these allow JPE to run JPE inside itself. Some definite issues in there I think :) But is fun. 2001-02-01 #47 Added a Help menu and an About option (shit ctrl A) which mentions the version and emails of 2 authors. Apparantly was in 0.9b but not 0.9. I've been upgrading 0.9 it seems. 2001-02-04 #48 When a closing } is entered, it hilites the opening {. Will extend to handle other keys once I can do a pause without killing things. I _think_ the wait() passes back to the AWT thread which then never gives thread back to the hilite matching code. #49 Began internationalisation effort. It's a very talkative application with a lot of fairly hard coded strings so quite a bit to take out. Need a way to represent multi-properties. ie) font.name=Arial, font.name=Times etc. Then need to figure out a config system so many xml files are used and property files. Not all the strings belong in .properties, some of them are more configy. All menu's done today. TextController facade written. 2001-02-05 #50 Changed all MenuItems to be JPEMenuItems. Sun 1.1 JVM's seem to have a a bug in MenuItem.java which uses actionCommand when it should use getActionCommand(); This results in shortcuts not having the right action command. #51 Put a jpe.properties behind the TextController. ResourceBundle's don't appear to work on Epoc 5, so I've made the properties configurable in the config. It appears to slow loading down quite heavily. 2001-02-06 #52 Finished change #48. Thread sleeps to do the pause. Works for: } ] ) " and */ TODO ---- #6 Various fixes. Removed java.lang.* import and Object extension. #33 Make all object attributes private. JSTYLE ------ @3 JFormatter can't handle 'finally' keyword. Add this in? Talk to the creator.