1. 09 May, 2020 4 commits
    • Jeffrey Lee's avatar
      Add "extended scroll request" setting · eb5abd36
      Jeffrey Lee authored
      This adds an extra option to the window properties / window flags
      window, to control whether extended scroll requests are delivered to the
      window work area. Under the hood, this just toggles bit 1 of the window
      extra flags byte.
      Version 1.14. Tagged as 'WinEdit-1_14'
    • Jeffrey Lee's avatar
      Fix templates being corrupted on save · 32770c2a
      Jeffrey Lee authored
      Make sure that icons with zero-length validation strings are saved with
      a string offset of -1.
      Now I can add an icon to a window, and save it. Amazing!
    • Jeffrey Lee's avatar
      Icon renumbering fix · 202618df
      Jeffrey Lee authored
      When renumbering a list of icons, if the first few icons are already in
      the correct position then:
      1. The first icon will get swapped with itself, causing `where` to be
      incremented from 0 to 1.
      2. `i` will be set to `where`
      3. `i` will get incremented by the `for` loop
      `i` will now have the value 2, causing icon 1 to be skipped. This will
      then cause icon 2 to get swapped with icon 1, and then icon 3 will get
      swapped with icon 2 (the original icon 1), and then icon 4 will get
      swapped with icon 3 (the original icon 1), and so on, shuffling icon 1
      all the way to the end of the group, and needlessly disrupting the
      numbering of all the other icons.
      Fix by setting `i` to `where-1`, to take into account the increment that
      the `for` loop is about to apply.
      I'm not sure if the old logic would have resulted in broken/incomplete
      sorting; mainly I'm aiming to fix the annoying behaviour where adding a
      new icon to a window (which already had the icons correctly sorted)
      would needlessly scramble the order of 90% of the icons.
      The code's still a bit nasty (it should really shuffle the icons instead
      of swap them), and it'll still want to shuffle everything if you add a
      group box, but every little bit helps.
    • Jeffrey Lee's avatar
      template_read_icon_name fix · c1196818
      Jeffrey Lee authored
      Icons with no name can have a validation string of the form "N5//". This
      passes all of the sanity checks for whether an icon name is present, but
      then fails at the sscanf stage, with nothing being written to the output
      buffer (not even a null terminator). If the output buffer hadn't been
      zero-initialised by the caller then this would most likely result in
      template_read_icon_name falsely claiming that a name is present.
      Fixes garbled interactive help text in the "window properties" window
      when hovering over the different labels ("Gadgets:", etc.)
  2. 11 Aug, 2018 1 commit
    • Robert Sprowson's avatar
      Fix NULL pointer assignment, realloc mistake · 71066a48
      Robert Sprowson authored
      dragdrop.c: In dragdrop_scroll, don't write 0 to address 0 when 'removeptr' is NULL, as it often is.
      registry.c: If realloc() fails, don't lose track of 'list' and leak the memory.
      Found by cpp check static analysis.
      dragdrop.c: Squash a couple of C99 prototype warnings.
      Version 1.13. Tagged as 'WinEdit-1_13'
  3. 22 Aug, 2017 1 commit
    • Robert Sprowson's avatar
      Fix for NULL pointer dereference opening icon properties · 20bf3810
      Robert Sprowson authored
      WinEdit keeps a track of the previous caret position, so that as windows (within itself) are closed the caret can be put back in the previous window.
      However, when there's no previous caret owner (ie. it's the first properties window opened) lastwindow is NULL, and an attempt to read from a window structure in zero page is made.
      props.c: copy the NULL check from a couple of lines higher up in the same function.
      Makefile: put the objects into OBJS so a debug build can be made.
      Version 1.12. Tagged as 'WinEdit-1_12'
  4. 26 Oct, 2015 1 commit
    • Robert Sprowson's avatar
      Fix for 2x NULL pointer dereferences · 305ca7eb
      Robert Sprowson authored
        The claimantstypes was never being set, so when trying to negotiate the most preferred type, it was just scanning through zero page
        When generating a header, document_create() was being called before DocProto was loaded, so ended up copying a 92 byte block of zero page into the window definition
        Fixed trivial warning for Wimp_CreateMenu args
      While there look to be some more bugs relating to the properties dialogues in the GUI, these at least allow ROM builds using the header export facility to work on a ROM with zero page relocation.
      Version 1.11. Tagged as 'WinEdit-1_11'
  5. 10 Sep, 2015 1 commit
  6. 24 Jul, 2014 1 commit
    • Robert Sprowson's avatar
      Makefile recreated from fragments · 00e649c3
      Robert Sprowson authored
      Get version number from messages file.
      Use NoMem global message to say there isn't enough memory.
      Swap key shortcut to match ResEd.
      Version 1.10. Tagged as 'WinEdit-1_10'
  7. 30 May, 2012 1 commit
    • Robert Sprowson's avatar
      Delete local copy of !Edit icon from this application · a7963441
      Robert Sprowson authored
      Every time I opened a directory containing !WinEdit out of the corner of my eye I thought I saw something on the iconbar change - turns out !WinEdit had a copy of an old !Edit icon and was iconsprites-ing it.
      Version 1.09. Tagged as 'WinEdit-1_09'
  8. 26 Nov, 2011 1 commit
    • Robert Sprowson's avatar
      Remove local SWI call code. · f64d7fde
      Robert Sprowson authored
      Mass search and replace of swi() replaced with _swix() or _swi() as appropriate.
      Removed '1.00' version numbers from !Run/!Boot.
      Fix a few compiler warnings, use global filetype definitions.
      Version 1.08. Tagged as 'WinEdit-1_08'
  9. 17 Mar, 2011 1 commit
  10. 16 Dec, 2003 1 commit
  11. 10 Dec, 2003 1 commit