1. 18 May, 2013 1 commit
    • Robert Sprowson's avatar
      Fix for missing window gadgets when no tool sprites are loaded · 18031756
      Robert Sprowson authored
      When 'outlinefont' is enabled, the drawicon_system function used to plot the close/back/resize etc icons tries to do so from the currently selected outline font.
      This usually results in various top bit set characters inappropriately being shown.
      Now, when there are no tool sprites loaded the gadgets are forced to be plotted in the system font (where the Wimp has carefully redefined the font), but the remainder of the desktop (eg. the title bar, user text) stays in the selected desktop font.
      
      Version 5.28. Tagged as 'Wimp-5_28'
      18031756
  2. 11 May, 2013 1 commit
  3. 03 May, 2013 1 commit
    • Robert Sprowson's avatar
      Slacken pointer checks · 42e284a3
      Robert Sprowson authored
      The pointer comparison checking required when running in a system with > 64M memory was tightened up from Wimp-4_75 to Wimp-4_76, but to allow the module to target pre RISC OS 5 systems an option to relax those checks is required.
      Each check has been revisited and where appropriate demarked with a "AcceptLoosePointer" macro, which just remaps the pointer into the stricter form and carries on. In the strict checking case, the macro reduces to nothing.
      
      Detail:
      Add AcceptLoosePointers switch.
      Retire singular use of StrongARM switch (calling XOS_SynchroniseCodeAreas is harmless pre StrongARM anyway).
      Rename Ursula_RPC options to RO400.
      Put duplicate documentation in the attic.
      Allow -2 or -1 as the iconbar handle in Wimp_ResizeIcon (ticket #203).
      Tighten up the list terminator check in the DebugMemory switch of Memory.s
      
      Tested on RISC OS 3.10 (emulated), 3.50, 3.60, 3.70, 4.02.
      
      Version 5.24. Tagged as 'Wimp-5_24'
      42e284a3
  4. 13 Apr, 2013 1 commit
    • Robert Sprowson's avatar
      Fix bug in Wimp_WhichIcon · e25bd2b7
      Robert Sprowson authored
      When matching an icon on the iconbar the window is initially matched correctly, but the "is this the right task" filter step was trying to compare the handle with -1. The result was that you would get the first match for any iconbar icon rather than a match for *your* iconbar icon.
      Unrelated: Tiling.s/Iconbar.s add a couple of comments and use symbols instead of magic numbers.
      Tested with a quality 3 line BASIC program, no longer returns icon #0 all the time.
      
      Version 5.23. Tagged as 'Wimp-5_23'
      e25bd2b7
  5. 28 Mar, 2013 1 commit
    • Robert Sprowson's avatar
      Add support for wide translation tables for window tool furniture · cd1be707
      Robert Sprowson authored
      With the introduction of 16bpp/32bpp modes it became possible to request tables from ColourTrans which used > 1 byte per colour, but the Wimp wasn't using this extension. Therefore tool sprites designed in 8bpp or less would be quantised horribly when plotted in a 16bpp or 32bpp mode.
      The Wimp now requests and plots with a wide table, and to avoid thrashing ColourTrans so much with the prevalence of individually paletted icon sprites, keeps the table seperately to the icon sprites ones. At worst (in 32bpp) this uses an extra 256x4 bytes of RAM.
      Trace.s: Split out the tracing routines from Wimp10 as it was getting a bit big.
      Tiling.s: Namespace change for the icons versus tools distinction. Removed some unnecessary PC+8/PC+12 confused NOPs.
      Tiling3D.s: Namespace change for the icons versus tools distinction.
      Wimp01.s: New set of variables to track the tool translation tables separately. Various jiggling to keep ADRs in range.
      Wimp02.s: Namespace change. Remove some double handling in Wimp_SetColourMapping.
      Wimp04.s: Namespace change. Made factor rationalisation common to both the icon and tool grinding code. Removed dual use of cachespritedata for both icons and tools. The tintfunc moves to Wimp10. Service_InvalidateCache confusion resolved by adding a new flag to remember that the tools need regenerating rather than just marking the tool list as missing (which subsequently got restored in Tool_SpriteOp without actually doing any palette work.
      Wimp10.s: Label tools_area renamed as it was immensely confusing to have that (which was actually holding the RMA allocation of the tool_list) and tool_area (which contains the sprite area) hanging around. Changed references to use tools-only cachetolspritedata routine. Added 'wide' flags to sprite op and colour trans calls. Tool_SpriteOp changed to actually regenerate the colour tables when they're known invalid (previously the tools list pointer was merely restored and no colour tables used). Trace functions extracted. Resolved confusion as to what recache_tools_trans and recache_tools_trans2 should be doing.
      
      Tested with 4bpp "NewLook" sprites in 4bpp/8bpp/16bpp/32bpp and 8bpp smooth greyscaled "Steel" tool sprites in same modes.
      Also ran a task window doing repeated Service_InvalidateCache calls while monitoring the RMA for leaks.
      Generally navigated around some directories to ensure that inverse icons (during double click) and filer windows (with individually paletted sprites) were being rendered.
      
      Version 5.20. Tagged as 'Wimp-5_20'
      cd1be707
  6. 14 Jul, 2012 1 commit
  7. 04 Dec, 2010 1 commit
  8. 10 Sep, 2008 1 commit
    • Steve Revill's avatar
      Fixed misalignment of WimpWriteDir code. · 320528b2
      Steve Revill authored
        Fixed corruption of table with characters to be mapped to WimpSymbol.
      Detail:
        There was an ALIGN statement missing just above the code for WimpWriteDir
      
        The table used to map characters to the WimpSymbol font had become corrupted
        which prevented the mapping from working correctly. This resulted in keyboard
        shortcuts disappearing in menus when using fonts that don't have definitions
        for the required characters, in particular the up-arrow representing shift.
      Admin:
        Tested on RO 5.11
      Author:
        Fred Graute
      
      Version 5.02. Tagged as 'Wimp-5_02'
      320528b2
  9. 04 Feb, 2003 1 commit
  10. 17 Jan, 2003 1 commit
    • Ben Avison's avatar
      Menu bugfixes and sprite variation support. · 3ed6d938
      Ben Avison authored
      Detail:
        * Adjust clicking on menu items was leading to Message_MenusDeleted being
          broadcast, resulting in incorrect behaviour in many applications.
        * Sprite-only menu items (eg !Draw's line pattern submenu) now highlight
          correctly when tiled menus are configured.
        * Added Wimp_Extend 13, which works out the appropriate resolution suffix
          for a given sprite pathname - required since Sprites11 support needs
          an iterative approach. This supercedes Wimp_ReadSysInfo 2.
        * *IconSprites now tries prefixing the last element of its path argument
          with "<Wimp$IconTheme>".
      Admin:
        Tested on Tungsten.
      
      Version 4.85. Tagged as 'Wimp-4_85'
      3ed6d938
  11. 05 Dec, 2002 1 commit
    • Ben Avison's avatar
      A few bugfixes, and some muching around with WimpVisualFlags that I did ages... · d2f6d63a
      Ben Avison authored
      A few bugfixes, and some muching around with WimpVisualFlags that I did ages ago but hasn't made it into a build yet.
      
      Detail:
        * Deleting icon 0 in a window that had no windows would rotate the
          contents of word &00000010 by 16 bits. This had the effect of causing
          lazy task swapping to blow up with an "undefined instruction" error.
        * Setting the caret to a byte position beyond the end of an icon's text
          would (a) loop indefinitely if the alphabet is UTF-8, or (b) data abort
          for any other alphabet. This was due to the code trying to determine the
          number of characters in the string, and ignoring the terminator;
          skipcharR would never advance far enough to satisfy the loop in UTF-8,
          in other alphabets it would advance as far as necessary, leading to the
          later code to try to step a huge number of characters through the
          pushfontstring copy of the text, running off the top of the SVC stack
          (which is mapped out on Tungsten, previously it abutted the system heap,
          so no ill effects were observed).
        * Keyboard shortcuts are now correctly positoned when 3D menus are selected.
        * Corrected spelling of "dialogue" in *WimpVisualFlags help.
        * Changed *WimpVisualFlags so that no parameters gives RISC OS 3
          behaviour, and -All gives default RISC OS 4 behaviour. (Previously, font
          blending was enabled in both cases, unless explicitly disabled by an
          additional -NoFontBlending switch.) This required a sense change in the
          font blending switch: -FontBlending now enables font blending.
          -NoFontBlending is still accepted without error, but is ineffectual
          (since the no-options state upon which it acts already has font blending
          disabled).
        * Default setting is now as though *WimpVisualFlags -RemoveIconBoxes had
          been executed. (In practice, this will not be noticeably different from
          previous Tematic versions, see below.)
        * The state -RemoveIconBoxes switch was previously assumed always set -
          now, if it is not specified, you get the old RISC OS 3 behaviour back.
      Admin:
        Tested on Tungsten.
      
      Version 4.82. Tagged as 'Wimp-4_82'
      d2f6d63a
  12. 28 Nov, 2002 1 commit
  13. 31 Oct, 2002 1 commit
    • Ben Avison's avatar
      Bugfixes. · 25c8889b
      Ben Avison authored
      Detail:
        * Message list pointers passed into Wimp_Initialises that didn't follow
          Wimp_StartTask used to be corrupted
        * Stack imbalance in ExitPoll if SWI Portable_Speed didn't preserve flags
        * 32-bit mode test speedups
        * Builds without RO4 option set
      Admin:
        Tested on Tungsten and Risc PC.
      
      Version 4.79. Tagged as 'Wimp-4_79'
      25c8889b
  14. 30 Oct, 2002 1 commit
    • Ben Avison's avatar
      Merged in RISC OS 4.02 changes (including ROM patches). Also som bugfixes. · 3b1e336c
      Ben Avison authored
      Detail:
        RISC OS 4 changes:
        * Font blending for desktop font (based on NC code, but now configurable)
        * 3-D window/menu/iconbar borders
        * Textured menu backgrounds
        * Loss of rubout box in unfilled text+sprite icons
        * *WimpVisualFlags controls various aspects of cosmetic changes above
        * Iconise button "slot" glyph slightly shorter (but only adopted in the RO400
          Resource directory)
        * Command window has front-window flag set
        * Byte at +39 of the window block has gained two new flag bits:
            bit 2 set => this window must never be given a 3D border
            bit 3 set => this window must always be given a 3D border
            (note that ResEd erroneously created windows with both bits set,
            this case is treated as though both bits were clear)
        * Another two colour specifiers on the end of C validation string command
          for icons controls the foreground and background colours to be used when
          the icon is selected
        * Pointer shape is correctly reprogrammed by the creation of icon
          underneath it
        * Full stops in writable icons are treated the same as spaces from the
          point of view of cursor navigation
        * spritesize routine returns a size of 0 if the sprite didn't exist
          (probably fixes some rendering problems)
        * Adjust-click on back icon brings window to front
        My changes:
        * DeleteRight turned on
        * Icon bar title background is set to default in all resource sets (avoids
          translation table recalc)
        * Error box title now cream across all resource sets
        * RISC OS 4 changes made 32-bit compatible / high addresses safe
        * Undocumented FullIconClipping option disabled
        * Command help made consistent for internationalised and non-
          internationalised builds
        * WimpVisualFlags defaults made sensible
        * Menu side width affected by ThreeD option at *run* time not assemble time
        * Right-clicking on menus with writable items no longer data aborts
        * Auto-opened menus are now at RHS of current icon (matches RISC OS 3.1)
        * Colour menus were knackered unless menu tiling was enabled
        * Fixed a bug whereby adding messages to a task that wanted all messages
          actually caused it to lose all other messages. The RISC OS 4 fix for
          this didn't work
        * Fixed bug introduced in version 4.76: tasks that wanted no messages got
          all of them
        * Autoscrolling is updated every 8 cs rather than every 12 cs
        * Added menu texture to pre-RISC OS 4 sprites files
      Admin:
        Tested on Tungsten.
      
      Version 4.78. Tagged as 'Wimp-4_78'
      3b1e336c
  15. 25 Oct, 2002 1 commit
    • Ben Avison's avatar
      Memory-related stuff. · d085c3c9
      Ben Avison authored
      Detail:
        * Default UpCall handler is installed when an application is paged out,
          so there is no danger of it being called by naughty people issuing
          UpCalls in the background.
        * AMBControl builds now sit on Service_MemoryMoved so that they can issue
          Message_SlotSize when the kernel has resized the application slot
          independently (eg because the memory was needed to grow a dynamic area,
          and nobody objected via Service_Memory or UpCall_MovingMemory).
        * Medusa-onwards builds no longer request Service_ValidateAddress, because
          we're not managing the free pool any more, and the code that was here
          only called an ineffectual SWI!
        * SafeChangeDynamic wasn't setting the CAO high enough to be free of big
          application slots; now it points it at itself.
        * The free pool wasn't being shrunk/grown enough on initfirsttask /
          closelast. It still can't do by more than 1GB without stiffing - bug in
          kernel?
        * Bugs in top-bit-safe changes fixed: dragbox resizing was broken, Escape
          state wasn't being restored for new tasks.
      Admin:
        Tested on high-ROM/stack, 48M-appslot Tungsten.
      
      Version 4.77. Tagged as 'Wimp-4_77'
      d085c3c9
  16. 23 Oct, 2002 1 commit
    • Ben Avison's avatar
      Given a good thrashing. · c8e139f1
      Ben Avison authored
      Detail:
        All pointers passed to the Wimp (mode selectors, menus, sprite areas,
        palettes, pollwords, validation strings, message lists, routines etc etc)
        in any of its APIs can now be anywhere within the 32-bit address range.
        In general, whenever "<= 0" was accepted as a null condition, the value
        must now be either 0 or -1. It should also be tolerant of system memory
        areas (supervisor stack and RMA) being in the top half of memory.
        Also:
        * Default next slot now a build option - Ursula builds (eg Tungsten) use
          1024K instead of 640K
        * Ursula builds no longer have a build variant in the help string
        * Autosenses ROM location
        * CR-LFs in *Configure messages replaced with LF-CRs
        * Added Iyonix resources (currently based on Morris4)
        * Morris4 sprites files have gained file_lxa, small_lxa, file_unf,
          small_unf and lo!help sprites
        * Ursula sprites files have gained lo!help sprites
        * *WimpSlot can take memory sizes in megabytes or gigabytes
      Admin:
        Tested on a "traditional" memory-mapped Tungsten.
      
      Version 4.76. Tagged as 'Wimp-4_76'
      c8e139f1
  17. 23 Mar, 2001 1 commit
    • Ben Avison's avatar
      Fixed a number of long-standing but low priority bugs in the Wimp. · 223e02a8
      Ben Avison authored
      Detail:
        * Any top-bit-set sprite area pointer in a window definition was treated
          as a null pointer, and any top-bit-set program name pointer in
          Wimp_ReportError was similarly treated as a null pointer.
        * For 24-bit window colour builds, when the Wimp drew a title bar with
          the input focus, and there were sprite icons in the previously redrawn
          window, and the most recently plotted icon sprite was unpaletted and not
          selected or inverted, then the translation table for the icon sprite (in
          the RMA) would leak. I suppose that's what I get for re-using a bit of
          dead code without fully working out why it was bypassed in the first
          place...
        * The key handling code used to be over-eager to read bytes from the
          keyboard buffer: it would attempt to read up to 6 bytes ahead to ease
          the recognition of UTF-8 character sequences. This could cause problems,
          in particular if F12 was one of those 6 bytes, then any following bytes
          would be queued for use as Wimp keypresses, rather than being left in
          the keyboard buffer for use by ShellCLI. The Wimp now analyses the first
          byte read to make a sensible estimate of how many bytes it needs to read
          ahead.
        * Select-dragging (including Select-resizing) of windows with panes used
          to soak up all the processor time. This was because when the task
          received an Open_Window_Request, it would re-open the pane in front of
          the main window, but this would cause the Wimp to believe that it had to
          re-open the main window at the front of the stack again when Wimp_Poll
          was next called. The problem has been fixed so that the Wimp now
          examines all the windows in front of the drag window to see if they have
          the pane window flag bit set, and doesn't reshuffle the windows if they
          all do. (Actually, the test is performed such that foreground windows
          in front of the drag window are also ignored.)
      Admin:
        Tested on a desktop machine.
      
      Version 4.65. Tagged as 'Wimp-4_65'
      223e02a8
  18. 20 Oct, 2000 1 commit
    • Ben Avison's avatar
      Shock horror - a new feature for the Wimp! And some housekeeping too. · d7d18819
      Ben Avison authored
      Detail:
        * Added new functionality for menu trees: submenus can now be opened by
          clicking on their parent menu item. This is particularly aimed at
          touchscreen devices, and is configurable via the new *Configure keyword
          WimpClickSubmenu.
        * Change to the menu inactivity timeout behaviour after auto-opening of
          submenus (either by hovering over the parent menu item or by the new
          click-to-open functionality): although all hover operations are still
          ignored for this period, any click operations *will* now be obeyed.
        * Corrected numerous misleading comments in the menu handling code.
        * Added some suspiciously absent ALIGNs in the *Configure keyword handlers.
        * Uses new ASCII case-forcing macros so there are now fewer warnings
          printed during assembly (and it should run faster now too).
        * Added an AREA directive so that objasm's -ABS switch is no longer needed.
        * Standardised ErrMem token across all Messages files that use English.
      Admin:
        Tested on a desktop machine.
        Requires HdrSrc 1.06.
      
      Version 4.57. Tagged as 'Wimp-4_57'
      d7d18819
  19. 15 Jun, 2000 1 commit
    • Ben Avison's avatar
      A number of bugfixes. · 45a23f3f
      Ben Avison authored
      Detail:
        * The character codes returned from the Key_Pressed event were incorrect
          when the caret was in a writeable icon with Kd in the validation string,
          and either (a) the caret was not at the start and Delete or Backspace were
          pressed, or (b) the caret was not at the end and Copy was pressed. (This
          was because, in these cases, the writeable icon code exited through
          passbacktouser rather than exitprocess; the former expects the keycode to
          be preserved, but the UTF-8 extensions to key handling were corrupting it.)
          Shift-Copy, Ctrl-Copy and Ctrl-U were not affected.
        * The various checkhandle routines now preserve flags again, as they did
          before 32-bit support was added. This is crucial in a number of spots,
          because the flags are based upon a test of handle, and checkhandle
          corrupts the handle register. This fixes at least two bugs: you can now
          send messages to menus or dialogue boxes again, and Wimp_RedrawWindow
          called without a Redraw_Window_Request is back (so for example, the
          Desktop Welcome screen now works again).
        * Fixed a bit of errant 26-bitism in the multiple-window iconise code.
      Admin:
        Tested briefly on an Ursula build.
      
      Version 4.52. Tagged as 'Wimp-4_52'
      45a23f3f
  20. 25 Apr, 2000 1 commit
    • Kevin Bracey's avatar
      Made 32-bit compatible. · 1bb3b9d0
      Kevin Bracey authored
      Detail:
        Lots of little changes throughout a lot of source.
      Admin:
        Appears to work - not stress tested with things like lots of tasks, big
        transfers, and all the other things that tend to go wrong.
      
      Version 4.47. Tagged as 'Wimp-4_47'
      1bb3b9d0
  21. 06 Apr, 2000 1 commit
  22. 29 Mar, 2000 1 commit
    • Ben Avison's avatar
      Various little changes. · 17fd99f3
      Ben Avison authored
      Detail:
        * New STB Sprites, Templates and Tools files imported, based upon the
          Lazarus UI rather than the old STB UI.
        * STB build now includes WIMPSymbol.
        * No longer attempts to use WIMPSymbol font in UTF8 builds which didn't
          register the font in ResourceFS.
        * Simplified Resources directories by assigning only a single pair of
          Messages files to each locale, rather than for each UI directory within
          each locale directory. The only code change required is to make the Wimp
          error box always use the "Continue" token for NC/STB builds, rather than
          using one of "OK" and "Continue", as with desktop builds.
      Admin:
        Not tested.
      
      Version 4.42. Tagged as 'Wimp-4_42'
      17fd99f3
  23. 09 Dec, 1998 1 commit
    • Ben Avison's avatar
      Bugfix: if a >=256-colour sprite icon is plotted, and then a shaded and/or... · b2c3268d
      Ben Avison authored
      Bugfix: if a >=256-colour sprite icon is plotted, and then a shaded and/or selected text-plus-sprite icon is plotted, where the sprite in the latter icon is unspecified (no validation string, or no 'S' command), then a SpriteOp call from within ColourTrans data aborts. This caused aborts when certain rectangles of the ImageFS options window were redrawn.
      
      Version 4.13. Not tagged
      b2c3268d
  24. 27 Nov, 1998 1 commit
    • Ben Avison's avatar
      Another bugfix to and a new feature of NC error box code: · 11eaef5f
      Ben Avison authored
      * If pointer was hidden-until-next-mouse-move, the act of confining the mouse
        to the error box window no longer causes it to be redisplayed.
      * In error boxes, the pointer and the IconHigh highlight are now initially
        positioned over the rightmost (default) button. There is one exception to
        this rule: when "Next task" is clicked in a Watchdog window, the pointer
        stays over the "Next task" button.
      
      Version 4.13. Tagged as 'Wimp-4_13'
      11eaef5f
  25. 09 Nov, 1998 1 commit
    • Ben Avison's avatar
      Optimisation to new WimpSymbol substitution code: in icons containing fonts... · af05965b
      Ben Avison authored
      Optimisation to new WimpSymbol substitution code: in icons containing fonts other than the desktop font, the substitution table is only calculated when a symbol character is encountered.
      
      Embryonic cut-n-paste support introduced (currently in desktop builds only):
        * workspace is allocated and initialised;
        * extended Wimp_GetCaretPosition implemented;
        * pushfontstring adapted to allow insertion of arbitrary control sequences in
          font strings (to allow selected text to be plotted in inverted colours).
      Inverted, unfilled text icons now work properly again in <256-colour modes.
      Reworked NC error box code: see Doc.IconHigh.
      
      Version 4.11. Tagged as 'Wimp-4_11'
      af05965b
  26. 29 Oct, 1998 1 commit
    • Ben Avison's avatar
      my_StringBBox rewritten - effects are: · f33646b8
      Ben Avison authored
      * Deprecated Font SWIs no longer used
      * Height of UTF-8 strings now calculated correctly
      * Fancy fonts in icons are now aligned the same as outline desktop-font icons
      * Text rubout boxes for icons with text above the sprite are correctly sized
      
      Lazy WimpSymbol subsitution implemented: characters are only substituted if
      they are not already present in the font. For the first time, substitution
      now works in UTF-8 text - but for the proper Unicode positions of the
      relevant symbols, instead of usurping undefined positions (as in other
      alphabets).
      
      Version 4.10. Tagged as 'Wimp-4_10'
      f33646b8
  27. 23 Oct, 1998 1 commit
    • Ben Avison's avatar
      Adapted assembly process so that the choice of Options file (previously based... · 26369fa5
      Ben Avison authored
      Adapted assembly process so that the choice of Options file (previously based purely on the "System" variable) can be overridden by passing "OPTIONS=foo" as an argument to either MkRom, or to amu/amu_machine directly, or indirectly, by specifying it in the components file for a build. To accomplish this, it was necessary to switch from using aasm to objasm - hence the large number of source files affected in this commit.
      
      Version 4.09. Tagged as 'Wimp-4_09'
      26369fa5
  28. 21 Oct, 1998 1 commit
    • Ben Avison's avatar
      Service_SwitchingOutputToSprite code optimised: graphics parameters are now... · 11711a72
      Ben Avison authored
      Service_SwitchingOutputToSprite code optimised: graphics parameters are now only cached when making the first Wimp_PlotIcon call while output is switched to a sprite, and upon return to screen output after such an occurrence.
      
      All error box templates featuring "border" icons updated to have button type
      0 (never). This prevents IconHigh from mistakenly allowing them to be selected.
      
      Version 4.07. Tagged as 'Wimp-4_07'
      11711a72
  29. 20 Oct, 1998 1 commit
    • Ben Avison's avatar
      UTF-8 support from previous version switched in; additional alphabet-... · 2c759475
      Ben Avison authored
      UTF-8 support from previous version switched in; additional alphabet- conditional support added as follows:
      
      * Correctly converts character index returned from Font_FindCaret into byte
        index into raw string.
      * Left-arrow, right-arrow, delete-left and delete-right now act as far as
        the next character boundary, instead of to the next byte.
      * Menu item text justification works again (it relies on overwriting spaces
        with hard space characters, which are two-byte characters in UTF-8).
      * General key handling code has been rewritten. The Wimp now has three
        internal key input buffers - one each for taking keyboard-generated,
        task-generated, and function-key-generated strings. Each input buffer is
        processed in chunks of one character, rather than one byte; malformed
        UTF-8 characters are rejected, so tasks don't have to worry about them
        (simplifying their character-handling code). There is also a key output
        buffer, to ensure that (UTF-8) sequences of Key_Pressed events are not
        broken up.
      * As a result of the above, multiple calls to Wimp_ProcessKey are now
        possible between calls to Wimp_Poll. Previously, this resulted in bytes
        getting jumbled up - making it useless for input of UTF-8 characters.
      * Multi-byte characters are inserted into writeable icons in one go, so you
        don't see a brief flicker of the "malformed character" symbol while the
        initial bytes are being inserted.
      * Multi-byte characters that don't entirely fit in a writeable icon buffer
        are not inserted at all.
      * A new validation string command ("U") can limit the contents of a
        writeable by number of characters, instead of bytes. This will hide the
        character sizes from the user interface.
      * Allowable characters (validation string command "A") now works on Unicode
        characters and character ranges.
      * Various other minor bugs are fixed (Wimp_ProcessKey 13 can activate a
        writeable menu item, Shift-arrow keys are always consistent in firing off
        Key_Pressed events, etc.)
      * Password icons supported: one symbol is displayed for each character
        (instead of for each byte); the display character (validation string
        command "D") can be any UTF-8 character; correctly displays the caret
        after set-caret-by-index calls, even though characters in the processed
        string are different width to those in the raw string, in password icons.
      
      Other changes:
      * The border around NC-style error boxes is resized when the error window
        is grown or shrunk.
      * Messages, CmdHelp and Template files made consistent across resource
        directories, including support for all Ursula features.
      * ShrinkableAreas turned back on in System=RCA builds.
      * User interface features of desktop OS builds standardised.
      
      Version 4.06. Tagged as 'Wimp-4_06'
      2c759475
  30. 30 Sep, 1998 1 commit
    • Kevin Bracey's avatar
      Spinner branch merged. · 818104e1
      Kevin Bracey authored
      Changed to use srccommit.
      All conditionals on "Version" removed.
      
      Version 4.01. Tagged as 'Wimp-4_01'
      818104e1
  31. 18 Sep, 1998 1 commit
  32. 20 Jun, 1997 1 commit
  33. 07 May, 1997 1 commit
  34. 13 Jan, 1997 1 commit
  35. 05 Nov, 1996 1 commit