News Flash (May-15-2022)
These are the news about BareED for May 2022.
Improvement and fixes:
BareED 0.10037 (May 2022)
Fixed menu-item "Thai-Mode?" to enable Thai again... (already 2011 fixed but never released)
Find & Replace requester allows tab-key to be used to choose next/previous gadget (Joseph).
Already 2014 implemented but never officially released.
Focus of Find & Replace requester after each click returned to editor window using tool-type "FOCUS=EDITOR" (Joseph). (2014)
Computing VBlank fixed. (2014)
Container width for objects of status line a little bit wider for supporting anti-aliasing fonts. (2014)
Layout of GUI elements a bit wider (concession to AfA_OS and anti-aliasing fonts) (Maximilian). (2017)
New features/bug fixes as of 2021/2022:
Files covering Thai letter sequences can now be saved and loaded as a UTF-8 encoded
using the Unicode character set. For this the menu item "Load/Save Thai as Unicode/UTF-8?"
If the menu item "Load/Save Thai as Unicode/UTF-8?" is turned on, characters are not only
written in UTF-8 format, but the Unicode character set is used to convert these characters.
This means as consequence that only ASCII and Thai letter sequences survive!
However, the corresponding glyphs are still displayed as single-byte characters (limitation of the operating system)
and for that to achieve, you need special fonts for it designed by Dr. Lyndon Hill.
AppIcon support implemented.
Iconification support - as long as no separate screen was opened (!) (suggested by Luca).
Possible buffer overflows for file names and other internal character strings are minimised by
consistently replacing the "C-Standard-Lib" alike functions by own written respecting boundaries.
BareED versions up to version 0.10013 already used safety variants but as these do not append a
zero byte in all cases, own written are now used.
As before, BareED only handles file names no longer than 255 characters internally; the same applies to
the path names. The font names and the DAC names can be a maximum of 107 characters. However, in order
that the DAC names fit into the corresponding menu, only the last 30 characters are displayed.
Return focus to editor window after having entered the string(s) in Find&Replace requester.
Useful when using Gui4Cli scripts.
NORELOADCOLOURS or NORELOADCOLORS
Do not utilise those colours set in a project icon upon loading a file in question.
See menu item "Adapt Colors?".
TIS620 or TIS-620
Turn on TIS-620 (Thai) support from the outset.
See menu item "Thai Mode?".
Instead of reading and writing TIS-620 encoded files, use the Unicode character set and UTF-8.
Even this tool-type is set or the corresponding menu item "Load/Save Thai as Unicode/UTF-8?"
is turned on, a check will always ensuring that the read file is UTF-8. If it is not, it will be loaded
as TIS-620 but saved as UTF-8! The bad side effect is that TIS-620 allows non-ASCII characters and
non-Thai characters placed within this file, while Unicode does not, i.e. such UTF-8 saved file will
likely contain also characters for a different code block (i.o.w. language)!
Man, it's really time for a Unicode aware text system...
Write along with the UTF-8 file the UTF-8-BOM - required by some MS software. Don't use it for Amiga
nor *NIX systems!
Show an AppIcon on Workbench - see menu item "Show AppIcon on WB?".
Remembered ASL requester positions und dimensions (only valid for BareED's program icon or a default-project icon).
New tool-value for the DISABLE tool-type.
The original behaviour of BareED was not to pay any attention to the fact that lines of text were covered by its own
requesters, e.g. when using the Find&Replace requester. New versions now scroll the text content so that these text
lines appear above or below the requester, if this is possible at all.
Unfortunately, this involves time-consuming calculations. To bypass these calculations, this feature can be turned off
and then BareED behaves the same as old versions.
Static menu items used as delimiter with inverted colours displayed correctly again (I didn't notice
this because I don't use these concerned menu items but the equivalent key shortcuts).
Knob-bank (button-bank) supports descriptions for any knob (button) (a long, long time ago already suggested by Lyndon...).
Default-projects do now have a higher priority than BareED's own settings, while utilising also the base settings
specified in BareED's icon.
Back-buffer remembering of colour values specified in a project icon instead of relying on adapted and probably
not-quite-correct returned values by Graphics - minimises the chance that false colours make it into a project file.
Remembering of all used ASL requester positions and dimensions, either manually entered in BareED's icon or
automatically in case saving a default-project.
BareED now stores about all of its supported tool-types in case a default-project is saved to disk, even those
that are not used (disabled by parentheses in the concerned icon).
Status line can be turned on/off using "Settings" menu whenever required.
New menu items for saving presets to disk - either for using these from the outset (BareED) or for creating
Changed all AllocMem() / FreeMem() calls to AllocVec() / FreeVec() - gaining some hundrets bytes of code.
Removed Enforcer/MuForce Hit in "THL AmigaGuide Demo" when this DAC application was forced to use a new
ground (switching screen).
Find&Replace requester does not obscure search result any longer, if this is possible at all, by shifting
page contents (a long, long time ago already suggested by Lyndon...).
DAC menu extended by new item to turn off running plug-ins.
DAC menu allows 20 plug-ins to reside herein, formerly 16.
Find&Replace requester does not cover the line of text if jumping to a line or bookmark is performed,
by shifting page contents, if that is possible at all.
Increased drastically speed (300%+) for retrieving hash values for "THL_C_Cpp" as well as "THL_ARexx"
by studying different compiler generated m68k code and simplifying it.
The signal evaluation occasionally could have caused an Enforcer/MuForce hit.
I guess that this error was present since years but I didn't notice this till now, because a task switch
in the middle of the evaluation had to occur in order to trigger it at all. Fixed for v0.10029.
Two entire evenings spent to find out what went wrong.
By the way, while I was at it anyhow, multiple events can now be collected and sent as one event to any
DAC-application requesting a PageUpdateMessage; this gives significantly better results when debugging
DAC / THL-applications because several re-drawings of the same line of text is suppressed and BareED almost
instantly gets back control (new tool-type "CME", "CME" stands for: collect multiple events).
Please, don't specify "CME" in BareED's icon unless you really have to as this could potentially lead to
miss mouse moves or mouse button presses.
Listed application names in the DAC-menu strip will be now correctly compared in order to avoid launching
the wrong one (e.g. "Test" and "Test1" could resulted in launching "Test1" if this one was placed before
"Test" in the menu strip).
DAC/THL-applications could miss the removal of the entire archive when a new region was allocated and the
old was freed. BareED forgot to inform all DAC / THL-applications about it, what led to trigger an Enforcer/MuForce
hit in these concerned THL-applications.
Revision control can now be managed by using the corresponding menu items (date format selectable and up to 5
out of 10 lines of text can now be defined) and not only by adding those manually in the corresponding icon.
If the page offset changed horizontally due to jumping to the bottom of the page and the last line of this page
contained only an empty line (linefeed), BareED missed to inform DAC / THL-applications to redraw entire page.
"THL AmigaGuide Demo" replaced by "THL_AGuide", which allows, like "THL_C_Cpp" and "THL_ARexx", to use user defined
colours for identifiers. By the way, "THL_AGuide" does not base on "THL AmigaGuide Demo", instead it was written
Enclosed new version of "THL C & C++" which is now called "THL_C_Cpp" because some compilers refused to accept
object names containing "&" and/or "+" signs.
Brought in line all by me written DAC and THL-applications (plug-ins), i.e. they now rely on the same header files.
Removed font "excel" from distribution because I don't want to see my fonts modified and used under different names
without informing me in first place, what should have been the normaliest way of acting.
BareED does not run correctly under the Vampire hardware - so don't use BareED on these systems. You have been warned.
Slightly updated BareED's documentations. Since years of ignoring BareED's documentation (guide) I come to the conclusion
that it must be written from scratch, but that's too much work for such an old program. So I marked only those chapters,
which were updated.
Reworked developer material lined up.