grub2: bring back build of aros-side grub2 tools
[AROS.git] / workbench / classes / zune / texteditor / ChangeLog
bloba934234c341472a65c4c33f95ae0cae64733a949
1 ------------------------------------
2 MUI TextEditor MCC class - ChangeLog
3 ------------------------------------
5 $Id: ChangeLog 955 2014-04-05 11:46:48Z damato $
6 $URL: svn://svn.code.sf.net/p/texteditor-mcc/code/releases/15.45/ChangeLog $
8 #### v15.45 RELEASE ############################################################
10 2014-04-05 Jens Maus <mail@jens-maus.de>
12   * misc: final v15.45 release preparations
14 2014-04-01 Thore Böckelmann <tboeckel@gmx.de>
16   * mcp/locale: added a new header line to the .po files to specify a correct
17     name for the generated .catalog file.
19 2014-03-31 Thore Böckelmann <tboeckel@gmx.de>
21   * mcp/CreatePrefsGroup.c, locale: restored the missing bubble help texts which
22     got lots during the transition to .po files. Please note that I copied over
23     the help texts for all non-slavic languages only. The old help texts are
24     still available in previous .ct files in the SVN repository.
25   * mcc/SpellChecker.c: added missing parameter for a notification to call a
26     hook via MUIM_CallHook. This caused crashes when a spellchecker was about to
27     replace a mispelled word. Thanks to Mikhail Malyshev for the hint.
29 2014-02-23 Jens Maus <mail@jens-maus.de>
31   * mcp/locale: all catalog translations have now been moved to use the free
32     services of transifex (http://www.transifex.com/projects/p/texteditor-mcc/)
34 #### v15.44 RELEASE ############################################################
36 2014-01-26 Jens Maus <mail@jens-maus.de>
38   * misc: final v15.44 release preparations
40 2014-01-25 Thore Böckelmann <tboeckel@gmx.de>
42   * mcc/ImportText.c: remember the current export hook before doing the actual
43     export with a different hook.
45 2014-01-13 Thore Böckelmann <tboeckel@gmx.de>
47   * mcp/locale/danish.ct: updated danish translation kindly provided by Niels
48     Bache.
50 2013-12-22 Jens Maus <mail@jens-maus.de>
52   * InitConfig.c: commented out a ReimportText() call which caused in YAM to
53     not show text in a write window uncolored while it contains colored
54     sequences. The root cause of the problem still have to be found but it
55     seems that call is definitly misplaced here!
57 2013-12-21 Thore Böckelmann <tboeckel@gmx.de>
59   * demo/TextEditor-Demo.c: correct wrong count parameter for
60     MUIM_Application_OpenConfigWindow.
62 #### v15.43 RELEASE ############################################################
64 2013-12-18 Jens Maus <mail@jens-maus.de>
66   * misc: final v15.43 release preparations
67   * mcc/HandleInput.c: fixed the internal spell checking functionality which was
68     broken since 15.41 because it triggered the Lookup for every entered
69     char instead of word. Now the SpellCheckWord() function should be correctly
70     called. This fixes ticket #108.
72 #### v15.42 RELEASE ############################################################
74 2013-12-14 Jens Maus <mail@jens-maus.de>
76   * misc: final v15.42 release preparations
77   * mcc/SpellChecker.c: changed the recently added SpellCheck modifications to
78     use AllocVecPooled/FreeVecPooled instead of calloc/free since this causes
79     the build to fail for MorphOS.
80   * Makefile: changed MorphOS build to use our own GetSucc, etc. functions and
81     not rely on the AROS compatibility macros.
83 2013-11-01 Thore Böckelmann <tboeckel@gmx.de>
85   * mcc/GetSetAttrs.c, mcc/HandleInput, mcc/SpellChecker.c: added a new
86     mechanism to trigger an attribute if the last entered word was found in a
87     list of keywords defined by the application. This feature will be used by
88     YAM's attachment reminder.
89   * mcc/SpellChecker.c: simplified the word extraction process for the keyword
90     check. This makes the extension check work.
92 2013-10-15 Thore Böckelmann <tboeckel@gmx.de>
94   * mcc/TextEditor-Test.c: updated AmigaOS4 build for the latest SDK.
96 2013-04-30 Thore Böckelmann <tboeckel@gmx.de>
98   * mcp/locale/greek.ct: updated greek translation kindly provided by Antonis
99     Iliakis.
101 #### v15.41 RELEASE ############################################################
103 2013-04-25 Jens Langner <Jens.Langner@light-speed.de>
105   * misc: final v15.41 release preparations
106   * include/muiextra.h: added definition of MUII_PopFont as some MUI SDK might
107     not have them yet.
109 2013-04-24 Thore Böckelmann <tboeckel@gmx.de>
111   * mcp/locale/greek.ct: updated greek translation kindly provided by Antonis
112     Iliakis.
114 2013-04-22 Thore Böckelmann <tboeckel@gmx.de>
116   * mcp/CreatePrefsGroup.c: use the font popup button image for MUI 3.9+.
118 2013-03-06 Thore Böckelmann <tboeckel@gmx.de>
120   * include/mccinit.c, include/shellstart.c: rearranged the code to ensure that
121     trying to start the final class from a shell does not crash.
123 2013-01-11 Thore Böckelmann <tboeckel@gmx.de>
125   * mcc/AllocFunctions.c, misc: removed the wrapper functions for allocating
126     and freeing a line as they covered a single line only.
128 2013-01-10 Thore Böckelmann <tboeckel@gmx.de>
130   * mcc/AllocFunctions.c, mcc/EditorStuff.c, mcc/BlockOperators.c: check for
131     possible references before removing/freeing a line, as getting the line's
132     preceeding or successing line after it has been removed from the line list
133     might dereference invalid pointers. This closes bug #107.
135 2013-01-04 Thore Böckelmann <tboeckel@gmx.de>
137   * mcc/HandleInput.c: for externally handled double clicks (i.e. the double
138     click hook) the not yet happend mouse release event will nevertheless be
139     treated as occured. Before it might have happened that the double click
140     hook launches a program which steals the focus and leaves the object
141     pending in a "mouse pressed" situation. This will result in an immediate
142     marking action as soon as the object regains the focus. For example this
143     happens when a URL is double clicked in YAM and if launching the browser
144     takes some seconds. This closes bug #106.
146 2012-12-22 Thore Böckelmann <tboeckel@gmx.de>
148   * tools/mkrelease: add italian catalog to the release archive.
150 #### v15.40 RELEASE ############################################################
152 2012-12-20 Jens Langner <Jens.Langner@light-speed.de>
154   * misc: final v15.40 release preparations
156 2012-11-29 Thore Böckelmann <tboeckel@gmx.de>
158   * mcc/MixedFunctions.c, mcc/PrintLineWithStyle.c: apply MUIPEN() to all pen
159     values allocated by MUI_ObtainPen().
161 2012-11-19 Thore Böckelmann <tboeckel@gmx.de>
163   * mcc/Pointer.c: make use of the standard mouse pointer images in the AmigaOS4
164     build if intuition.library 53.37 is available.
166 2012-09-20 Thore Böckelmann <tboeckel@gmx.de>
168   * mcp/ObjectCreator.c: don't trigger notifications in
169     MUIM_Mccprefs_ConfigToGadgets.
170   * mcp/ObjectCreator.c: save strings with their real length only instead of
171     their maximum length to assist MUI4's realtime prefs.
173 2012-09-12 Thore Böckelmann <tboeckel@gmx.de>
175   * mcc/Dispatcher.c, mcc/InitConfig.c: apply the current configuration before
176     calling the superclass' MUIM_Setup to ensure the frame settings are applied
177     correctly.
179 2012-09-03 Thore Böckelmann <tboeckel@gmx.de>
181   * mcp/locale/italian.ct: updated italian translation kindly provided by Samir
182     Hawamdeh.
184 2012-09-02 Thore Böckelmann <tboeckel@gmx.de>
186   * mcp/CreatePrefsGroup.c: the floattext object on the Spellchecking page now
187     accepts wheel scroll events.
189 2012-09-01 Thore Böckelmann <tboeckel@gmx.de>
191   * mcp/locale/italian.ct: added italian translation kindly provided by Samir
192     Hawamdeh.
194 2012-08-31 Thore Böckelmann <tboeckel@gmx.de>
196   * mcc/EditorStuff.c: fixed a redraw bug due to a wrong index check when
197     deleting characters at the end of a wrapped line.
199 2012-08-28 Thore Böckelmann <tboeckel@gmx.de>
201   * mcp/CreatePrefsGroup.c: adjusted the crawling text to better match the
202     capabilities of Crawling.mcc.
203   * mcc/HandleInput.c: added support for the standard cut, copy, paste, undo and
204     redo keys of MUI4.
206 2012-08-27 Thore Böckelmann <tboeckel@gmx.de>
208   * mcc/SetBlock.c: added missing block enabling when style changes were
209     requested along with setting the now block. Thanks to Andreas Falkenhahn for
210     the hint.
212 2012-08-24 Thore Böckelmann <tboeckel@gmx.de>
214   * mcc/Navigation.c: fixed several "use before check" occurences.
215   * mcc/HandleInput.c: fixed wrong handling of DEL key at the end of a line.
216   * mcc/misc: removed all the senseless distinction between "fast" and "slow"
217     background images. This makes the code a lot more understandable.
219 2012-08-22 Thore Böckelmann <tboeckel@gmx.de>
221   * mcc/EditorStuff.c: moved a check to a more appropriate location to avoid
222     leaving a function somewhere in the middle.
223   * mcc/EditorStuff.c: fixed a potential out of bounds access of the text line to
224     be printed.
225   * mcc/MixedFunctions.c: check the index to inside the array bounds before
226     accessing the array.
227   * mcc/EditorStuff.c: apply all further changes to a line only if a possible
228     expansion has succeeded before.
229   * mcc/MixedFunctions.c: removed all the handling of anti-aliased fonts. The
230     background area affected by redraw operations will always be cleared now no
231     matter what type of font is used.
233 2012-08-21 Thore Böckelmann <tboeckel@gmx.de>
235   * mcc/MixedFunctions.c: fixed an endless loop when splitting a non-empty line
236     into two new lines.
238 2012-08-20 Thore Böckelmann <tboeckel@gmx.de>
240   * mcc/MixedFunctions.c: put the line counting code into a separate function to
241     reduce code replication.
242   * mcc/PrintLineWithStyles.c: limit the drawing of the background of unwrapped
243     lines to the visual area.
245 2012-08-16 Thore Böckelmann <tboeckel@gmx.de>
247   * mcc/BlockOperators.c: simplified the cutting block function prototypes to
248     carry less parameters and avoid double negation.
249   * mcc/EditorStuff.c: fixed a memory leak when pasting clipboards without using
250     styles or colors.
251   * mcc/EditorStuff.c: if things like right alignment or highlighting are found
252     in the clipboard these will be treated as clipboard entries created by TE.mcc
253     itself and everything will be restored correctly now.
255 2012-08-15 Thore Böckelmann <tboeckel@gmx.de>
257   * mcc/BlockOperators.c: implemented a new function to mark the complete text.
258   * mcc/PrintLineWithStyles.c: correctly respect the maximum visibile width of
259     the object when drawing the text. This fixes bug #3558290.
260   * mcc/PrintLineWithStyles.c: don't print any text if there is no space left
261     for at least one character.
263 2012-08-14 Thore Böckelmann <tboeckel@gmx.de>
265   * mcc/GetSetAttrs.c: treat a NULL content pointer as an empty text. Otherwise
266     setting a NULL content will have no effect.
267   * mcc/GetSetAttrs.c: enabling/disabling the object will cause a redraw event
268     only if the state really changes and MUI4 is not available.
270 2012-08-09 Thore Böckelmann <tboeckel@gmx.de>
272   * mcc/misc: avoid copying styles and colors too often.
274 #### v15.39 RELEASE ############################################################
276 2012-08-05 Jens Langner <Jens.Langner@light-speed.de>
278   * misc: final v15.39 release preparations
280 2012-08-02 Thore Böckelmann <tboeckel@gmx.de>
282   * mcc/InitConfig.c: restrict certain configuration values to their configurable
283     limits.
284   * mcc/GetSet.c, mcc/InitConfig.c, mcc/ImportText.c: added a new function to
285     reimport the current text with modified TAB size or TAB conversion mode. This
286     fixes the issues that may arise when the user has configured a custom TAB
287     size and an application has set a text containing TAB characters before the
288     class was able to access its configuration, i.e. before opening the window.
289     This changes ensures that the text will always be correctly displayed with
290     the configured TAB size.
291   * mcc/GetSet.c, mcc/InitConfig.c: added a new attribute MUIA_TextEditor_TabSize
292     to let an application enforce a specific number of spaces per TAB character
293     no matter what the user has configured.
295 2012-07-20 Thore Böckelmann <tboeckel@gmx.de>
297   * mcc/GetSetAttrs.c: fixed a potential memory leak in case importing a text
298     failed. In this case the former text buffer was not freed.
300 2012-07-12 Thore Böckelmann <tboeckel@gmx.de>
302   * mcc/EditorStuff.c: use memmove() instead of strlcpy() when moving characters
303     backwards as the regions may overlap.
304   * mcc/EditorStuff.c: rely on the existing line length information instead of
305     calculating it from scratch when inserting or removing characters.
307 2012-07-09 Thore Böckelmann <tboeckel@gmx.de>
309   * mcc/EditorStuff.c: added some more boundary checks when inserting or
310     deleting a range of characters. I hope this makes it possible to track down
311     those mysterious crashed during UpdateChange().
312   * mcc/Dispatcher.c, mcc/ImportHook.c: assume a default TAB size of 4 spaces
313     per TAB. The "Wetter" application tries to import a text before the
314     configuration has been parsed and this left the class with a TAB size of
315     zero which then was used to replace TAB characters by spaces. This closes
316     bug #3536338.
317   * mcc/misc: replaced several indirect object pointers by direct ones.
318   * mcc/misc: removed a global variable to keep the object's top position. This
319     value is better obtained by using _mtop(obj).
321 2012-06-20 Thore Böckelmann <tboeckel@gmx.de>
323   * mcp/KeyStorage.c: don't allocate locked memory here as well and replaced an
324     AllocMem() call by AllocVec().
326 2012-06-19 Thore Böckelmann <tboeckel@gmx.de>
328   * mcc/misc: don't allocate locked memory.
330 2012-05-16  Pär Boberg <pbobbenb@spray.se>
332   * mcp/locale/swedish.ct: updated and some minor corrections.
334 2012-05-14 Thore Böckelmann <tboeckel@gmx.de>
336   * mcp/Makefile: removed .catalog files in clean target.
337   * mcp/locale/TextEditor_mcp.cd: replaced non-7bit-ASCII character by a
338     suitable sequence.
340 #### v15.38 RELEASE ############################################################
342 2012-05-12 Jens Langner <Jens.Langner@light-speed.de>
344   * misc: final v15.38 release preparations
345   * mcc/Makefile: restored the -DNO_INLINE_STDARG define in CFLAGS as otherwise
346     our AROS cross-compilers won't build for these targets and raise some
347     "untermated macro" errors when building our test applications.
348   * doc/TextEditor.guide: removed the whole "History" section as we solely
349     rely on the ChangeLog in future as it is too much work to update the .guide
350     for every new release.
352 2012-05-04 Thore Böckelmann <tboeckel@gmx.de>
354   * mcc/HandleInput.c: restored the correct return code interpretation of the
355     double click hook that was inverted in r756. Now everything is conformant to
356     the Autodocs again.
358 2012-04-07 Jens Langner <Jens.Langner@light-speed.de>
360   * mcc: the graphics library TextLength() function is now used for situations where
361     only a fixed string is used, thus no \t can be in there.
362   * mcc/NewGfx.c: removed the xoffset dependance in TextLengthNew() and TextFitNew()
363     as I can't see any reason for that? In addition, this fixes the problem that
364     the number of pixels required in ConvertTabs mode and non-ConvertTabs mode
365     wasn't equal for an instered TAB.
367 2012-04-05 Jens Langner <Jens.Langner@light-speed.de>
369   * ImportText.c, ImportHook.c, misc: changed ImportHook to also allow to specify
370     the number of spaces that should be used to convert tabs to spaces if this
371     operation is wanted.
372   * Keybindings.c, MCC_TextEditor.doc: changed default NextGadget keybinding to
373     use RCOMMAND+TAB instead of ALT+TAB because ALT+TAB is already taken by MUI
374     itself for switching windows.
375   * mcc: renamed 'RealTabs' to 'ConvertTabs' and made it default to TRUE so that
376     the old behaviour is reserved where TE.mcc always converts \t to spaces.
377   * mcc: removed the global TabSizePixels variable and moved it into the instance
378     data including reworked Text*New() functions in NewGfx.c.
379   * mcc/HandleInput.c: when a TE.mcc object has been active and the TAB has was
380     used the action always ended up in activating the next object in the
381     CycleChain as the new active object. However, when using the TAB key in an
382     editor the action should always end up in either storing real tabs (\t) or in
383     storing a number of spaces into the object according to the current settings.
384     However, this was not possible at all.
386 2012-04-05 Thore Böckelmann <tboeckel@gmx.de>
388   * mcc/HandleInput.c: fixed handling of the TAB key as real input key.
390 2012-04-04 Thore Böckelmann <tboeckel@gmx.de>
392   * mcc/GetSetAttrs.c: added missing #include.
394 2012-04-04 Jens Langner <Jens.Langner@light-speed.de>
396   * mcc/*: applied patch kindly provided by Nicolas Rybkin. Please note that
397     the functionality provided by this patch is not complete yet. But it should
398     provide basic functionality which will allow to put real tabs (\t) into a
399     texteditor (if the developer enabled this). Currently TE.mcc only supports
400     replacing tabs by a various number of spaces. With the patches provided
401     TE.mcc should be able to allow to press the TAB key and see \t to end up
402     in the buffer. However, as mentioned, the patches are not yet complete
403     and need some more work to end up in the final release.
404   * Makefile: got rid of -funroll-loops option as this one is potentially
405     dangerous under certain circumstances.
407 2012-04-02 Thore Böckelmann <tboeckel@gmx.de>
409   * mcc/InitConfig.c: string pointers obtained from the MUI configuration must
410     be copied instead of rembembered directly. With MUI4's realtime prefs the
411     pointer might become invalid at any time and hence the class would operate
412     on invalid data after that.
414 2012-02-16 Thore Böckelmann <tboeckel@gmx.de>
416   * mcc/ColorOperators.c: fixed adding new colors in case there was no color
417     used at all yet on a line.
419 2012-01-29 Matthias Rustler <mrustler@gmx.de>
421   * Backport of AROS fixes.
422     SDI headers updated.
424 2012-01-10 Thore Böckelmann <tboeckel@gmx.de>
426   * mcc/HandleInput.c: mouse wheel events happening over the slider object are
427     now handled in the same way as over the editor object. This makes scrolling
428     speed to be the same no matter where the mouse pointer is located.
430 #### v15.37 RELEASE ############################################################
432 2011-11-26 Jens Langner <Jens.Langner@light-speed.de>
434   * misc: final v15.37 release preparations
436 2011-01-04 Thore Böckelmann <tboeckel@gmx.de>
438   * all/Makefile: fixed the dependency generation to respect the system specific
439     object file path.
441 2010-11-17 Thore Böckelmann <tboeckel@gmx.de>
443   * mcc/HandleInput.c: slightly deobfuscated the double click handling.
444   * demo/TextEditor-Demo.c: obtain/release the pens in the MUIM_Setup/Cleanup
445     methods instead of MUIM_Show/Hide.
447 2010-10-05 Thore Böckelmann <tboeckel@gmx.de>
449   * include/mccinit.c: make sure that removing the library during LibClose()
450     really operates on the correct base. Calling LibExpunge() on MorphOS is
451     wrong, since that takes no parameter but expects the base to be in A6. We
452     work around this by using an additional function which gets called from
453     LibClose() and LibExpunge() with the correct base pointer.
455 #### v15.36 RELEASE ############################################################
457 2010-09-23 Jens Langner <Jens.Langner@light-speed.de>
459   * misc: final v15.36 release preparations
461 2010-09-18  Pär Boberg <pbobbenb@spray.se>
463   * mcp/locale/swedish.ct: new file generated by FlexCat 2.7.
465 2010-09-14 Thore Böckelmann <tboeckel@gmx.de>
467   * mcc/Methods.c: trying to clear the contents of an already instance of TE.mcc
468     caused an error message, because there was nothing to be deleted. Now the
469     deleted text is added to the undo buffer only if it really exists. This fixes
470     ticket #209 of YAM.
472 2010-09-08 Mariusz Danilewicz <mandi@interia.pl>
474   * AUTHORS: added translators section (please check and update missing persons).
476 2010-09-07 Thore Böckelmann <tboeckel@gmx.de>
478   * mccinit.c: added missing #include <string.h> for memset().
480 2010-09-03 Thore Böckelmann <tboeckel@gmx.de>
482   * mccinit.c, #?/ClipboardServer.c: updated to the latest version and clear all
483     embedded semaphore structures before calling InitSemaphore().
485 #### v15.35 RELEASE ############################################################
487 2010-09-01 Jens Langner <Jens.Langner@light-speed.de>
489   * misc: final v15.35 release preparations
491 2010-08-17 Thore Böckelmann <tboeckel@gmx.de>
493   * mccinit.c, SDI_compiler.h: updated to latest versions.
495 2010-08-04 Thore Böckelmann <tboeckel@gmx.de>
497   * mcc/#?: replaced lots of direct references to MUI's area data and render
498     info by the appropriate macro calls. This way we can rid of some private
499     variables which are just copies of these values.
500   * mcc/PrintLineWithStyle.c: added a TextFit() call to calculate how many
501     characters can really be displayed. This works around the problem that very
502     long lines would either be drawn outside the editors area or were not
503     correctly displayed at all due to integer overflows in graphics.library.
505 2010-07-30 Thore Böckelmann <tboeckel@gmx.de>
507   * mcc/Debug.c, mcp/Debug.c: removed unused debug flags from the .mcp and made
508     @mtrack user definable for both classes.
509   * mcp/Makefile, misc: added missing functions for the OS3 debug build.
511 2010-07-29 Jens Langner <Jens.Langner@light-speed.de>
513   * mcp: fixed MorphOS compile by applying debugging framework from mcc also
514     on the mcp.
516 2010-07-07 Thore Böckelmann <tboeckel@gmx.de>
518   * mcc/HandleInput.c: the text was no longer refreshed in case the user tried
519     to paste from an empty or non-text clipboard.
521 2010-07-06 Thore Böckelmann <tboeckel@gmx.de>
523   * mcc/Methods.c: clearing the complete text is now remembered as an action
524     without cursor movement. Undoing this action will result in the cursor being
525     placed on the very first character of the text instead of behind the very
526     last character.
527   * mcc/misc: use the SetAfPt() macro instead of poking directly into the
528     RastPort structure.
530 2010-07-05 Thore Böckelmann <tboeckel@gmx.de>
532   * mcp/CreatePrefsGroup.c: replaced the text editor object containing the
533     instructions about the spell checking facility by a plain float text object.
534     Having a flow blown editor is far too much overhead here.
535   * mcc/UndoFunctions.c: defined a separate value for a "do nothing" undo step
536     which can be used to erase any other undo step type.
537   * mcc/UndoFunctions.c: fixed a possible memory leak when resizing the undo
538     buffer. A resize from any number of steps to zero steps would not have freed
539     any undo steps done so far.
541 2010-07-03 Thore Böckelmann <tboeckel@gmx.de>
543   * mcp/ObjectCreator.c: removed the "undo steps" slider from the real time
544     settings facility of MUI4 completely. First, adjusting the value will give
545     no visual feedback. Second (and even more important), adjusting the number
546     of steps in real time will effectively kill all undo steps so far in case
547     the slider is moved to zero. This is not what the user expects to happen.
548     MorphOS-devs, please check the other GUI elements if some of them can be
549     excluded from the real time settings as well. Furthermore, please check if
550     this change fixes bug #3024024.
552 2010-07-02 Thore Böckelmann <tboeckel@gmx.de>
554   * mcc/UndoFunctions.c: the undo buffer will be preserved in case the number of
555     undo steps is modified.
556   * mcc/UndoFunctions.c: a modified number of undo steps will now trigger the
557     notifications for MUIA_TextEditor_Undo/RedoAvailable.
558   * mcc/UndoFunctions.c: in case there is not enough memory for a new undo step
559     (i.e. a too big block) only this single step will be discarded instead of
560     all remembered steps so far.
561   * mcc/UndoFunctions.c: in case the number of undo steps is decreased the steps
562     which don't fit into the new buffer are freed correctly now.
564 #### v15.34 RELEASE ############################################################
566 2010-07-01 Jens Langner <Jens.Langner@light-speed.de>
568   * misc: final v15.34 release preparations
570 2010-06-30 Jens Langner <Jens.Langner@light-speed.de>
572   * Makefile: fixed the top-level Makefile to only compile for the standard
573     platform found by the separate Makefiles in each subdirectories.
574   * tools/mkrelease.sh: minor fixes to the mkrelease script to generate a complete
575     new release archive.
577 2010-06-29 Ilkka Lehtoranta <ilkleht@yahoo.com>
579   * mcc/Makefile, mcc/private.h: Use standard AROS GetHead/Pred/Succ/Tail
580     macros in MorphOS.
582 2010-06-29 Thore Böckelmann <tboeckel@gmx.de>
584   * mcp/locale/swedish.ct: added ##codeset line.
586 2010-06-27 Thore Böckelmann <tboeckel@gmx.de>
588   * doc/MCC_TextEditor.guide: fixed wrong version information. This fixes bug
589     #3021781.
591 2010-06-11 Thore Böckelmann <tboeckel@gmx.de>
593   * Install-MCC: extended the final message that a reboot might be necessary to
594     be able to use the just installed version.
596 2010-06-10 Thore Böckelmann <tboeckel@gmx.de>
598   * mcc/misc: moved all sources which implement stuff which is missing on some
599     systems to a separate "extrasrc" directory.
601 2010-06-09 Thore Böckelmann <tboeckel@gmx.de>
603   * mcc/Get#?.c: added GetHead/Pred/Succ/Tail implementation for those systems
604     which don't implement these natively.
605   * mcc/EditorStuff.c: use the growing tables as well when removing characters
606     and the style/color information needs to be updated. This should have been
607     the last place for possible buffer overruns if removing some styled text
608     resulted in more style changes than before.
610 2010-06-07 Thore Böckelmann <tboeckel@gmx.de>
612   * mcc/misc: replaced all hand crafted style and color array allocations by
613     growing arrays which are resized on demand. This makes buffer overruns
614     due to imprecise size calculation impossible and should fix the random
615     crashes.
617 2010-05-25 Matthias Rustler <mrustler@gmx.de>
619   * Fixes for 64-bit AROS: changed some ULONG to IPTR to get rid of warnings like
620     "conversion from/to pointer to/from integer with different size"
622 2010-06-03 Thore Böckelmann <tboeckel@gmx.de>
624   * mcc/EditorStuff.c: fixed an off-by-one string copying.
626 2010-06-02 Thore Böckelmann <tboeckel@gmx.de>
628   * mcc/EditorStuff.c, mcc/HandleARexx.c: replaced some memcpy() calls by more
629     apropriate strlcpy() calls.
630   * mcc/AllocFunctions.c, mcc/#?VecPooled.c, mcc/Makefile: moved the
631     #?VecPooled()functions for OS3 to separate files.
632   * mcc/ClipboardServer.c: removed the ENTER()/LEAVE() macro calls from the
633     server process' function as these are cluttering up the debug log.
635 2010-06-01 Thore Böckelmann <tboeckel@gmx.de>
637   * mccinit.c: added CleanupDebug() call to expunge function.
638   * Debug.c, misc: implemented a basic check to verify that stuff is being freed
639     using the correct function, i.e. FreeVec() for AllocVec()'ed memory.
640   * Debug.c: fixed slightly wrong string parsing.
642 2010-05-31 Thore Böckelmann <tboeckel@gmx.de>
644   * mcc/MixedFunctions.c: fixed a possible memory leak.
645   * mcc/EditorStuff.c, mcc/Dispatcher.c: replaced some free line loops by a call
646     to FreeTextMem().
647   * mcc/BlockOperators.c, mcc/ImportHook.c, mcc/HandleARexx.c: minor code
648     cleanup.
650 2010-05-27 Thore Böckelmann <tboeckel@gmx.de>
652   * dist/Install-MCC: the supported languages are now collected dynamically
653     instead of being defined statically. Furthermore the .mcc name must be
654     specified in the script's icon as application name. This makes it possible
655     to use the script for arbitrary classes without modification.
656   * dist/icons: set some reasonable default icon positions.
658 2010-05-26 Thore Böckelmann <tboeckel@gmx.de>
660   * mcp/locale/polish.ct: added a missing comment.
662 2010-05-26 Mariusz Danilewicz <mandi@interia.pl>
664   * mcp/locale/polish.ct: translation of MSG_HELP_CURSOR_SELECTED corrected
666 2010-05-25 Matthias Rustler <mrustler@gmx.de>
668   * mcp/mmakefile.src: icon.c added
669   * mcp/locale/TextEditor_mcp.cd: one string corrected
670   * mcp/locale/french.ct: there was a more recent version
671     in the AROS source
672   * include/mccinit.c: updated with fixes for AROS V1 API
674 2010-05-25 Thore Böckelmann <tboeckel@gmx.de>
676   * mcc/HandleARexx.c: fixed a NULL pointer access when the "SELECTNONE"
677     command was invoked without any text being selected before. This closes
678     YAM bug #165.
679   * mcp/locale/polish.ct: added missing final LF character.
680   * dist/Install-MCC: added the first version of a generic MCC Installer script.
681     To use this script for other classes only the name and the set of supported
682     languages needs to be adapted.
684 2010-05-24 Mariusz Danilewicz <mandi@interia.pl>
686   * mcp\locale\polish.ct: added Polish translation
687   * tools\mkrelease.sh: added generating Polish catalog to release
688   * mcp\makefile and mmakefile.src: added generating Polish catalog
690 2010-05-20 Thore Böckelmann <tboeckel@gmx.de>
692   * Makefiles: add varargs stubs only for those systems which really need it.
694 2010-05-18 Thore Böckelmann <tboeckel@gmx.de>
696  * mcc/UndoFunctions.c: use memmove() instead of memcpy() to shift the undo
697    steps as the buffers definitely do overlap due to the in-place operation.
698  * mcc/Methods.c: clearing the text of a read-only instance will no longer add
699    the deleted text to the undo buffer. This fixes bug #3003238.
700  * mcc/UndoFunctions.c: trying to perform any undo/redo action on a ready-only
701    instance will let this action fail.
702  * added stuff for automated build of release archives.
704 2010-05-17 Thore Böckelmann <tboeckel@gmx.de>
706  * mcc/SpellChecker.c: slightly improved the setup of the Rexx messages to avoid
707    accessing possible NULL pointers.
709 #### v15.33 RELEASE ############################################################
711 2010-05-16 Jens Langner <Jens.Langner@light-speed.de>
713   * misc: final v15.33 release preparations
715 2010-05-10 Thore Böckelmann <tboeckel@gmx.de>
717   * mcc/AllocBitMap.c: fixed wrong freeing of a memory block in case another
718     allocation failed. This only could affect classic systems.
719   * mcc/AllocFunctions.c: integrated the OS3.0 Alloc/FreeVecPooled() functions
720     as well as the AllocLine()/FreeLine() functions into the memory tracking
721     framework.
723 2010-05-07 Thore Böckelmann <tboeckel@gmx.de>
725   * mcc/InitConfig.c: fixed wrong pen allocation.
727 2010-05-05 Thore Böckelmann <tboeckel@gmx.de>
729   * mcc/EditorStuff.c: fixed a wrong deallocation which might have lead to a
730     crash (FreeVec instead of FreeVecPooled).
731   * mcc/EditorStuff.c: after converting a text clip from UTF8 the line content
732     pointer is now updated correctly. This fixes bug #2995825.
734 #### v15.32 RELEASE ############################################################
736 2010-04-30 Jens Langner <Jens.Langner@light-speed.de>
738   * misc: final v15.32 release preparations
740 2010-04-30 Thore Böckelmann <tboeckel@gmx.de>
742   * mcp/library.c: added version check for NBitmap.mcc. Only version V15.8+ can
743     handle raw image data.
745 2010-04-28 Jens Langner <Jens.Langner@light-speed.de>
747   * mcp/icon.c: now the new NBitmap.mcc is explicitly used for displaying the
748     32bit raw image data on OS3 and OS4.
750 2010-04-28 Thore Böckelmann <tboeckel@gmx.de>
752   * mcp/library: implemented experimental fallback to NBitmap.mcc for raw image
753     data in case Rawimage.mui is not available.
755 2010-04-27 Thore Böckelmann <tboeckel@gmx.de>
757   * mcp/library: all systems now try to create a truecolor prefs image using
758     Rawimage.mcc first before falling back to the old 8bit images.
760 2010-04-26 Thore Böckelmann <tboeckel@gmx.de>
762   * mcp/misc: merged all converted image data into one file, moved the image
763     files to a separate subdirectory, combined the prefs icon generation for
764     all platform into one function.
766 2010-04-24 Thore Böckelmann <tboeckel@gmx.de>
768   * include/mccinit.c: updated to latest version. This fixes the stack swapping
769     for AROS.
771 2010-04-23 Ilkka Lehtoranta <ilkleht@yahoo.com>
773   * mcp/misc: use bzip2 compressed 32bit prefs image on MorphOS 2.
775 2010-04-22 Thore Böckelmann <tboeckel@gmx.de>
777   * ColorOperators.c, StyleOperators.c: the GetColor() and GetStyle() functions
778     now handle invalid positions internally.
779   * ExportHook.c: cleaned up the plain export function a bit for better under-
780     standing.
781   * BlockOperators.c: deleting a multiline block would have dropped any coloring
782     information and thus the block would be restored uncolored at an Undo
783     operation.
784   * HandleInput.c, UndoFunctions.c: erasing a single character using the
785     Backspace key is now handled like erasing a marked block. This seems to be
786     overkill on the first sight. But the former backspace handling did not take
787     any coloring into account and undoing such an operation resulted in lost
788     colors.
789   * HandleInput.c: erasing a single character using the DEL is now handled like
790     erasing a marked block for the same reasons as for the Backspace key.
791   * UndoFunctions.c: correctly free a ET_DELETEBLOCK_NOMOVE clip like it is done
792     for ET_DELETEBLOCK clips.
793   * HandleInput.c, UndoFunctions.c: erasing a character with DEL will leave the
794     cursor at the same position when undoing this operation.
796 2010-04-21 Thore Böckelmann <tboeckel@gmx.de>
798   * EditorStuff.c: slight optimization to shift style and color changes only if
799     they need to be shifted when deleting text.
800   * BlockOperators.c: fixed the increasing amount of color changes without real
801     color changes being applied. Blocks with color changes must be correctly
802     terminated with a color change back to the default color.
803   * EditorStuff.c: finally fixed a long standing coloring bug. This one occured
804     when inserting a colored clip into a line without any color changes yet.
805     After undoing and redoing this operation the line was colored until the end,
806     because the implict color change at the end of the clip was not correctly
807     handled. This is really weird stuff!
809 2010-04-20 Thore Böckelmann <tboeckel@gmx.de>
811   * Debug.c: added new debug flags DBF_IMPORT and DBF_EXPORT to debug the import
812     and export hook functions.
813   * ImportHook.c: added some debug messages to the plain text import hook.
814   * BlockOperators.c: added the missing color handling when deleting a marked
815     block and restoring it afterwards using the Undo function. I hope I didn't
816     miss any case. This stuff is still far from being easy to understand.
817   * UndoFunctions.c: a pointer was not cleared after a FreeVecPooled() call and
818     might have been freed a second time and thus causing crashes.
819   * ImportHook.c: optimized the import hook a bit to only apply real style
820     changes instead of every style operation. Furthermore we ensure that all
821     applied styles are unapplied at the end of the imported text.
822   * BlockOperators.c: all applied colors changes are unapplied correctly.
824 2010-04-17 Jens Langner <Jens.Langner@light-speed.de>
826   * mcc/EditorStuff.c, mcc/UndoFunctions.c: removed the "highlight" warnings by
827     implementing the undo/redo of highlighted lines as well. However, Does this
828     really change something? And what about colored text? How can be undo/redo
829     colored text as well?
831 2010-04-12 Thore Böckelmann <tboeckel@gmx.de>
833   * mcp/misc: added 32bit truecolor prefs image done by Martin 'Mason' Merz.
834     This requires at least MUI3.9 and AmigaOS 4.1.
836 2010-04-12 Jens Langner <Jens.Langner@light-speed.de>
838   * mcc/SetBlock.c: reworked the whole text boundary checking before the SetBlock
839     operations because it was largely broken and potentially caused crashed in case
840     a developer requested operations outside avaiable text areas. In addition two
841     new special values MUIV_TextEditor_SetBlock_Min/Max allow now to specify the
842     start/stop values for minimum and maximum.
843   * mcc/StyleOperators.c: fixed a minor compiler warning where the in-place
844     invertation via '~' caused a compiler warning with GCC 4.4+
846 2010-02-10 Thore Böckelmann <tboeckel@gmx.de>
848   * mcc/AllocBitMap.c: the CyberGraphics semaphore check was done without the
849     necessary Forbid()/Permit() pair. Although it is absolutely unlikely that
850     the semaphore will be removed it is better to follow the rules. This fixes
851     bug #2948533.
853 2009-11-28 Thore Böckelmann <tboeckel@gmx.de>
855   * mcc/ClipboardServer.c: decreased the stack size from 16K to 8K as the server
856     process doesn't really need much stack.
858 2009-11-09 Thore Böckelmann <tboeckel@gmx.de>
860   * mcc/misc: implemented MUIA_TextEditor_PasteColors/Styles to enable/disable
861     pasting text with color and style information. This fulfils feature request
862     #2807448.
863   * mcc/GetSetAttrs.c: modifying the MUIA_TextEditor_AutoClip attribute treated
864     the tag as if it was TRUE always thus making it impossible to deactivate it.
865     This fixes YAM bug #2894042.
867 2009-10-26 Thore Böckelmann <tboeckel@gmx.de>
869   * mcc/UndoFunctions.c: adding a new entry to the undo buffer will erase any
870     previously done redo action. This is what all text editors do. Additionally
871     this fixes a double free of memory upon cleanup.
873 #### v15.31 RELEASE ############################################################
875 2009-10-24 Jens Langner <Jens.Langner@light-speed.de>
877   * misc: final release preparations
879 2009-10-21 Thore Böckelmann <tboeckel@gmx.de>
881   * mcc/ImportHook.c: the import hooks didn't set the allocation size of the
882     contents in the line structure which caused bogus error messages in the
883     debug log and caused trashed memory when a line had to be expanded.
884   * mcc/MixedFunctions.c: the recently changed ExpandLine() and CompressLine()
885     functions used the wrong length. This could lead to visibly truncated lines.
886   * mcc/BlockOperators.c, mcc/ExportHook.c: avoid allocating zero sized buffers
887     and make sure not to produce memory leaks when getting a block's contents.
888     An empty last line caused leaks and false error messages about not enough
889     memory for the undo buffer. This was yet an other of Allan's ancient bugs...
890   * mcc/Debug.c: added BLOCK debug class.
892 2009-10-20 Thore Böckelmann <tboeckel@gmx.de>
894   * mcc/TextEditor-Test.c: the debug stuff was initialized after the starting
895     the clipboard server which requires a fully set up debug environment.
896   * mcc/ColorOperators.c, mcc/StyleOperators.c, mcc/ImportHook.c: added a
897     missing #include.
899 2009-10-19 Thore Böckelmann <tboeckel@gmx.de>
901   * mcc/SpellChecker.c: the spell checker no longer treats a missing ENV:Found
902     variable as a failure and thus will no longer DisplayBeep() in this case.
903   * mcc/misc: added an allocation size counter to each line to get rid of the
904     necessity to peek around in memory to get an allocation's size.
906 2009-10-12 Thore Böckelmann <tboeckel@gmx.de>
908   * mcc/misc: added a proper definition for "no separator" and use it all over
909     the place.
910   * mcc/misc: cleaned up the dispatcher a bit. Now all method functions have the
911     usual class/object/message parameters.
913 2009-10-09 Thore Böckelmann <tboeckel@gmx.de>
915   * mcc/BlockOperators.c: cutting a line to the clipboard and deleting complete
916     lines will now free the attached color informations as well. Before only the
917     text and the styles were freed which means this was a potential memory leak.
918   * mcc/Dispatcher.c: the OM_DISPOSE method will now free all lines together
919     with their contents, styles and colors. Although we are using a per-instance
920     memory pool this is not absolutely necessary to avoid memory leaks, but it
921     is bad style to rely on such features.
922   * mcc/Debug.c: implemented the memory tracking for the debug build as known
923     from YAM to catch possible memory leaks.
925 2009-10-08 Thore Böckelmann <tboeckel@gmx.de>
927   * mcc/UndoFunctions.c: when reusing an undo entry the former contents were not
928     erased and could lead to double freeing if that entry contained a clip of
929     pasted or deleted text. Now the contents are always cleared.
931 2009-10-07 Thore Böckelmann <tboeckel@gmx.de>
933   * mcc/misc, mcp/misc: again *LOTS* of code cleanup to make this monster more
934     readable and understandable.
936 2009-10-06 Thore Böckelmann <tboeckel@gmx.de>
938   * mcc/Debug.c, mcc/SpellChecker.c: added the SPELL debug flag to get some
939     debug output from the spell checking process.
941 2009-10-05 Thore Böckelmann <tboeckel@gmx.de>
943   * mcc/SpellChecker.c: added the usual ENTER()/LEAVE() macro calls.
944   * mcc/UndoFunctions.c, mcc/Methods.c: fixed a double FreeMem() call and a
945     copy'n'paste bug which prevented a proper redraw after undoing the deletion
946     of a text block.
947   * mcc/StyleOperators.c: added a missing notification when the style changed
948     from bold to non-bold.
949   * mcp/CreatePrefsGroup.c: removed the "+-5" part from the undo level slider,
950     because the new Undo/Redo management doesn't need these additional steps
951     anymore.
952   * mcc/UndoFunctions.c: reimplemented the complete Undo/Redo handling from
953     scratch. Before lots of temporary pointers were used and had to be kept in
954     sync, which most probably did not always happen. It is really amazing how
955     complicated such a trivial handling can be implemented. Shame on you, Allan!
956   * mcc/misc: *LOTS* of code cleanup. This code is a real mess! I really wonder
957     what kind of mysterious crashes are still lurking in there :(
959 2009-10-02 Thore Böckelmann <tboeckel@gmx.de>
961   * mcc/misc: added some house keeping variables to the style and color handling
962     to detect possible buffer overruns. These also make it possible to get rid
963     of peeking around to get the size of a previous allocation.
965 2009-09-29 Thore Böckelmann <tboeckel@gmx.de>
967   * mcc/ClipboardServer.c: added the missing NP_CodeType=CODETYPE_PPC tag for
968     the MOS build.
970 2009-09-25 Thore Böckelmann <tboeckel@gmx.de>
972   * mcc/EditorStuff.c: fixed a bug which treated columns numbers as color
973     numbers.
974   * mcc/misc: fixed some LONG variable to BOOL, as this is what they really are.
976 2009-09-24 Thore Böckelmann <tboeckel@gmx.de>
978   * mcc/misc: replaced the complete embedded clipboard stuff by a server process
979     which does the dirty stuff. This fixes the issue that opening two write
980     windows in YAM made pasting text impossible.
982 2009-09-21 Thore Böckelmann <tboeckel@gmx.de>
984   * mcc/Dispatcher.c: added a name the memory pool for the OS4 build.
986 2009-09-07 Thore Böckelmann <tboeckel@gmx.de>
988   * mcc/misc: replaced all custom "end of color" markers by a proper definition.
990 2009-09-04 Thore Böckelmann <tboeckel@gmx.de>
992   * mcc/EditorStuff.c: fixed yet another crash when removing lines. This old
993     handling was a *real* *big* *mess*. Exploiting features of the C language
994     is cool, as long as other persons understand it without asking more than
995     twice. This stuff really was *far* beyond!! :(
997 2009-08-31 Thore Böckelmann <tboeckel@gmx.de>
999   * mcc/EditorStuff.c: fixed another style handling bug which lost some styles
1000     when pasting a text with styles from the clipboard.
1001   * mcc/EditorStuff.c: fixed another recently introduced bug which caused random
1002     crashes because a pointer was not handled correctly. It seems at least the
1003     crashes are gone now, but there are still issues when pasting text with
1004     styles. This only works in the first column or if the text is pasted twice.
1005     The good news is that this also happened with the old style handling.
1007 2009-08-30 Thore Böckelmann <tboeckel@gmx.de>
1009   * mcc/EditorStuff.c: replaced accidental "+" by "*". This might have caused
1010     the recent crashes in case there were lots of different colors in one line.
1012 #### v15.30 RELEASE ############################################################
1014 2009-08-30 Jens Langner <Jens.Langner@light-speed.de>
1016   * misc: final release preparations
1018 2009-08-28 Thore Böckelmann <tboeckel@gmx.de>
1020   * mcc/UndoFunctions.c: changed the return code of some functions from "long"
1021     to "BOOL" as this is what they really return.
1023 2009-08-27 Thore Böckelmann <tboeckel@gmx.de>
1025   * mcc/misc: replaced the complete array based style and color stuff by proper
1026     structures which carry the starting column and style/color information
1027     around. This makes the whole stuff much better understandable and by far
1028     better maintainable. I really hope I did all the conversions right and
1029     didn't mix up anything. So far all tests have been successful.
1030     Also replaced the absolutely ugly peeking into the ULONG ahead of an
1031     allocation to obtain the allocation size in bytes by a proper function call.
1033 2009-08-25 Thore Böckelmann <tboeckel@gmx.de>
1035   * mcc/EditorStuff.c: fixed a bad bug which made TE.mcc loose track about the
1036     styles and colors being in use. Added a function to dump all informations
1037     about a single line to track this one down.
1039 #### v15.29 RELEASE ############################################################
1041 2009-08-23 Jens Langner <Jens.Langner@light-speed.de>
1043   * mcp/library.c, misc: fixed the version string and prepared everything for a
1044     new official release.
1046 2009-08-21 Gianfranco Gignina <sh1nkur0 at libero.it>
1048   * mcc/all : Inserted special comment strings to better read
1049     sources on CubicIDE
1051 2009-08-14 Thore Böckelmann <tboeckel@gmx.de>
1053   * Makefiles: added "-g" to the debug flags. It seems the OS3 GCC 2.95.3 cross
1054     compiler needs this to generate debug infos at all.
1056 2009-08-03 Gianfranco Gignina <sh1nkur0 at libero.it>
1058   * mcc/CaseConversion.c : now ToUpper and ToLower operations
1059     are can be reverted by user;
1061 2009-06-30 Thore Böckelmann <tboeckel@gmx.de>
1063   * mcc/HandleArexx.c, mcp/KeyStorage.c: fixed two warnings.
1065 2009-06-27 Matthias Rustler <mrustler@gmx.de>
1067   * include/libraries/mui.h: backport of an AROS related fix.
1068   * misc: some warnings removed
1070 2009-06-18 Gianfranco Gignina <sh1nkur0 at libero.it>
1072   * Implemented MUIF_TextEditor_Search_Backwards for MUIM_TextEditor_Search.
1074 2009-06-15 Matthias Rustler <mrustler@gmx.de>
1076   * mmakefile.src : new file SetBlock added
1077   * demo/mmakefile.src : created
1078   * demo/TextEditor-Demo.c: some warnings removed
1080 2009-06-11 Jens Langner <Jens.Langner@light-speed.de>
1082   * mcc/SetBlock.c, mcc/ExportBlock.c: fixed the SetBlock logic to check each
1083     flag after another instead of allowing only one flag. This is exactly what
1084     the autodoc for SetBlock suggests. In addition, several things have been
1085     cleaned up to better match our general code layout.
1087 2009-06-11 Thore Böckelmann <tboeckel@gmx.de>
1089   * mcc/ExportBlock.c, mcc/SetBlock.c: replaced some hand crafted flag checks by
1090     our isFlag#?() macros.
1091   * mcc/Makefile, include/mui/TextEditor_mcc.h: fixed completely broken Makefile
1092     and include file. Gianfranco, please make sure to check in working files
1093     without any unfixed conflicts!
1095 2009-06-11 Gianfranco Gignina <sh1nkur0  at libero.it>
1097   * Implemented MUIM_TextEditor_SetBlock and modified MUIM_TextEditor_ExportBlock
1098     to get block giving to it coordinates, see autodoc for more details.
1100 2009-06-08 Matthias Rustler <mrustler@gmx.de>
1102   * AROS metamakefiles added
1103   * Re-added some fixes from previous AROS port
1104   * Some 64-bit fixes.
1106 2009-06-06 Jens Langner <Jens.Langner@light-speed.de>
1108   * misc: revised the whole build system again to be somewhat more useable for
1109     AROS compiles. Now everything should compile/link fine for all AROS
1110     targets as well.
1112 2009-06-02 Thore Böckelmann <tboeckel@gmx.de>
1114   * mcc/EditorStuff.c: added missing variable initialization.
1116 2009-06-01 Thore Böckelmann <tboeckel@gmx.de>
1118   * mcc/EditorStuff.c: added safety check before pasting new characters into a
1119     line to prevent potential buffer overruns. Hopefully this fixes the still
1120     happening random crashes on OS4.
1121   * mcc/MixedFunctions.c, mcc/PrintWithStyle: the font soft style is reset after
1122     each operation to avoid unwanted behaviour.
1124 2009-05-11 Jens Langner <Jens.Langner@light-speed.de>
1126   * misc: converted all tabs to spaces
1127   * version.h: fixed the identification of a PowerPC processor as the AROS
1128     compiler for ppc does not set __PPC__.
1130 2009-05-04 Thore Böckelmann <tboeckel@gmx.de>
1132   * include/SDI_lib.h: updated to the latest version.
1134 2009-05-02 Ilkka Lehtoranta <ilkleht@isoveli.org>
1136   * include/mccinit.c: RTF_EXTENDED was not set for the MorphOS build making
1137     revision number ineffective.
1139 2009-04-30  Thore Böckelmann <tboeckel@gmx.de>
1141   * updated the SDI headers to their latest fixed versions.
1143 2009-04-18 Thore Böckelmann <tboeckel@gmx.de>
1145   * mcp/C_c.sd: added missing SDI_compiler.h include to make IPTR type known.
1147 2009-04-17 Jens Langner <Jens.Langner@light-speed.de>
1149   * include/defines/mccclass.h: updated the mccclass.h defines header with the
1150     one generated with the latest sfdc 1.4 version.
1151   * mcp/C_c.sd: replaced a (ULONG) cast by the more portable (IPTR) cast.
1153 2009-04-01 Thore Böckelmann <tboeckel@gmx.de>
1155   * mccinit.c: fixed broken stackswap_call() prototype for the assembler
1156     version.
1157   * UndoFunctions.c: fixed some compiler warnings about "void * used in arth-
1158     metics"
1160 2009-04-01 Jens Langner <Jens.Langner@light-speed.de>
1162   * misc: adapted the whole environment to make TextEditor.mcc directly
1163     compileable for AROS. Now it is possible to compile TextEditor.mcc with
1164     an AROS cross-compiler for i386,ppc and x86_64.
1166 #### v15.28 RELEASE ############################################################
1168 2009-01-04 Jens Langner <Jens.Langner@light-speed.de>
1170   * misc: final v15.28 release preparations
1172 2008-12-29 Ilkka Lehtoranta <ilkleht@isoveli.org>
1174   * mcc/AllocBitMap.c: Also MorphOS build is now using AllocBitMap()/FreeBitMap()
1175     only. For maximum performance VMEM bitmap is used. WaitBlit() is now called
1176     only for OS3 (CGX and P96 synchronise blitters automatically).
1178 2008-12-21 Thore Böckelmann <tboeckel@gmx.de>
1180   * mcc/AllocBitMap.c: replaced the OS3 specific part (and the deprecated
1181     AllocMem and AllocVec calls) by simplified code.
1183 2008-12-17 Jens Langner <Jens.Langner@light-speed.de>
1185   * Makefile: removed the printf usage with the ANSI codes and replaced them
1186     by the more intuitive CC/LD echo output.
1188 2008-12-17  Thore Böckelmann <tboeckel@gmx.de>
1190   * mcc/ExportHook.c: added some missing NULL pointer checks.
1191   * mcc/SpellChecker.c: replaced the obsolete CreateMsgPortl() and
1192     DeleteMsgPort() calls with AllocSysObject() and FreeSysObject() call for the
1193     OS4 build.
1194   * mcc/Dispatcher.c: replaced the obsolete CreatePool() and DeletePool() calls
1195     with AllocSysObject() and FreeSysObject() call for the OS4 build. Also
1196     restored the old MEMF_ANY memory flags for the other platforms. For OS4
1197     MEMF_SHARED will be used as before.
1199 2008-12-08  Thore Böckelmann <tboeckel@gmx.de>
1201   * mcc/Dispatcher.c: added MEMF_CLEAR to the pool's memory flags to make sure
1202     that every allocation is cleared, as it seems the most prominent crashes are
1203     caused by unrestricted string accesses (i.e. by strlen() operating after the
1204     trailing NUL byte).
1206 2008-12-05  Thore Böckelmann <tboeckel@gmx.de>
1208   * mcc/EditorStuff.c: slightly reworked the obscure width calculation in the
1209     UpdateChange() function and added a missing LEAVE() macro call.
1210   * mcc/EditorStuff.c: added the usual ENTER()/RETURN() macros the the UTF8
1211     conversion function.
1213 2008-11-11  Ilkka Lehtoranta <ilkleht@isoveli.org>
1215   * mcc/EditorStuff.c: when pasting UTF-8 try non-recursive compatibility
1216     decomposition if equivalent mapping is not found from current keymap.
1218 2008-11-04  Ilkka Lehtoranta <ilkleht@isoveli.org>
1220   * mcc/EditorStuff.c: paste from clipboard now also reads CSET chunk and
1221     converts UTF-8 text to a local 8bit charset. Charset conversion is
1222     supported in MorphOS 2 only but could be made available to other platforms
1223     by using codesets.library respectively.
1225 2008-08-12  Thore Böckelmann <tboeckel@gmx.de>
1227   * mcc/HandleARexx.c: the GOTOLINE and GOTOCOLUMN commands now return the final
1228     line/column number instead of the boolean value TRUE. This makes it possible
1229     to immediately check if the cursor movement has been done correctly. This
1230     fixes bug #2045395. Note: Don't forget to FreeVec() the returned string as
1231     stated in the Autodocs!!!!!
1233 2008-07-20  Ilkka Lehtoranta <ilkleht@isoveli.org>
1235   * mcc/HandleInput.c, mcc/Pointer.c, mcc/private.h: simplified handling of
1236     custom pointers for MorphOS 2 making code look nicer. Window (layer)
1237     visibility check is also disabled when running under MorphOS2 (Intuition
1238     takes care of it automatically).
1240 2008-07-17  Thore Böckelmann <tboeckel@gmx.de>
1242   * mcc/MixedFunctions.c, mcc/PrintLineWithStyles.c: removed the kerning check
1243     for proportional fonts upon setting the cursor to a new position. This
1244     caused no clipping and hence some additional pixels left of the line's first
1245     character when changing that character to be underlined and then setting the
1246     cursor somewhere else. Now clipping will be enabled for all proportional
1247     fonts regardless of any kerning information. This fixes bug #1896999.
1248     Additonally setting any style (bold, italic, underlined) is now done with
1249     help of AskSoftStyle() in case a certain font for example cannot be underlined.
1251 #### v15.27 RELEASE ############################################################
1253 2008-06-22 Jens Langner <Jens.Langner@light-speed.de>
1255   * misc: final v15.27 release preparations
1257 2008-06-21 Jens Langner <Jens.Langner@light-speed.de>
1259   * mcc/HandleInput.c: slightly reverted the last change to achieve a flicker
1260     free custom select pointer as otherwise a user might end up with the
1261     standard mouse pointer under some circumstances.
1263 2008-06-20 Jens Langner <Jens.Langner@light-speed.de>
1265   * mcc/HandleInput.c: fixed the mouse pointer flickering which was present when
1266     moving the mouse throughout a TE.mcc object.
1267   * mcc/MixedFunctions.c: fixed a potential NUL pointer access which might have
1268     caused some crashes.
1270 2008-03-17  Thore Böckelmann <tboeckel@gmx.de>
1272   * #?/vastubs.c, #?/Makefile: added vararg stubs for OS3 to be able to link
1273     against clib2 which misses these stubs.
1275 2008-03-06 Pär Boberg <pbobbenb@spray.se>
1277    * mcp/locale/swedish.ct: Updated according to changes.
1279 2008-03-04  Thore Böckelmann <tboeckel@gmx.de>
1281   * #?/Makefile: removed -lm from the linker libs as nothing needs floating
1282     point math. Also added dump as target.
1284 2008-02-25 Jens Langner <Jens.Langner@light-speed.de>
1286   * mcc/HandleInput.c: changed the AmigaOS4 WheelX/WheelY scroll wheel
1287     interpretation to respect the wheel acceleration factor rather than always
1288     scrolling the same distance. This should increase the scroll wheel speed in
1289     case the wheel is used more quickly and the wheel acceleration factor is
1290     properly configured in the SYS:Prefs/Input configuration.
1292 2008-02-19  Thore Böckelmann <tboeckel@gmx.de>
1294   * Debug.h: replaced all abort() usages in our ASSERT() macros with the
1295     respective calls to assert(). This should prevent the MorphOS compile
1296     from not linking and be a bit more intuitiv.
1298 2008-02-18  Thore Böckelmann <tboeckel@gmx.de>
1300   * mcc/ExportBlock.c: make use of the new flag macros.
1301   * mcc/TextEditor-Test.c: fixed a typo.
1302   * mcc/Debug.c: the flag macros are now local to Debug.c as in our other
1303     classes.
1304   * mcc/MixedFunctions.c, mcc/Dispatcher.c, mcc/GetSetAttrs.c, mcc/private.h:
1305     hopefully fixed the "phantom cursor" bug. The inactive cursor was not erased
1306     properly in all cased leaving visible phantom cursors behind. Now TE.mcc
1307     remembers the current state of the cursor (active, inactive, off) to perform
1308     the correct state changes.
1310 #### v15.26 RELEASE ############################################################
1312 2008-02-04 Jens Langner <Jens.Langner@light-speed.de>
1314   * mcc/BlockOperators.c: fixed a bug in the CutBlock2() function where using
1315     the RemoveChars() function on an empty top line caused a selected area to
1316     remain selected, even after the cut operation. This should completely fix
1317     bug #1884875 reported on the YAM bugtracker.
1318   * mcc/UndoFunctions.c: fixed a potential source for a memory leak where in case
1319     some redo operations where still left and the undo buffer was reset via a
1320     new char, the memory of the former paste operations was not properly freed.
1321   * mcc/UndoFunctions.c: reworked the whole undo handling to not use any hackish
1322     address flagging via 0xff to mark the end of an undo buffer. That whole
1323     process was kinda strange. Now the whole undo level handling should be not
1324     only more safe, but also more transparent.
1326 2008-02-04  Thore Böckelmann <tboeckel@gmx.de>
1328   * mcc/BlockOperators.c: adapted two parameters of CutBlock() to reflect their
1329     true boolean nature.
1330   * mcc/EditorStuff.c: replaced OptimizedPrint() by a non-recursive function.
1331   * mcc/MixedFunctions.c: fixed a possible endless loop. This partly fixes bug
1332     #1884875 of YAM.
1333   * mcc/UndoFunctions.c: added some "default: break;" statements to please GCC.
1335 2008-02-02 Jens Langner <Jens.Langner@light-speed.de>
1337   * mcc/misc: minor modification to use uppercase letters for the EventType
1338     enumeration we use for our Undo operation handling.
1339   * mccinit.c: updated to latest version available which fixes some
1340     MorphOS specific compiler warnings.
1342 2008-01-20 Jens Langner <Jens.Langner@light-speed.de>
1344    * MixedFunctions.c: fixed bug #1825864 where upon using a non-antialiased font
1345      together with a small cursor caused the inactive cursor to leave graphical
1346      traces when reactivating a texteditor object.
1347    * Dispatcher.c: we catch the result values of the GoActive/GoInactive methods
1348      of the MUIC_Area supercall and forward it accordingly. Not that this might
1349      fix something, but well, it seems to be more correct :)
1351 2008-01-04  Vit Sindlar <sindlarv at centrum dot cz>
1353    * mcp/locale/czech.ct: updated Czech catalog translation.
1355 2008-01-04  Thore Böckelmann <tboeckel@gmx.de>
1357    * mcp/rev.h: fixed broken date string.
1358    * include/mui/TextEditor_mcc.h: added version requirement to the new
1359      qualifier in struct ClickMessage.
1360    * mcc/HandleInput.c: the qualifiers being pressed during a double click are
1361      now also passed to the DoubleClickHook.
1363 2008-01-03  Thore Böckelmann <tboeckel@gmx.de>
1365    * mcp/locale/#?.ct: changed all .ct file names to english names instead of
1366      translated ones.
1367    * mcp/CreatePrefsGroup.c, mcp/Preference.c, mcp/locale/TextEditor_mcp.cd:
1368      the undo slide format string is now localizable to avoid character set
1369      issues because of the plus/minus sign. Also changed the "(R)" sign to a
1370      "(C)" string, which is in fact more correct.
1372 #### v15.25 RELEASE ############################################################
1374 2007-12-20 Jens Langner <Jens.Langner@light-speed.de>
1376    * misc: final release preparations.
1378 2007-12-14  Thore Böckelmann <tboeckel@gmx.de>
1380    * mcc/ImportHook.c: fixed some indentations.
1381    * mcc/HandleInput.c: the select pointer will now only be shown if the mouse
1382      pointer is over the object AND over the object's window. If the window is
1383      partly covered by another window the normal pointer will be shown. This
1384      fixes bug #1850317.
1386 2007-12-13  Thore Böckelmann <tboeckel@gmx.de>
1388    * mcc/PrintWithStyles.c: fixed some indentations.
1389    * mcp/misc: replaced the old BitmapObject by a BodyChunkObject and added a
1390      IFF-ILBM image with proper transparent color. This should fix the broken
1391      display on the prefs image on some old machines.
1393 2007-12-12  Thore Böckelmann <tboeckel@gmx.de>
1395    * mcc/HandleInput.c, mcc/Methods.c: fixed some indentations and comparisons.
1396    * mcc/Dispatcher.c, mcc/Pointer.c: the select pointer will now be set and
1397      hidden in the Show/Hide methods. Hiding it in the Cleanup method is for-
1398      bidden, because the necessary window is not existing anymore then. This
1399      fixes bug #1849264.
1401 2007-12-02  Vit Sindlar <sindlarv at centrum dot cz>
1403    * mcp/locale/czech.ct: added czech mcp catalog translation
1405 2007-11-22  Thore Böckelmann <tboeckel@gmx.de>
1407    * mcc/MixedFunctions.c: changed the return code of some functions to BOOL to
1408      reflect the true nature of the return code.
1409    * mcc/EditorStuff.c: added one more scroll command after inserting a single
1410      character. This should finally fix bug #1812179.
1412 2007-11-11 Ilkka Lehtoranta <ilkleht@isoveli.org>
1414    * mcc/Pointer.c: use system pointers on MorphOS if possible.
1416 2007-11-03 Jens Langner <Jens.Langner@light-speed.de>
1418    * mcp/CreatePrefsGroup.c: added a copyright crawling object to the bottom
1419      of the mcp to match the Look&Feel to our other classes.
1421 2007-11-03 Pär Boberg <pbobbenb@spray.se>
1423    * mcp/locale/svenska.ct: Updated according to changes.
1425 2007-11-02  Thore Böckelmann <tboeckel@gmx.de>
1427    * mcp/CreatePrefsGroup.c: added all missing buttons to the cycle chain.
1429 2007-10-29  Thore Böckelmann <tboeckel@gmx.de>
1431    * mcp/locale/TextEditor_mcp.cd: fixed some small typos.
1432    * mcp/locale/deutsch.ct: Updated according to the latest changes.
1434 2007-10-28  Thore Böckelmann <tboeckel@gmx.de>
1436    * mcp/CreatePrefsGroup.c: corrected some bubble help attributes, as these
1437      were placed completely wrong (for the sorrounding group instead of the
1438      intended object).
1440 2007-10-27 David Rey <tactica@users.sourceforge.net>
1442    * mcp/locale/TextEditor_mcp.cd, mcp/CreatePrefsGroup.c: added the missing
1443      help bubbles to almost everything that was missing them, also reworded
1444      a few strings.
1446 2007-10-25 Jens Langner <Jens.Langner@light-speed.de>
1448    * mcp/locale/russian.ct: update russian catalog translation kindly provided
1449      by Michael Malyshev.
1450    * mcc/HandleArexx.c: when firing an arexx command which did change the cursor
1451      position, the cursor change was also not propagated to other MUI objects via
1452      the common CursorX/Y attributes.
1453    * mcc/HandleInput.c, Methods.c, Dispatcher.c: fixed bug #1819513 where TE.mcc
1454      didn't propagate a cursor change in all cases via a notify through the
1455      MUIA_TextEditor_CusorX/Y attributes.
1457 #### v15.24 RELEASE ############################################################
1459 2007-10-14 Jens Langner <Jens.Langner@light-speed.de>
1461    * mcc/HandleInput.c: fixed a bug in the Backspace key handling where upcon
1462      concatenating two lines via the backspace key the display may have ended up
1463      mixed up in case they were concatenated at the visual top of the editor
1464      gadget.
1465    * mcc/HandleInput.c: fixed bug #1812179 where pressing return/enter on the
1466      visible last line didn't end up in the display being scrolled according to
1467      the vertical cursor change.
1469 2007-10-11  Thore Böckelmann <tboeckel@gmx.de>
1471    * mcc/Pointer.c: the combinated bitplane is now also declared as constant
1472      data instead of "calculating" it.
1473    * mcc/Pointer.c: for OS4 the normal bitmap data are now used for the fall-
1474      back pointer in case the graphic card cannot handle 32bit hardware sprites
1475      as pointer.
1477 2007-10-07 Jens Langner <Jens.Langner@light-speed.de>
1479    * mcp/CreatePrefsGroup.c: the inactive cursor checkbox will not automatically
1480      adjust its size automatically to the current height of the window. This
1481      should prevent the checkbox image to end up in a wide clumsy image being
1482      shown.
1484 2007-10-04 Jens Langner <Jens.Langner@light-speed.de>
1486    * mcc/HandleInput.c: fixed bug where a texteditor object didn't ate all
1487      rawkey events regardless of the fact that it might be the active object
1488      and in read-only mode.
1490 #### v15.23 RELEASE ############################################################
1492 2007-10-03 Jens Langner <Jens.Langner@light-speed.de>
1494    * mcc/MixedFunctions.c: changed the inactive cursor to always have a width
1495      of the actual character it resists on. This should be more intuitive and
1496      obvious.
1497    * mcp/Makefile: modified makefile to use LOCALE as a variable for the
1498      locale directory.
1500 2007-09-23 Pär Boberg <pbobbenb@spray.se>
1502    * mcp/locale/svenska.ct: Updated according to changes.
1504 2007-09-12 Jens Langner <Jens.Langner@light-speed.de>
1506   * mcc: implemented new MUIA_TextEditor_ActiveObjectOnClick attributes which
1507     allows to automatically set a texteditor object as the active object of
1508     a window in case the user clicks into it regardless of the ReadOnly status.
1509     However, per default this will be set to FALSE in case ReadOnly is turned
1510     on. In addition, in inactive state a selection will now be drawn in the
1511     new inactive color rather than always with the marked color. This should
1512     make it more obvious if the object has the keyboard focus. Last, but not
1513     least by clicking into a texteditor object with the CTRL key pressed will
1514     not clear the selection in case the object is currently inactive.
1515   * mcp: added new "inactive color" selection where the user will be able to
1516     select a color for displaying selected text in an inactive color in case
1517     the texteditor object is set inactive. The color will default to the
1518     halfshadow pen of MUI which should fit to the other default colors.
1520 2007-09-09 Jens Langner <Jens.Langner@light-speed.de>
1522   * mcc/Pointer.c: fixed an issue where in case some other gadget/process
1523     set the window pointer to something else we might have ended up with the
1524     wrong or no custom pointer at all.
1526 2007-09-02 Jens Langner <Jens.Langner@light-speed.de>
1528   * mcc/HandleInput.c: an invisible cursor was not automatically made visible
1529     on certain key events (e.g. Return/Tab, etc). Now a cursor should always
1530     be made visible as soon as a relevant input key is pressed and right before
1531     any scroll action might take place.
1532   * mcc/HandleInput.c: as soon as a key is pressed and the cursor is outside
1533     the currently visible area, the text is immediately scrolled down/up now
1534     rather than waiting for the user to release the key. This should be a bit
1535     more intuitive to what a user might expect to happen.
1536   * mcc/GetSetAttrs.c, mcc/PrintLineWithStyles.c: The cursor will now scroll
1537     with the text rather than kept at the very same position relately to the
1538     window. This should be more intuitive and what a normal user would expect.
1539     So as soon as the user wants to enter text and the cursor is not visible
1540     texteditor.mcc will scroll down/up so that it will become visible as
1541     expected.
1542   * doc/TextEditor.doc: added missing documentation about the function of the
1543     MUIA_TextEditor_KeyUpFocus attribute.
1545 2007-09-01 Pär Boberg <pbobbenb@spray.se>
1547    * mcp/locale/svenska.ct: Updated according to changes.
1549 2007-08-31  Thore Böckelmann <tboeckel@gmx.de>
1551   * mcc/HandleInput.c: key releases of known shortcuts (like cursor up/down)
1552     were not handled correctly and caused MUI to trigger the same action a
1553     second time. That caused double scrolling. Now key releases of the short-
1554     cuts will be "eaten" as well. This fixes bug #1784873.
1556 2007-08-31 Jens Langner <Jens.Langner@light-speed.de>
1558   * mcc/GetSetAttrs.c: fixed bug where an initial MUIA_Disabled state for a
1559     texteditor object in OM_NEW didn't automatically end up in having an added
1560     slider set disabled as well.
1561   * mcc/HandleInput.c: an instant scroll operation wasn't possible anymore if
1562     the texteditor object was currently active because the IDCMP_MOUSEMOVE catch
1563     operations blocked it.
1564   * mcc/Pointer.c: tuned the 32bit pointer image a bit to look better on
1565     both, bright and dark background colors while still maintaining the
1566     general look&feel of the new pointer.
1568 2007-08-30 Jens Langner <Jens.Langner@light-speed.de>
1570   * mcc/Pointer.c: the 32bit pointer setup seems to require to have a fake
1571     bitmap setup passed to the pointer class or otherwise the pointer might
1572     not be generated properly.
1573   * mcc/Pointer.c: on OS4 we generally prefer to use the 32bit pointer image
1574     data and don't do any color identification or use the select pointer
1575     bitmap at all. However, we still need to get the 32bit select pointer
1576     ready as we still have just an example image up&running, but it is nice
1577     to be able to freely define a 32bit pointer on OS4.
1579 2007-08-29  Thore Böckelmann <tboeckel@gmx.de>
1581   * mcc/Pointer.c: just in case the 32bit pointer cannot be created the old
1582     bitmap is also passed in again.
1583   * mcc/Pointer.c: with OS4 a 32bit ARGB pointer will now be used. Currently
1584     the image is just 2bit and very simple, but just to get the idea...
1586 2007-08-29 Jens Langner <Jens.Langner@light-speed.de>
1588   * mcc/PrintLineWithStyles.c, mcc/Dispatcher.c: the text will now always be
1589     rendered right from the top rather than layouting it vertically centered
1590     throughout the available space. This should fix the common vertical text
1591     floating when resizing a window which is redrawn with every resize operation.
1592   * mcc/Dispatcher.c: when the gadgeted will be hided via a MUIM_Hide call we go
1593     and hide the selection pointer as well. This should make the selection pointer
1594     disappear as soon as a texteditor gadget is in a register group and gets
1595     hided as soon as the group is switched.
1597 2007-08-28 Jens Langner <Jens.Langner@light-speed.de>
1599   * mcc: propaged the new mcp option to enable/disable the selection pointer to
1600     our corresponding mcc routines. Now a user can disable the selection pointer
1601     in case he finds it annoying/unnecessary. But per default it will be enabled.
1602   * mcp: implemented a new settings option to be able to enable/disable the new
1603     selection pointer.
1605 2007-08-27  Thore Böckelmann <tboeckel@gmx.de>
1607   * mcc/Pointer.c: when setting up the pointer image the colors matching white
1608     and black best are now calculated instead of guessed. This way the pointer
1609     will have the most correct colors regardless of the user defined palette.
1611 2007-08-27 Jens Langner <Jens.Langner@light-speed.de>
1613   * mcc/Pointer.c, misc: the pointer object will now be create/destroyed in the
1614     Setup/Cleanup methods of the class rather than before any show/hide operation
1615     of the pointer. This should also fix problems where the mouse pointer isn't
1616     hided/restored when the texteditor is cleaned up by MUI.
1617   * mcc: when the mouse pointer is now over an active TextEditor object, a
1618     specialized mouse pointer image for selection of text will be shown
1619     instead of the default system mouse pointer image. Currently it can not be
1620     disabled via the mcp, but this should be the case until the final release
1621     of a new stable version. In addition, not all situations like Hide/Show
1622     are catched to disable/enable the mouse pointer image.
1624 2007-08-26 Jens Langner <Jens.Langner@light-speed.de>
1626   * mcc/EditorStuff.c: fixed bug #1779587 where in SoftWrap mode, the MergeLines()
1627     function didn't take correctly respect of the fact that by merging lines
1628     upon pressing "backspace", the amount of visual lines may perfectly increase
1629     and therefore ended up in a distorted text display. Now the ScrollUp/ScrollDown
1630     operations are done right before redrawing the content of the merge lines.
1632 2007-08-25 Pär Boberg <pbobbenb@spray.se>
1634    * mcp/locale/svenska.ct: Updated according to changes.
1636 2007-08-22 Jens Langner <Jens.Langner@light-speed.de>
1638   * mcc/mcp: on request, the inactive cursor introduced in 15.22 can now be
1639     explicitly disabled in the preference program to get back the old behaviour.
1640     However, it will still be enabled per default to make use of it at all.
1642 2007-08-13  Thore Böckelmann <tboeckel@gmx.de>
1644   * include/mccinit.c: updated to 1.10 version which fixes a wrong memory
1645     access to the StackSwap structure if this is placed on the stack.
1647 2007-08-10  Thore Böckelmann <tboeckel@gmx.de>
1649   * mcc/HandleInput.c: a read-only editor with a marked search result could not
1650     be scrolled by keyboard anymore if that would scroll the marked text out of
1651     the visible area. I am not sure if this change has any impact on other
1652     functions, so please test.
1654 2007-08-09 Jens Langner <Jens.Langner@light-speed.de>
1656   * include/mccinit.c: updated to 1.9 version which includes fixes for the
1657     stack swapping calls on MorphOS kindly provided by Ilkka Lehtoranta.
1659 #### v15.22 RELEASE ############################################################
1661 2007-07-25  Thore Böckelmann <tboeckel@gmx.de>
1663   * #?/library.c: now really uses the 3 parameter version of GETINTERFACE()
1664     defined in mccinit.c instead of the old obsolete version in mcc_common.h.
1665     The user definable functions (i.e. ClassInit()) must be declared before
1666     the inclusion of mccinit.c.
1667   * include/mccinit.c: updated to latest 1.8 version which really uses the
1668     GETINTERFACE() macro with 3 parameters.
1670 2007-07-25 Jens Langner <Jens.Langner@light-speed.de>
1672   * PrintLineWithStyles.c: replaced 0xc0 minterm by "(ABC|ABNC)" which in
1673     fact will do the very same, but is more descriptive.
1674   * include/mccinit.c: updated to latest 1.7 version
1675   * misc: adapted MEMF_#? allocation flags to use MEMF_SHARED whereever
1676     appropriate.
1678 2007-07-24  Thore Böckelmann <tboeckel@gmx.de>
1680   * include/mccinit.c: updated to latest 1.6 version which fixes an unbalanced
1681     if statement.
1683 2007-07-24 Jens Langner <Jens.Langner@light-speed.de>
1685   * PrintLineWithStyles.c: the inactive cursor wasn't drawn when the window in
1686     which the gadgets resists was being resized. Now the inactive cursor
1687     should always be layouted.
1688   * HandleInput.c: when resetting the previous cursor position we make sure
1689     the gadget is flagged as activated or otherwise a reactivated gadget might
1690     not reset the cursor sign properly and end up in multiple inactive cursor
1691     signs being shown.
1693 2007-07-22 Jens Langner <Jens.Langner@light-speed.de>
1695   * misc: added new MUIA_TextEditor_WrapMode attribute which can now be set to
1696     either NoWrap, SoftWrap or HardWrap to set the wanted word wrapping mode. Whereas
1697     HardWrap is the default as in previous versions, SoftWrap should be considered
1698     the new setting that should be used in new and revised applications as it allows
1699     to set the number of characters at which the texteditor will soft wrap word, but
1700     keep them logically together. This allows to easily concatenate lines by just
1701     e.g. removing characters again. NoWrap, in contrast, will completly disable word
1702     wrapping and will require a user to enlarge the gadget himself to fit the text as
1703     currently TextEditor.mcc can't scroll horizontal.
1704   * MixedFunctions.c: when the gadgets is in inactive/unactivated state, the cursor
1705     will be drawn by just its outline to make it easier to identify where it last
1706     resisted when the gadget is being activated again.
1708 2007-07-18 Jens Langner <Jens.Langner@light-speed.de>
1710   * include/mccinit.c: updated to latest 1.4 version which uses a new inline
1711     assembler version for those platforms where a StackSwap() is required (e.g.
1712     MorphOS/AmigaOS3).
1714 2007-07-04  Thore Böckelmann <tboeckel@gmx.de>
1716   * include/mccinit.c: put the StackSwapStruct structure on the stack to avoid
1717     crashes.
1719 2007-07-04 Jens Langner <Jens.Langner@light-speed.de>
1721   * include/mccinit.c: updated to latest 1.3 version which introduces a stackswap
1722     mechanism for OS3/MorphOS systems so that they may not run out of stack when
1723     running through the various library initialization routines.
1725 2007-07-01 Jens Langner <Jens.Langner@light-speed.de>
1727   * include/mccinit.c: updated to latest 1.2 version which fixes some library
1728     manager initialization issues.
1730 2007-06-25  Thore Böckelmann <tboeckel@gmx.de>
1732   * misc: the number of undo levels can now be set by the application. A value
1733     of zero means that undo/redo is completely disabled. It is also possible to
1734     disable undo/redo globally by setting the level to zero. This fulfils
1735     feature request #1479534.
1737 2007-06-20  Thore Böckelmann <tboeckel@gmx.de>
1739   * mcp/locale/french.ct: updated the french translation which kindly has been
1740     provided by Alexandre Balaban.
1742 2007-06-18 Jens Langner <Jens.Langner@light-speed.de>
1744   * EditorStuff.c, MixedFunctions.c, Navigation.c, private.h: as the LineCharsWidth()
1745     function can now return 0 all usage situations have to make sure that they can
1746     handle a zero return value. This should e.g. fix an endless loop situation when
1747     tripleclicking on a line.
1749 2007-06-13  Thore Böckelmann <tboeckel@gmx.de>
1751   * #?/Debug.c: unified the _DPRINTF() functions for all platforms.
1753 2007-06-10 Jens Langner <Jens.Langner@light-speed.de>
1755   * #?/Makefile: minor update/optimization on Makefiles.
1756   * include/mccinit.c: updated to latest 1.1 version which should fix possible
1757     stack issues during the LibInit() phase. Custom libraries will now be opened
1758     during the LibOpen() phase instead while maintaining an own mutual exclusive
1759     locking variable.
1761 2007-06-09 Jens Langner <Jens.Langner@light-speed.de>
1763   * include/mccinit.c, mcc/library.c, mcp/library.c: replaced the old obsolete
1764     mccheader.c by the new mccinit.c which should come with a much more clear
1765     interface and documentation on how to use it for a basis of a MUI custom
1766     class. This should significantly reduce the possibility of race conditions
1767     in the mcc/library init code.
1769 2007-05-29  Thore Böckelmann <tboeckel@gmx.de>
1771   * include/mccheader.c: reworked the LibOpen() and LibClose() functions to
1772     increment/decrement the lib_Open counter before obtaining the semaphore to
1773     prevent a possible race condition with LibExpunge().
1775 2007-05-18 Jens Langner <Jens.Langner@light-speed.de>
1777    * MixedFunctions.c: minor twirks to the LineCharsWidth() function to catch
1778      a possible issue when calculating the string length.
1780 2007-04-16 Jens Langner <Jens.Langner@light-speed.de>
1782    * mcp/locale/dansk.ct: added new danish translation kindly provided by
1783      Niels Bache.
1785 2007-03-23  Thore Böckelmann <tboeckel@gmx.de>
1787    * #?/Debug.c: fixed wrong final output of debug classes and flags.
1789 2007-03-11 Jens Langner <Jens.Langner@light-speed.de>
1791    * mcp/locale/russian.ct: applied patch to russian catalog description
1792      updates, kindly provided by Vinny Vinogradov.
1794 2007-03-11 Thore Böckelmann <tboeckel@gmx.de>
1796    * #?/Debug.c: disabling a debug flag was not possible due to a check for the
1797      '!' at a wrong index.
1799 2007-03-10 Pär Boberg <pbobbenb@spray.se>
1801    * mcp/locale/svenska.ct: Updated according to changes.
1803 #### v15.21 RELEASE ############################################################
1805 2007-03-07 Jens Langner <Jens.Langner@light-speed.de>
1807    * mcp/KeyStorage.c, mcp/CreatePrefsGroup.c: fixed bug #1669685 where due to
1808      an incorrect iteration through the keybindings structure, TextEditor.mcp
1809      crashed on OS3/m68k setups.
1810    * mcc: replaced all get() uses with the more save xget().
1811    * mcc/HandleArexx.c: the HandleArexx() function was returning a 'BOOL'
1812      which wasn't entirely correct as it might also return a string on commands
1813      like 'GETCURSOR'. In that case it might have happend that the result
1814      variable was truncated and caused and unexpected crash.
1815    * mcp/Makefile: added 'catalogs' target to Makefile so that catalogs can
1816      be generated on-the-fly more easily.
1818 2007-03-02 Thore Böckelmann <tboeckel@gmx.de>
1820    * mcp/locale/deutsch.ct: updated the german translation according to the
1821      latest changes.
1822    * mcp/CreatePrefsGroup.c: the version check for Hotkeystring.mcc didn't
1823      handle future versions correctly (i.e. 13.0). A too old object is also
1824      disposed before the creation fails to let the user install a new version
1825      without the need to reboot.
1827 2007-03-01 Jens Langner <Jens.Langner@light-speed.de>
1829    * mcp/CreatePrefsGroup.c: added a check if the required Hotkeystring.mcc
1830      class could be found and if it is the minimum required version we need.
1831    * mcp/CreatePrefsGroup.c: replaced compile time _ASSERT() with our new
1832      runtime ASSERT() in Debug.c,h.
1834 2007-02-28 Thore Böckelmann <tboeckel@gmx.de>
1836    * mcp/locale/deutsch.ct: fixed wrong warning text.
1837    * mcp/locale/deutsch.ct: added updated german translation. I hope this one
1838      is a little bit better than the old one.
1839    * mcp/CreatePrefsGroup.c: the Snoop button is no longer deactivated auto-
1840      matically but must be deactivated manually. Before it was not really
1841      possible to enter combinations of qualifiers and keys, because as soon as
1842      a qualifier was pressed the snopping was deactivated.
1844 2007-02-27 Thore Böckelmann <tboeckel@gmx.de>
1846    * mcp/KeyStorage.c: hotkey parsing doesn't use loops anymore to prevent un-
1847      predictable side effects. Also added some safety check before accessing
1848      the KEY argument to prevent possible NULL pointer accesses.
1849    * doc/MCC_TextEditor.doc: the new MUIM_TextEditor_QueryKeyAction method was
1850      missing in the table of contents and was not properly sorted in the range
1851      of all methods.
1853 2007-02-26 Jens Langner <Jens.Langner@light-speed.de>
1855    * mcc/Keybindings.c: updated the default keybinding in the MCC according
1856      to the recent changes in the MCP (RSHIFT->SHIFT change).
1857    * mcp/CreatePrefsGroup.c: fixed bug in the Popobject popup hooks which
1858      contained a wrong indexing and therefore did select the wrong item in the
1859      poplist of the keybindings.
1861 2007-02-26 Thore Böckelmann <tboeckel@gmx.de>
1863    * mcp/Keybindings.c: changed all occurences of IEQUALIFIER_RSHIFT to
1864      IEQUALIFIER_SHIFT as it unnecessary to force the user to use a specific
1865      shift key.
1867 #### v15.20 RELEASE ############################################################
1869 2007-02-25 Jens Langner <Jens.Langner@light-speed.de>
1871    * mcc/HandleArexx.c: added new "SELECTALL"and "SELECTNONE" Arexx commands
1872      to be able to also perform the same actions via the ARexx interface.
1873    * mcc: introduced a new MUIM_TextEditor_QueryKeyAction method that allows
1874      to retrieve the key code and qualifier information for a specified action.
1875      Please note, that this method normally returns the direct RAWKEY value
1876      and that for a vanilla key identification an offset of 500 is added.
1877    * mcc/Methods.c: modified MUIM_TextEditor_MarkText method to allow to select
1878      ALL and NO text of the texteditor according to the new SelectAll and
1879      SelectNone actions.
1880    * mcc/HandleInput.c: the 'SelectAll' and 'SelectNone' key actions should
1881      work now as expected.
1882    * mcc/mcp: synced the internals how the default keybindings are managed and
1883      exported the key action value to the _mcc.h file. This should allow to
1884      provide a method in future to query the keybinding of a keyaction for
1885      third party applications. In addition, "Select All" and "Select None" was
1886      added to allow for keybindings of selecting all/no text with a RCOMMAND+A
1887      hotkey.
1888    * mcc/HandleInput.c: changed the automatic word wrapping mechanism to find
1889      the wrap position around the user-specified WrapBorder value instead of
1890      always word wrapping at the cursor position only. This should make the word
1891      wrapping behaviour more consistent.
1893 2007-02-18 Thore Böckelmann <tboeckel@gmx.de>
1895    * mcp/KeyStorage.c: key combinations like "shift up" were always converted
1896      to "shift right" because of a wrong index calculation.
1898 2007-01-29 Thore Böckelmann <tboeckel@gmx.de>
1900    * mcc/Dispatcher.c: the OM_NEW method must be handled before the instance
1901      data are retrieved, because nobody can predict what INST_DATA() will return
1902      if it is invoked on a not yet created object. This can explain the random
1903      crashes on OS4 when TextEditor.mcc tried to access unallocated memory.
1905 2007-01-28 Jens Langner <Jens.Langner@light-speed.de>
1907    * mcp: renamed the GetStr() locale translation function to the much shorter
1908      tr() naming and adapted all files to it.
1910 2007-01-27 Jens Langner <Jens.Langner@light-speed.de>
1912    * mcp: fixed several non-critical compiler warnings.
1913    * Makefile: removed all target specific (os4,os3,mos) makefiles and replaced
1914      them with a single 'Makefile' for all our sub-projects. This new makefile
1915      includes methods to automatically identify the HOST and TARGET opererating
1916      system and compiles the sources for the found target OS. In addition, that
1917      Makefile can be used to also compile for all supported targets via
1918      'make OS=XXX' where XXX is the abbreviation for the operating system.
1920 2007-01-02 Jens Langner <Jens.Langner@light-speed.de>
1922    * misc: updated all copyright notices to 2007.
1923    * mcp/locale/french.ct: added french mcp catalog translation kindly
1924      provided by Philippe Bovier.
1926 2006-12-02 Jens Langner <Jens.Langner@light-speed.de>
1928    * mcc/private.h: minor code restructuring to prepare for a larger debug
1929      session so that we finally can hunt down that "crashes on YAM startup" with
1930      TextEditor.mcc involved.
1932 2006-11-27 Thore Böckelmann <tboeckel@gmx.de>
1934    * mcc/EditorStuff.c: when pasting a clip which contained some colors or
1935      styles we trashed memory because the allocation was always 2 bytes too
1936      small. This happend because TextEditor.mcc terminates the color and style
1937      arrays with special values which are not included in its own clipboard
1938      files and hence their length isn't contained in the IFF header length.
1939    * Debug.c: added correct copyright header and fixed some typos
1941 #### v15.19 RELEASE ############################################################
1943 2006-11-12 Jens Langner <Jens.Langner@light-speed.de>
1945    * mcc/BlockOperators.c: fixed a bug where not the whole ExportMessage
1946      structure was cleared and caused the Undo/Redo functionality to end up
1947      broken.
1948    * mcc/ExportBlock.c: fixed a minor issue with the new ExportBlock functionality
1949      where unmarked text wasn't exported correctly due to an old marking structure.
1951 2006-10-17 Ilkka Lehtoranta <ilkleht@isoveli.org>
1953    * mcc/EditorStuff.c: Fixed Wipeout hit in PasteClip() where NULL termination
1954      could accidentally trash innocent memory.
1955    * mcc/BlockOperators.c: Removed MorphOS workaround and adjusted code to work
1956      on all flavours.
1958 2006-10-13 Ilkka Lehtoranta <ilkleht@isoveli.org>
1960    * mcc/BlockOperators.c: Added workaround to serious bug in iffparse.library
1961      supplied with MorphOS. Library barfs when the same chunk is pushed again.
1962      While this bug is fixed in V51 version of iffparse.library we must settle
1963      for this solution for now. In order to keep MorphOS specific code short
1964      style and color information is not stored.
1966 2006-10-11 Ilkka Lehtoranta <ilkleht@isoveli.org>
1968    * mcc/Debug.c: added a dummy abort() function to fix non-OS4 debug builds.
1970 2006-10-08 Jens Langner <Jens.Langner@light-speed.de>
1972    * mcc/SpellChecker.c: fixed bug #1545493 where the spellchecker routines
1973      didn't correctly supply the whole word under the cursor and always stripped
1974      one char at the end. That rendered the spellchecker functionality kinda
1975      useless.
1976    * mcc/MixedFunctions.c: fixed bug #1385277 where on a fresh object where
1977      the MUIM_Setup method never was used, the LineCharsWidth() function
1978      caused a crash if the InsertText method was used.
1979    * mcp/Makefile.os4, mcc/Makefile.os4: modified to always keep function
1980      symbols in the binary, even in release mode.
1981    * mcc/ExportBlock.c, misc: implemented new MUIM_TextEditor_ExportBlock
1982      method which will export only the currently marked text instead of the
1983      whole text like it's ExportText variant. Implemented an additional
1984      MUIF_TextEditor_ExportBlock_FullLines flag symbol which will export all
1985      complete lines where marked text was found on.
1986    * mcp: adapted build to new public header file in 'includes' directory.
1988 2006-10-07 Jens Langner <Jens.Langner@light-speed.de>
1990    * mcc/TextEditor_mcc.h: removed and merge content into a public header
1991      file located in the 'includes' directory instead.
1992    * mcc/ExportHook.c: added new MUIV_TextEditor_ExportHook_NoStyle which will
1993      export all text, but strip all ESC sequences.
1995 2006-10-06 Jens Langner <Jens.Langner@light-speed.de>
1997    * includes/SDI_hook.h, misc: updated to latest version and adapted our whole
1998      Dispatcher functions accordingly.
1999    * mcc/classact: removed unrequired subdir.
2001 2006-10-03 Thore Böckelmann <tboeckel@gmx.de>
2003    * misc: removed all that ClassAct stuff, as TextEditor.mcc is an MUI class
2004      only now.
2006 2006-10-03 Thore Böckelmann <tboeckel@gmx.de>
2008    * Debug.c: added new 'clipboard' debug class.
2009    * mcc/EditorStuff.c: fixed bug #1462840 by replacing the handcrafted IFF
2010      parsing routine by calls to iffparse.library. Pasting clips from
2011      PageStream did not work, becasue PGS embeds FORM-FTXT chunks in CAT-CLIP
2012      files. The old functions just recognized simple FORM-FTXT files.
2013    * mcc/BlockOperators.c: replaced all handcrafted IFF writing functions by
2014      calls to iffparse.library. This makes it much easier to extend clip
2015      handling. The complete handcrafted access to clipboard.device is gone now.
2016    * mcc/SpellChecker.c: FindPort() was called without being surrounded by
2017      Forbid() and Permit().
2018    * mcc/TextEditor-Test.c, mcc/library.c: added necessary definitions of
2019      IFFParseBase and IIFFParse to make use of iffparse.library
2020    * Makefile.os4: removed "-pipe" from all CFLAGS definitions, because the OS4
2021      native GCC doesn't seem to handle this correctly.
2023 2006-09-27 Jens Langner <Jens.Langner@light-speed.de>
2025    * HandleARexx.c: fixed a recently introduced bug where the Arexx support was
2026      somewhat broken.
2027    * Debug.c: added new 'arexx' debug class.
2029 2006-09-25 Jens Langner <Jens.Langner@light-speed.de>
2031    * misc: general minor cleanup of certain areas. added -Wwrite-strings to all
2032      GCC makefiles. That should make sure we don't accidently write into const
2033      strings.
2035 #### v15.18 RELEASE ############################################################
2037 2006-08-18 Jens Langner <Jens.Langner@light-speed.de>
2039    * misc: final 15.18 release preparations.
2040    * all: replaced all non bufferoverflow safe functions like sprintf() with
2041      bufferoverflow safe variants. This should hopefully increase the stability
2042      of TextEditor.mcc once more.
2044 2006-08-15 Jens Langner <Jens.Langner@light-speed.de>
2046    * mcc/ExportHook.c: fixed bug #1493239 and #1376640 where the ExportHook()
2047      functionality didn't correctly NUL-terminate the exported strings and
2048      therefore caused problems with the Undo/Redo functionality.
2050 2006-08-14 Jens Langner <Jens.Langner@light-speed.de>
2052    * demo/TextEditor-Demo.c: added Makefiles for all 3 major targets and
2053      fixed all still existing compiler warnings and problems when compiling
2054      the demonstration program.
2056 2006-07-07 Mathias Parnaudeau <mathias.p@wanadoo.fr>
2058    * demo/TextEditor-Demo.c : After deep changes it now compiles and runs
2059      with vbcc, GCC and SAS/C (tested on MorphOS and OS4) [bug #1376518].
2060    * mcc/Dispatcher.c : Added the support of MUIV_TextEditor_InsertText_Top
2061      and MUIV_TextEditor_InsertText_Bottom [bug #1416562].
2063 2006-06-12 Ilkka Lehtoranta <ilkleht@isoveli.org>
2065    * mcc/GetSetAttrs.c: MUIA_Font now returns the text editor font always
2066      (patch by Mathias Parnaudedau).
2068 2006-06-01 Ilkka Lehtoranta <ilkleht@isoveli.org>
2070    * mcc/SpellChecker.c: fall back to manual search path duplication if
2071      WorkbenchControl() call fails. MorphOS is shipped with workbench.library
2072      having version number greater than 44 but search path routines were not
2073      implemented until V50.16. Disabled WBCTRLA_FreeSearchPath for MOS because
2074      it does nothing in the most MOS installs.
2076 2006-04-13 Jens Langner <Jens.Langner@light-speed.de>
2078    * mcp/KeyStorage.c: adapted MEDIA key definition to latest OS4 SDK.
2079    * Makefile.mos: moved the .comment section strip definition to its more apprpriate
2080      section (the top-level programs definition is just for overriding the command
2081      name by the user).
2082    * Makefile.os4: switched to newlib compilation/linkage per default and removed
2083      the unecessary -ldebug link definition.
2084    * Debug.c: replaced the KPutFmt() use by direct calls to OS4 exec debug functions
2085      were appropriate.
2086    * mccheader.c: added support for OS4/newlib use and slightly reintroduced
2087      some of the parts previously stripped by Gunther. We really should prefer
2088      code readability instead of minimizing passages.
2090 2006-04-10 Gunther Nikl <gni@gecko.de>
2092    * include/mccheader.c: Fix ROMTag for non-OS4 systems.
2093    * mcc/Makefile.mos, mcp/Makefile.mos: remove comment section.
2095 2006-04-05 Jens Langner <Jens.Langner@light-speed.de>
2097    * mccheader.c: slightly reworked the library init/expunge/open/close
2098      interface to make the library handling a bit more robust.
2100 2006-01-17 Jens Langner <Jens.Langner@light-speed.de>
2102    * mcp/locale: added russian catalog translation kindly created and
2103      provided by Michael Malyshev
2105 2005-12-09 Gunther Nikl <gni@gecko.de>
2107    * mcp/private.h (FunctionName): Make "char *".
2108      mcp/ObjectCreator.c (FunctionName): Adapt.
2109      (PrefsObject): Use loops to initialize arrays.
2111 #### v15.17 RELEASE ############################################################
2113 2005-12-07 Jens Langner <Jens.Langner@light-speed.de>
2115    * mcc/HandleInput.c,Methods.c: fixed the long-standing bug #1286500 where
2116      TextEditor.mcc deleted/overwrote certain text passages if the mouse was
2117      initially used to position the cursor within some text. This really was
2118      a very old bug, very hard to reproduce and very annoying. But due to
2119      the help of the reporter of that bug it was much more easier to identify
2120      and eliminate. Thanks AlexC.
2122 2005-08-16 Jens Langner <Jens.Langner@light-speed.de>
2124    * mcc/Dispatcher.c: fixed a crash bug in the MUIM_Setup function where we did
2125      forgot to initialize the font pointer if no explicit font was configured by
2126      the user.
2128 2005-08-11 Ilkka Lehtoranta <ilkleht@isoveli.org>
2130    * mcc/Makefile.mos: Added 'dump' rule to actually make some use of debug
2131      binaries. Didn't change other makefiles (probably not interesting).
2133 2005-08-08 Gunther Nikl <gni@gecko.de>
2135    * mcc/ExportText.c, mcc/TextEditor-Test.c, ChangeLog: Fix typos.
2137 2005-08-07 Jens Langner <Jens.Langner@light-speed.de>
2139    * mcc: reverted ilkka's fix on VisualHeight() because it didn't catch all
2140      cases which gave trouble on a hidden TextEditor object. Now all TextFit()
2141      and TextLength() functions always use a temporary rastport for finding
2142      out the text limits. In addition, some checks for data->rport and
2143      data->shown were added to various functions such that a texteditor object
2144      should not crash anymore if it is used in a hidden state (e.g. hidden in
2145      a registergroup)
2147 2005-08-06 Jens Langner <Jens.Langner@light-speed.de>
2149    * mcc/AllocFunctions.c: implemented new AllocLine/FreeLine functions where
2150      certain operations during the allocation/memory freeing times can be
2151      performed to ensure the consistency of certian other structures. In fact
2152      by adding checks for the global blockinfo structure in FreeLine() a
2153      crash bug is now fixed that occurred when having deleted some empty
2154      lines at the end of a document.
2155    * mcc/ExportHook.c,ExportText.c: fixed another bug in the undo/redo
2156      processing where TextEditor.mcc did always strip the last newline char
2157      of a line due to the bugfix of bug #1227680. Now the proper bugfix for
2158      that bug is located in ExportText.c instead.
2160 2005-08-03 Gunther Nikl <gni@gecko.de>
2162   * mcp/CreatePrefsGroup.c/CreatePrefsGroup (editpopupdata): Move GetStr()
2163     calls into a separate loop to save stackspace and to reduce programsize.
2165 2005-08-02 Ilkka Lehtoranta <ilkleht@isoveli.org>
2167   * mcc/Debug.c,mcc/Debug.h,mcp/Debug.c,mcp/Debug.h: Fixed KPutFmt() to use
2168     VNewRawDoFmt() call in MorphOS for proper vararg handling.
2169   * mcc/MixedFunctions.c: Added proper test for antialiased fonts in MorphOS.
2170   * mcc/MixedFunctions.c: Fixed VisualHeight() to not call LineCharsWidth()
2171     when object is not visible. Editor no longer crash in a hidden state when
2172     inserting text.
2174 #### v15.16 RELEASE ############################################################
2176 2005-08-01 Jens Langner <Jens.Langner@light-speed.de>
2178    * mcc/MixedFunctions.c: fixed a bug #1249673 in the SetCursor() function where
2179      on use of a non antialiased font, the cursor background was not successfully
2180      cleared and caused the cursor to leave graphical trails.
2182 #### v15.15 RELEASE ############################################################
2184 2005-07-31 Jens Langner <Jens.Langner@light-speed.de>
2186    * mcc/ImportHook.c: fixed bug #1235375 that caused the EMail import hook not
2187      to stop analyzing a string at the line end and caused e.g. single slashes in
2188      a line to set text to italic if some other text on more lines contain a
2189      slash as well.
2190    * mcc/ExportHook.c: fixed bug #1235756 where the ExportHook always cleared out
2191      the last character of an export operation instead of checking for the
2192      particular newline character we wanted to clear. This had the effect that the
2193      undo/redo operations of TextEditor was slightly broken and did always redo
2194      one character less that the undo operation cutted.
2195    * mcc/Dispatcher.c: fixed bug #1246944 where the use of MUIA_TextEditor_Columns
2196      seemed to have caused crashes because the rastport was not completly ready
2197      at the time the AskMinMax() method was called by MUI. Now we take the
2198      nominal fontwidth size attribute tf_XSize instead of using TextLength(), so
2199      that this function should now also hopefully match the column with a bit
2200      better.
2202 2005-07-30 Jens Langner <Jens.Langner@light-speed.de>
2204    * mcc/HandleInput.c,Dispatcher.c: added IDCMP_EXTENDEDMOUSE support to
2205      catch the new wheelmouse events supported since intuition.library
2206      v51.28+ in AmigaOS4.
2207    * mcp/KeyStorage.c: changed the rawkey based wheelmouse name to carry
2208      a "nm_" prefix so that it refers to newmouse based wheelmouse events
2209      and doesn't conflict with the new wheelmouse events in AmigaOS4.
2211 2005-07-25 Jens Langner <Jens.Langner@light-speed.de>
2213    * mcc/ImportHook.c: fixed a minor bug in the ImportHook routines where
2214      upon an import of bold/italic/underline via escape sequences always
2215      terminating grow elements where inserted for all possible soft-types.
2217 2005-07-14 Ilkka Lehtoranta <ilkleht@isoveli.org>
2219    * mcc/TextEditor-Test.c: Request version 36 of rexxsyslib for AmigaOS
2220      3.0/3.1 compatibility.
2222 2005-07-07 Jens Langner <Jens.Langner@light-speed.de>
2224     * mcc/library.c: added missing USEDCLASSESP define so that MUI knowns
2225       which mcp class belongs to the mcc.
2227 2005-07-05 Jens Langner <Jens.Langner@light-speed.de>
2229     * mcc/MixedFunctions.c: fixed another possible signedness problem which
2230       might have caused problem with characters > 127 and was found by Georg
2231       Steger.
2233 2005-07-04  Ilkka Lehtoranta <ilkleht@isoveli.org>
2235     * mcc/MixedFunctions.c: Antialias font detection didnt work in MorphOS
2236       (there isn't FSF_ANTIALIAS flag) and cursor background was not cleared
2237       accordingly. Rather assume font is always antialiased what is true in
2238       most cases.
2240 #### v15.14 RELEASE ############################################################
2242 2005-07-02 Jens Langner <Jens.Langner@light-speed.de>
2244     * mcc/ImportHook.c: fixed bug #1229129 where the new "EMail" import hook
2245       didn't correctly parse lines with typical email like highlight chars,
2246       which in fact caused applications using this import to display some
2247       hightligthed sections incorrect.
2248     * mcc/Search.c: fixed bug #1231207 where the MUIM_TextEditor_Search method
2249       was broken due to a changed datatype.
2250     * mcc/HandleInput.c: fixed a bug where after having tripleclicked on an empty
2251       line, another normal click on another line caused the empty line to stay
2252       marked.
2254 2005-07-02 Sebastian Bauer <mail@sebastianbauer.info>
2256     * doc/MCC_TextEditor.doc: Described that for other import hooks than the
2257       plain hook, escape sequences have to be supported as well, as some
2258       progams have insisted on this former undocumented "feature".
2260 2005-06-30 Jens Langner <Jens.Langner@light-speed.de>
2262     * mcc/HandleInput.c: if the user tripleclicks on a character that is
2263       a separating character the texteditor previously didn't allow to mark
2264       the whole line. Now always the whole line is marked if the user
2265       tripleclicks somewhere on a line.
2266     * mcc/PrintLineWithStyles.c: fixed a minor bug in the text marking display
2267       routines where on centered and right aligned lines not always the whole
2268       line was correctly displayed as being marked. Now it should be fairly
2269       better, however the current solution still doesn't cover all cases and
2270       probably requires a rewrite in some day in future :)
2272 2005-06-28 Jens Langner <Jens.Langner@light-speed.de>
2274     * mcc/HandleInput.c: fixed bug #1229170 where due to a signedness problem
2275       characters with a code >128 couldn't be typed in under OS3.
2277 #### v15.13 RELEASE ############################################################
2279 2005-06-26 Jens Langner <Jens.Langner@light-speed.de>
2281     * mcc/PrintLineWithStyles.c: fixed a bug where we did also paint the
2282       non printable newline characters at the end of each line. This caused
2283       that with some fonts the newlines where printed with special glyphes.
2284     * mcc/ExportHook.c: fixed bug #1227680 where the ExportText() method did
2285       always export one line too much due to not clearing the last 0x0a, which
2286       in fact is always articial.
2287     * mcc/HandleInput.c, mcc/Methods.c, mcc/Navigation.c, misc: fixed another
2288       bunch of problems with hard wrapped lines. There were still some problems
2289       in correctly selecting a whole hard wrapped line by tripleclicking on it.
2290       Now TextEditor.mcc should hopefully behave correct with hard wrapped lines
2291       and display it as correct as it allows to select such lines.
2292     * mcc/HandleInput.c, mcc/PrintLineWithStyle.c: on a doubleclick on a word
2293       the editor always marked the block from zero which in fact was a bit
2294       unintuitive and uncommon compared to other editors. Now if a user double-
2295       clicks on a word that is e.g. centered only the word is marked.
2296       In contrast, now also the whole line is drawed marked if the line is
2297       triple clicked.
2299 2005-06-24  Gunther Nikl <gni@gecko.de>
2301     * mcc/library.c: Only open V36 of layers.library, keymap.library and
2302       diskfont.library
2303     * mcc/BlockOperators.c, mcc/EditorStuff.c, mcc/TextEditor-Test.c: Added
2304       "#include <devices/clipboard.h>" for <libraries/iffparse.h>.
2305     * mcc/Dispatcher.c, mcc/GetSetAttrs.c, mcc/HandleInput.c: Added
2306       "#include <intuition/classes.h>" for INST_DATA #define.
2307     * mcc/private.h: Cleanup #include statements.
2308     * mcc/AllocBitMap.c: Free allocated bitmap on failure in non-V39 case.
2309       Move version check into USE_OS3 #define.
2310       (MUIG_AllocBitMap): Improved friend handling.
2311     * mcc/AllocFunctions.c: Minor changes.
2312     * mcc/BlockOperators.c, mcc/Dispatcher.c, mcc/EditorStuff.c, mcc/ExportHook.c,
2313       mcc/ExportText.c, GetSetAttrs.c, mcc/HandleARexx.c, mcc/HandleInput.c,
2314       mcc/ImportHook.c, mcc/ImportText.c, mcc/InitConfig.c, mcc/MixedFunctions.c,
2315       mcc/PrintLineWithStyles.c, mcc/Search.c, mcc/SpellChecker.c,
2316       mcc/StyleOperators.c: Cleanup #include statements.
2317     * mcc/SpellChecker.c: Fixed WorkbenchControl() replacement for GCC 3.4.x
2318       and newer (has to use stdarg.h macros!)
2319       (CloneSearchPath, FreeSearchPath): Delete >=44 check since thats what
2320       OpenLibrary() requests.
2321       (SendRexx, SendCLI): Use LONG as return type.
2322       (LookupWord, SuggestWord): Update to match SendRexx and SendCLI.
2324 2005-06-18  Jens Langner <Jens.Langner@light-speed.de>
2326     * mcc/Navigation.c: fixed a bug in the CursorOffset() function which cures
2327       the problem with being unable to select the last character of a hard
2328       wrapped line with the mouse.
2330 2005-06-14  Jens Langner <Jens.Langner@light-speed.de>
2332     * mcp/KeyStorage.c: improved the extended keycode recognition to also
2333       recognize NUMLOCK and the newmouse wheel events as well as the
2334       media keys. So now a user might more intuitively connect commands
2335       to these extended keycodes as well.
2337 2005-06-12  Jens Langner <Jens.Langner@light-speed.de>
2339     * mcc/MixedFunctions.c: fixed bug #1215342 where on hard wrapped lines a
2340       single character was missing at the end of the wrapped line.
2341     * mcc/HandleInput.c: applied a patch from Gunther Nikl which removes the
2342       forbidden floating point math in the wheelmouse scrolling code to due
2343       our shared library nature.
2344     * mcc/ImportHook.c: fixed the Plain ImportHook to also call AddGrow for
2345       every style/color item found instead of combining them. This in fact fixes
2346       problems with being unable to set text bold on text that was imported.
2347     * mcc/TextFunctions.c: replaced own anyway slightly buggy TextLength/TextFit
2348       functions with the OS's own TextLength/TextFit functions and adapted sources
2349       accordingly.
2351 2005-06-04  Jens Langner <Jens.Langner@light-speed.de>
2353     * mcc/ImportHook.c: reworked the MIME/Email based ImportHook to properly
2354       recognize the ESC sequences like the plain import hook does. This in fact
2355       seems to be the same behaviour than the old 68k ASM based ImportHooks had.
2356       Also improved the termination/recognition of the /,*,#,_ chars to make it
2357       possible to set soft styles on a particular text. This should also fix
2358       bug #1210745.
2359     * mcp: added keycodes for the extended keys available in AmigaOS4/MorphOS for
2360       example. Now keys like PAGE_UP/PAGE_DOWN are properly recognized by the
2361       preference pane and more intuitively configurable.
2363 2005-06-01  Jens Langner <Jens.Langner@light-speed.de>
2365     * mcc/GetSetAttrs.c: if MUIA_Disabled is used on a TextEditor object, an
2366       existing slider was not automatically disabled as well. bug #1212811
2368 #### v15.12 RELEASE ############################################################
2370 2005-05-28  Jens Langner <Jens.Langner@light-speed.de>
2372     * mcp/CreatePrefsGroup.c: fixed a crash bug where the InsertHook() was
2373       using the passed function parameters incorrectly.
2374     * mcc: fixed bug #1187007 where upon using anti-aliased proportional fonts
2375       caused the texteditor to not correctly clear the whole cursor areas and
2376       therefore left some cursor "signs" back in the editor.
2377     * mcc/Dispatcher.c, mcc/HandleInput.c: fixed bug #1178168 where upon switching
2378       from another gadget to a texteditor object via the TAB key automatically
2379       caused that a TAB key is inserted into the text.
2380     * mcc/HandleInput.c: implemented wheel-mouse event recognition via the rawkey
2381       based NEWMOUSE standard. Now, each TextEditor.mcc object should allow to
2382       use an existing wheel-mouse to scroll text up/down. Previously each
2383       application had to implement that on its own. However, for those apps
2384       already having implemented it, nothing will change.
2386 2005-05-25  Jens Langner <Jens.Langner@light-speed.de>
2388     * library.c: added missing USE_UTILITYBASE define which in fact was the reason
2389       why the last two previous releases crashed on OS3 machines. bug #1180094
2391 #### v15.11 RELEASE ############################################################
2393 2005-05-14  Jens Langner <Jens.Langner@light-speed.de>
2395     * mcc/TextFunctions.c: with help of the new debugging scheme I was
2396       finally able to find and fix the reason why under certain circumstances
2397       a texteditor.mcc gadget could end up in an endless loop if used in write
2398       mode. This should fix bug #1180094, #1181948.
2399     * misc: after having finally found a reproduceable case for bug #1180094
2400       and similar reports, I tight together a complete runtime debugging
2401       system similar to the one in YAM. It should help in finding this and
2402       other bugs more easily in future. This new debugging system will search
2403       for an "texteditor.mcc.debug" ENV variable and does accept similar
2404       variable content identifies like in YAM. E.g. to pull out all possible
2405       debug information, compile with -DDEBUG (is the default) and set
2406       the env variable to "@all all". However, please review the YAM
2407       ChangeLog for a more detailed description on the debugging scheme.
2409 2005-04-20  Sebastian Bauer <mail@sebastianbauer.info>
2411     * mcc/Keybinings.c: The default keybindings array has to be
2412       terminated with a -1. Problem found by Georg Steger.
2414 2005-04-17  Sebastian Bauer <mail@sebastianbauer.info>
2416     * mcc/Dispatcher.c: Don't add MBQ_MUI_MAXMAX when requesting maximal
2417       dimension in MUIM_AskMinMax but assign MUI_MAXMAX instead.
2419 2005-04-11  David Rey <tactica@users.sourceforge.net>
2421     * doc/MCC_TextEditor.guide: general rework - fixed typos and grammar;
2422       dropped the fancy V40+ formatting to make maintenance easier
2423       (sorry Allan :o); put the old (<15.10) changes in a separate page;
2424       documented the historic HD recovery... TODO: installation, arexx,
2425       credits and more
2426     * mcp/CreatePrefsGroup.c: no longer highlights the LGPL tidbit (it
2427       would be unreadable against a white background otherwise, which
2428       would be quite common for a text editor :); fixed typos and grammar;
2429       reformatted to be more readable; made the usage and arexx parts
2430       match what the guide says; added the missing KILLLINE, TOUPPER &
2431       TOLOWER ARexx commands; no longer refers the user to the AUI
2432       Style Guide for documentation that belongs to local docs; fixed
2433       wrong copyright attribution (copyright for the open source code
2434       begins in 2005, not in 1997)
2435     * mcc/rev.h, mcp/rev.h: changed copyright mark "(c)" to "(C)" for
2436       being generally better accepted though still not legally binding
2437     * doc/MCC_TextEditor.doc: likewise
2439 2005-04-10  Jens Langner <Jens.Langner@light-speed.de>
2441     * includes/mccheader.c: updated common MCC include file to reflect the
2442       latest changes done in the nlist.mcc project.
2443     * includes/mccclass_68k: replaced the assembler based OS4/68k stub by an
2444       easier manageable C-based variant.
2446 2005-04-10  Ilkka Lehtoranta <ilkleht@isoveli.org>
2448     * mcc/library.c: Request rexxsyslib.library V36 (KS 3.1) instead of V38.
2450 #### v15.10 RELEASE ############################################################
2452 2005-04-09  Jens Langner <Jens.Langner@light-speed.de>
2454     * all: last preparations for the 15.10 release. bumped version date and
2455       such.
2457 2005-04-08  Ilkka Lehtoranta <ilkleht@isoveli.org>
2459     * mcc/SpellChecker.c: Now compiles without OS4 headers too.
2460     * mcc/TextEditor-Test.c: Fixed MorphOS build.
2461     * includes/SDI_hook.h: Changed MorphOS hooks to use HookEntry stub.
2463 2005-04-08  Sebastian Bauer <mail@sebastianbauer.info>
2465     * TODO: Added two more entries (italic letter problem, tabs)
2467 2005-04-08  Jens Langner <Jens.Langner@light-speed.de>
2469     * mcp/CreatePrefsGroup.c: fixed incorrectly formatted about text.
2470     * mcp: added missing ENTRY() calls to the Dispatchers which are required
2471       by the MorphOS build. However, this required to put the Create/Delete
2472       of our subclasses into Dispatcher.c, but now the mcp should hopefully
2473       work on MorphOS as well.
2475 2005-04-07  David Rey <tactica@users.sourceforge.net>
2477     * doc/MCC_TextEditor.doc: fixed typos, corrected grammar, reformatted
2478       to make it a bit more readable and adapted to the new state of
2479       affairs (LGPL)
2481 2005-04-07  Sebastian Bauer <mail@sebastianbauer.info>
2483     * mcc/SpellChecker.c: Reimplemented the search path feature also
2484       for systems not having a recent workbench.library. Code is mainly
2485       untested but the core is taken from YAM with permission from
2486       Jens Langner. So TextEditor-mcc is still LGPL ;)
2487       Note that this code is not included within the OS4 compile so
2488       this feature requires at least version 44 of workbench.library
2489       here. But this is a tautology.
2490     * mcc: No longer uses static hook declarations within functions,
2491       because same code of a mcc can be executed by several tasks!
2492     * doc/MCC_TextEditor.doc: Warn about unpredictable results of
2493       forbidden placement of some escape sequences for the plain import
2494       hook.
2496 2005-04-06  Jens Langner <Jens.Langner@light-speed.de>
2498     * mcc: fixed OS3 build as well and removed all remaining compiler
2499       warnings.
2500     * mcc/Dispatcher.c: fixed recently broken OS4 build due to latest
2501       MorphOS changes.
2503 2005-04-06  Ilkka Lehtoranta <ilkleht@isoveli.org>
2505     * mcc: Removed compiler warnings for MorphOS build.
2507 2005-04-06  Sebastian Bauer <mail@sebastianbauer.info>
2509     * mcc/ImportHook.c: Changed behaviour of FindEOL() not to return NULL
2510       if the text only consits of a 0 byte. This fixed bug #1177619.
2512 2005-04-05  Sebastian Bauer <mail@sebastianbauer.info>
2514     * mcc: Clipboard handling for copy/paste was totaly broken (don't
2515       confuse clipboard.device with console.device ;) ). Now only one
2516       pointer is used within the instance data for the clipboard io
2517       request.
2518     * mcc: Reimplemented Workbench path search support when starting shell
2519       commands (e.g. for the spell checkers). This however requires at
2520       least version 44 of workbench.library (coming with OS3.5)
2521     * mcc: Finished complete reimplementation of the import hooks. Because
2522       the nature of a reimplementation, the behaviour of the new functions
2523       might be different and even buggy. Exporting also works in the
2524       meantime.
2526 2005-04-04  Jens Langner <Jens.Langner@light-speed.de>
2528     * mcc/ImportText.c: fixed bug where an empty MUIA_TextEditor_Contents
2529       string didn't clear the texteditor area.
2530     * mcc: removed the last bunch of compiler warnings and made the
2531       custom class compile with -DDEBUG disabled.
2533 2005-04-01  Sebastian Bauer <mail@sebastianbauer.info>
2535     * mcc: Now clears the area before the text near the cursor is
2536       redrawn. Fixes bug #1172355 aka "anti alias bug". This is no
2537       april fool ;)
2538     * mcc: Started to reimplement all of the import and export hooks
2539       which were 68k asm before
2541 2005-03-31  Sebastian Bauer <mail@sebastianbauer.info>
2543     * mcc: Fixed buffer overflow which happened if the font name was
2544       longer than 27 chars.
2545     * all: Enforce amiga align for the keybinding structure because
2546       this is exported to the settings file and has to be compatible
2547       with the 68k version.
2549 2005-03-31  Gunther Nikl <gni@gecko.de>
2551     * all: Source cleanup and minor OS3 makefile changes.
2553 2005-03-31  Jens Langner <Jens.Langner@light-speed.de>
2555     * mcp: modified preferences sources to use flexcat to generate
2556       the locale.c,h files out of the new TextEditor_mcp.cd and C_?.sd
2557       files instead of having a static locale interface.
2559 2005-03-31  David Rey <tactica@users.sourceforge.net>
2561     * mcp/locale/TextEditor_mcp.cd: added
2563 2005-03-28  Jens Langner <Jens.Langner@light-speed.de>
2565     * initial LGPL release published at sf.net