Hello,
attached is an updated state of my little editor project. It will hopefully not be the last update. I do not expect that anybody will use the editor for real work at the moment. It should work well though for running the examples of OxygenBasic. As I am now able to create O2Hedit.exe by itself and modify the code I will use the editor for extending it a little bit more.
Some things I added (but still must be tested):
Apply SCI_EmptyUndoBuffer instead of SCI_SetSavePoint for stopping Undo. This will hopefully prevent to reload a previous loaded file.
Regular expressions with find (Ctrl-F) and replace (Ctrl-H) using posix mode. The option Replace all with regex seems not to work correctly, I do not yet know if this is an issue of using an older scilexer.dll or a problem of the code.
Sensitive WinApi Help (Ctrl-F1). I used the Win32.chm created by Marc and Mike which can be found at
www.oxygenbasic.org, Reference.
When running or compiling a file, a temporary file will be created when the original file is modified and is not yet saved.
There is also a MenuItem Options/Environment Settings, where some directories for used tools can be changed.
Tabs in a file can be replaced by spaces. (I do not like the escaped tabs). The size for tabspaces can be set from 2 to 8.
I also added a basic autoindent and brace matching. Brace matching and editing strings look a little bit weird at the moment.
O2HEdit should run everywhere on disc or usb-stick. If there exists already an o2hedit.cfg file it should be deleted. I also changed the structure of the include files therefore an unused folder would be the best way to extract the files.
The code as it is will create an executable in folder \source. To compile and link to an exe file, the file MakeExe.bat in folder \source\MakeExe must be run (the line: set o2_dir=c:\OxygenBasic must perhaps be changed to the correct path).
To create a O2HEdit.dll, in O2HEdit.o2bas the line 12 must be changed to:
'#define make_exe
MakeDll.bat in folder \source\MakeDll is then used to create the dll in folder \source.
Before I can continue further with the project (fonts), I suppose some issues with Scilexer.dll must be examined.
Roland
.