home *** CD-ROM | disk | FTP | other *** search
- MagicMenu 2.4 (beta)
- ====================
-
- - Improved overall stability under CyberGraphX; the menu rendering code was
- actually peeking Screen->BitMap instead of Screen->RastPort.BitMap, which
- among other things could screw up rendering in deep display modes. Menu
- rendering now works consistently in display depths beyond 8 bit.
-
- - Removed references to SetABPenDrMd() where they were in the wrong place.
-
- - The code that sends the IntuiMessage should be less timing critical and
- simpler now. It fires off the message and starts to wait for a response
- if necessary rather than allocating timer requests, message ports, etc.
- on the spot and then jumping into action.
-
- - Removed the routine that complains about timed out IntuiMessages. It's
- nice to know that something went wrong, but not that helpful if you
- cannot do anything about it.
-
- - Since IntuiMessage processing works differently now, MagicMenu now checks
- for pending, unreplied messages.
-
- - The routine that displays the menu and handles the IDCMP_MENUVERIFY
- case should be better protected against Intuition state changes and
- stale pointers. There is still a catch in that the Window to receive
- the menu event may close or dispose of its menu strip before the
- event arrives. But actually, Intuition protects itself against
- such eventualities, anyway.
-
- - For a Window without a UserPort, MagicMenu could lose memory. This
- has been fixed.
-
- - When an IDCMP_MENUVERIFY message times out, the window to cancel
- it now properly receives its IDCMP_MOUSEBUTTONS/MENUUP and
- IDCMP_MENUPICK/MENUNULL messages (as per the RKMs). When menu
- rendering is finished the other inactive IDCMP_MENUVERIFY windows
- on the screen now receive the proper IDCMP_MOUSEBUTTONS/MENUUP
- messages.
-
- - Changed the way BOOPSI images in menus are handled. MagicMenu no longer
- tries to remap them as if they were BitMap images. Right now it turns
- them into BitMap images and then remaps them.
-
- - Redid the image remapping code. It no longer fiddles with the raw BitMap
- data but uses the Blitter.
-
- - Added a patch for ObtainGIRPort() which should make all the SafeGIRPort
- patches redundant that existed just in support of MagicMenu. The patch
- checks if the screen it should work upon is currently locked by
- MagicMenu. If so, ObtainGIRPort() will return NULL. This is a little
- dangerous since some built-in Intuition classes do not protect themselves
- against ObtainGIRPort() returning NULL. I can't make the patch tell
- Intuition to wait until the screen is ready again either, as this would
- eventually deadlock Intuition.
-
- - Changed the new 3D look text highlight colour to be more consistent with
- the way gadget text highlighting works.
-
- - MagicMenu no longer detaches from the Shell it was started from. If
- you need such a feature, use "run >nil: MagicMenu".
-
- - MagicMenu now works with Final Writer. Final Writer calls
- Clear/ResetMenuStrip whilst in MENUVERIFY state. Previously,
- MagicMenu did not allow this to happen, causing the verify message
- to time out.
-
- - The phony IntuiMessages are now ExtIntuiMessages with a NULL tablet
- data pointer and proper time stamp information.
-
-
- MagicMenu 2.5 (beta)
- ====================
-
- - The ObtainGIRPort() patch now handles the NULL parameter case
- gracefully. Some BOOPSI gadget dispatchers actually end up invoking
- the draw method in the OM_NEW case with the GInfo pointer not
- yet initialized.
-
-
- MagicMenu 2.6 (beta)
- ====================
-
- - The new 3D colour mode could screw up the screen colour palette.
- The code did not check for pen allocation failures and, since the
- pen variables were unsigned, the deallocation code would end up
- freeing the same pen over and over again.
-
- - Changed the commodities filter setup code. All the initializations
- are now done at program startup time. MagicMenu enables the filter
- later instead of building the filter when the menu comes up.
-
- - Changed the way bevel boxes are rendered. Instead of calling
- Move..Draw..Draw over and over again it now uses RectFill()
- where possible. For vertical and horizontal lines this is
- actually faster than calling Move/Draw.
-
- - Made small visual changes to the menu box and title bar rendering
- in new 3D look mode.
-
- - With the non-blocking option enabled, the new 3D look menus now
- sport drop shadows.
-
- - In non-blocking mode MagicMenu no longer uses SuperBitMap windows.
-
- - Removed the "demo" menu from the prefs program.
-
- - Integrated Mario's new imagery, including the new colour map
- that goes with it.
-
-
- MagicMenu 2.7 (beta)
- ====================
-
- - The drop shadows no longer cause windows to be moved away from
- the screen right and bottom edges.
-
- - Disabled menus, items and subitems are no longer rendered with
- a frame in new 3D mode.
-
- - The drop shadows were only transparent with CyberGraphX.
- I added another patch to allow this for any Amiga (and which
- magically also boosts layer creation speed).
-
- - One WaitBlit() was missing in the remapped image cleanup code.
-
- - Removed the "clipping" option. It is now enabled by default in
- order to avoid big trouble on the way.
-
- - If MagicMenu cannot reuse the patch table installed by an older
- MagicMenu version that was removed from memory just before the
- new one was run, it now complains and exits without crashing.
-
- - I tried to make MagicMenu safer by reducing the rendering options
- to two alternatives only: you either select non-blocking or you
- don't. Both options imply clipped drawing operations, making it
- more difficult to trash memory on the way. The "direct draw"
- option is implicitely enabled for non-blocking mode and
- implicitely disabled for blocking mode. All this will slow down
- menu operations a bit, but better a little slower than a little
- sooner to crash.
-
- - No longer fakes ClipRects and uses sleight-of-hand tricks to get
- away with it. Instead of calling SwapBitsRastPortClipRect()
- it now uses a much simpler technique to exchange the on-screen
- BitMap data and the menu imagery. This technique neither has
- nor requires the side-effects SwapBitsRastPortClipRect() has.
-
- - Removed the CyberGraphX chunky option; it is now enabled all
- the time.
-
- - New and improved colour remapping code. Much faster than the
- old blitter based stuff.
-
- - All new preferences program. The prefs editor goes into
- SYS:Prefs. The new configuration files go into ENVARC:.
- Note that the new configuration files are not compatible
- with the old ones.
-
- - Prefs program and main program now support localization.
- No catalogs are available yet, sorry.
-
- - Non-blocking operation is now the default mode since it
- is less likely to trash memory, freeze the machine or
- crash it.
-
-
- MagicMenu 2.8 (beta)
- ====================
-
- - Added two more patches for WindowToBack() and
- MoveWindowInFrontOf().
-
- - The prefs program should now consistently find the current
- preferences settings, even if MagicMenu is not running.
-
- - Removed the ghosted text colour options. These colours are
- now connected to the background colour.
-
- - The prefs program now has a proper version string.
-
- - The keyboard control hotkey combination can be changed at
- run-time now.
-
- - Resetting the preferences to defaults now properly updates
- the display and the colours.
-
- - The layer patch was using the wrong rectangle offsets,
- causing superbitmap windows to screw up.
-
- - The prefs program and the main program now both have
- new default minimum stack size limits. For the prefs
- program it's 10K and 8K for the main program.
-
- - The menu image remapping routines now treat images
- properly which make use of the PlanePick/PlaneOnOff combo.
-
- - The main program will now find the prefs program when
- it should do. Previously, it would only start the prefs
- program if the main program was run from Shell.
-
- - The colour remapping now also takes place in selected state
- images. The same colour remapping rules are applied for the
- highlight colour that are used for the normal background
- colour.
-
- - Added tablet input event processing. So far only one
- tablet input device is reported to work properly. If there
- are more, I would like to know :)
-
- - Rewrote the central menu event processing loop. MagicMenu
- should now snap out of an Intuition deadlock much faster
- than before. I also removed the global menu timeout,
- which is now redundant.
-
- - The menus no longer pop out of multicolour style back
- into old 3D style without warning.
-
- - Starting the main program twice now brings up the
- prefs editor, just like with any other commodities tool.
-
- - Made the drop shadow a little smaller (4x4 instead of 6x6).
-
- - Fixed two fatal bugs in the bitmap initialization code.
-
- - Added two more patches, this time for OffMenu() and OnMenu().
-
- - MagicMenu now supports menu lending. For this to work, I had
- to remove the "screen with the active menu pops to front"
- feature. This screen depth arrangement also got into trouble
- with child screens, which would always get popped to the
- background.
-
- - The prefs program now sports a "Test" button. If the main
- program is not yet running when you hit this button, the
- prefs program will try to launch it.
-
-
- MagicMenu 2.9 (beta)
- ====================
-
- - Moved the default imagery back into chip RAM.
-
- - When in keyboard control mode, [Shift]+[Esc] will abort
- the entire menu operation, no matter which menu hierarchy
- you are in.
-
- - The 3D multicolour mode now requires that the menu font is
- at least nine pixels tall. If it is smaller, you will get
- the old 3D mode.
-
- - Reworked the menu imagery and made sure that the MX and
- checkmark images match in size.
-
- - Multicolour ghosted text no longer gets rendered over and
- over again when moving the mouse across it.
-
- - When running out of pens for the gradient fill slider
- the prefs editor should now back out gracefully rather than
- end up trying to load colour register -1 with greyscale
- data. This could have been the reason for the inexplicable
- prefs editor crashes.
-
-
- MagicMenu 2.10 (beta)
- =====================
-
- - Default prefs project icon images now come from ENV:sys/def_pref.
-
- - The multicolour 3D look mode no longer requires a font of a least
- nine pixels. Now eight pixels will do (and don't you complain if the
- imagery is taller than the menu font).
-
- - The menu image remapping code should now be much smarter for images
- that use the PlanePick/PlaneOnOff option.
-
- - Removed the "Remove" option from the prefs program.
-
- - The prefs editor could copy too many colours when updating
- the program settings.
-
- - Added a "precision" slider to the prefs program. With this slider
- you can select how much error the colour allocation routine will
- tolerate when selecting the colours for the multicolour menu.
-
- - Rewrote all the colour management routines to be as careful as
- possible when releasing the allocated pens. It looks as if not
- all system configurations will treat pen #-1 as a no-op.
-
-
- MagicMenu 2.11 (beta)
- =====================
-
- - The preferences editor now opens a custom screen with 32 colours
- if it cannot get that many from the requested public screen.
-
- - When MagicMenu has taken control of the menus, window depth
- arrangement calls are no longer ignored, but delayed until
- the menu closes. Actually, I would have to add a whole lot
- more patches to make operation halfway safe, but for now
- I'm just plastering patches onto routines which are somewhat
- likely to get triggered while the menus are up.
-
-
- MagicMenu 2.12 (beta)
- =====================
-
- - The window depth arrangement patches were not installed correctly,
- causing them to do nothing in most cases.
-
- - In non-blocking mode and when running under Kickstart 2.04 you
- would still get the shadow borders. As the drop shadows do not
- work under V37 this was not really sensible.
-
- - Added Mario's new 4 colour images. Note that you will get these
- only with high resolution screens and fonts >= 11 points. I also
- changed the old 3D look ghosting style.
-
-
- MagicMenu 2.13 (beta)
- =====================
-
- - Added a new option to the prefs program. If "Prefer screen colours"
- is enabled, MagicMenu will make up the menu colours from the screen
- user interface colours rather than using the colours you selected
- from the palette.
-
- - Updated the WindowToFront/WindowToBack patches to delay window
- operations on the screen the MagicMenu menus are active on.
-
- - Added more patches to SetWindowTitles and RefreshWindowFrame.
- I should also patch RefreshGList, RefreshGadget, NewModifyProp,
- ModifyProp, and about seven other routines but I guess I'd
- rather stop here. All these routines can cause deadlocks which
- MagicMenu will back out of safely. This can be a little annoying,
- but you can still change the MagicMenu operating mode for
- normal operation.
-
- - The keyboard control commands now consistenly work when they are
- enabled and go out of the way when the are disabled.
-
- - Changed the settings file format, this time hopefully for the last
- time.
-
- - Added a new option to have menus open slightly delayed, or put
- another way, when you have stopped moving the mouse.
-
- - Added another new option to turn off the frames drawn around the
- active menu item.
-
-
- MagicMenu 2.14 (beta)
- =====================
-
- - Corrected the placement of the Command images in menu items and
- subitems.
-
- - For the "old look" menus the separator bars now render in the
- correct colour.
-
- - The old 3D look menu borders are now just one pixel thick,
- regardless of the display mode used.
-
- - Changed the preferences data exchange interface between the
- prefs editor and the main program. Now the system should no
- longer crash if you try to change the settings of the new
- program with an old prefs editor.
-
- - Drop shadows are now restricted to pop-up menus.
-
- - Some menus will open faster now in non-blocking mode, as they
- will be "promoted" to simple refresh windows if possible.
-
- - Some of the patches MagicMenu installs to protect itself are
- no longer active in non-blocking mode. This will help Workbench
- and other applications which would otherwise get caught in
- their display update work.
-
- - Changed the alignment rules for the checkmark, Amiga key and
- submenu arrow images to match those Intuition uses (or would
- use if it could).
-
- - With "mark submenus" disabled, MagicMenu would cease to render
- submenu indicators in multicolour 3D mode. It now works again
- as it should.
-
-
- MagicMenu 2.15
- ==============
-
- - An invalid hotkey specification no longer keeps the main program
- from functioning. It will complain and the feature connected with
- the hotkey will be unavailable, but the program will continue
- to run.
-
- - Changed the default colours for the preferences editor fallback
- screen.
-
- - Added more patches for screen depth arrangement, opening
- and closing.
-
- - Added Mario's new artwork.
-
-
- MagicMenu 2.16
- ==============
-
- - The size of the menu bar is now taken from the Screen data
- structure rather than made up from the font height.
-
-
- MagicMenu 2.17
- ==============
-
- - The layers.library patches now jump into action only if the
- non-blocking mode and the drop shadows are enabled.
-
-
- MagicMenu 2.18
- ==============
-
- - Removed all the layers.library patch code. The drop shadows are
- now rendered using a much more robust technique that does not
- require any black magic at all. As such, it now also works
- under Kickstart 2.04 and is no longer restricted to non-blocking
- mode (yes kids, that's what you always wanted).
-
-
- MagicMenu 2.19
- ==============
-
- - The changes in 2.18 introduced bugs into the menu refresh code.
- This is what I had to fix in this version.
-