1. 24 Feb, 2019 1 commit
    • ROOL's avatar
      Sprite copy, Draw paste fixes · a90d48bb
      ROOL authored
      Detail:
        Correction to Sprite collation to the clipboard to get the sprite header right.
        On paste, if there's already an object selected replace it with the pasted item.
      Admin:
        Submission for Clipboard Support bounty.
      
      Version 1.32. Tagged as 'Draw-1_32'
      a90d48bb
  2. 09 Feb, 2019 1 commit
    • ROOL's avatar
      Update to use clipboard cut & paste · 3869741b
      ROOL authored
      Detail:
        Initial implementation of the cut-and-paste aspects of 1309,419/FS revision G.
        The former model (limited to only being able copy locally within a document) now uses RAM (or file based fallback) transfer of draw objects (DrawFile/Sprite/JPEG/Text).
      Admin:
        Submission for Clipboard Support bounty.
      
      Version 1.31. Tagged as 'Draw-1_31'
      3869741b
  3. 27 Oct, 2016 1 commit
    • Robert Sprowson's avatar
      Edit UTF-8 text in text entry with backspace correctly · 15e2c31d
      Robert Sprowson authored
      On starting a new string using the text entry tool, cache the current alphabet, then when backspace is pressed handle deletes properly when the alphabet is UTF-8 by skipping over continuation marks until a non continuation mark is found.
      The backspace code can afford to be simplistic because any invalid UTF-8 sequences already in the file when it is opened will end up (via Ctrl-E) in a Wimp writeable, which is handled by the Wimp's robust code. Only newly created strings are able to have backspace applied, so by definition they were entered just moments earlier, and so reasonable to assume they're valid UTF-8.
      
      Having entered a string, get the bounding box right by calling Font_ScanString rather than manually walking the string with Font_CharBBox (Font_ScanString was already being used for transformed text, so rotated bounding boxes were right). Now the two are common, make a font_scanstring() function to handle both.
      
      This could be further simplified by just editing existing strings in place, see ticket #426.
      
      Version 1.30. Tagged as 'Draw-1_30'
      15e2c31d
  4. 02 May, 2016 1 commit
    • Robert Sprowson's avatar
      Static analysis fixups · 61f4df80
      Robert Sprowson authored
      Line 114:
      Remove the potential divide by zero by considering that the only way to get xspace=0 is when yspace <= 1, in which case it's a unity grid.
      Line 295:
      Add some brackets to make the expression unambiguous. Fortunately with Norcroft ((thing & 1) == 1) results in the same output as (thing & (1 == 1)) in this situation.
      From a tip off in https://www.riscosopen.org/forum/forums/4/topics/3990
      
      Version 1.29. Tagged as 'Draw-1_29'
      61f4df80
  5. 04 Dec, 2015 1 commit
    • Robert Sprowson's avatar
      Fix for abort when dragging an unknown filetype to Draw, and a bogus error message · 2ab1e96d
      Robert Sprowson authored
      Various places in Draw were making an error block (via makmsg or retmsg macros) from a cast pointer using the msg part of RISC_OSLib. However, as RISC_OSLib caches the messages file and returns direct pointers to it, the resulting error blocks would often not be word aligned, leading to an abort when the Wimp tries to copy it for the Wimp_ReportError.
      In turn, the abort would be reported as unhelpful "wimpt1" message because the signal handler was looking it up in the application messages, not the default RISC_OSLib messages.
      Draw.c:
      New function top copy the msg to a word aligned static struct.
      Fix signal handler to use msgs_default_control_block() so that "wimpt1" can be found.
      Draw.h/others:
      Replace makmsg and retmsg with calls to the new aligning function.
      
      Tested by dragging a GIF and a BMP to Draw, and it no longer aborts.
      
      Version 1.28. Tagged as 'Draw-1_28'
      2ab1e96d
  6. 24 Mar, 2015 1 commit
    • Jeffrey Lee's avatar
      Fix rendering in 4K colour modes · 5e561b45
      Jeffrey Lee authored
      Detail:
        c/DrawDispl - displ_gcol() function was failing to do anything in 4K colour modes, resulting in selection boxes, grid marks, etc. appearing in arbitrary colours
      Admin:
        Tested on Pandaboard
      
      
      Version 1.27. Tagged as 'Draw-1_27'
      5e561b45
  7. 03 Feb, 2015 1 commit
  8. 09 Aug, 2014 1 commit
    • Robert Sprowson's avatar
      Pop to top a draw file if already open rather than loading again · b82bc503
      Robert Sprowson authored
      As for !Edit and the filer, when asked to open the same thing a second time, just re-present the one already in memory rather than opening a second time.
      We borrow the logic from !Edit - the (uncanonicalised) filename must be the same, unmodified, with the same datestamp. If all these are true just pop the existing window (or newest of the views when multiple views exist) to the top.
      
      Draw.c:
      Change the boolean expression at line 2191. While previously correct (not wimp_MDATALOAD does include wimp_MDATAOPEN) it subsequently relied on load_file to skip wimp_MDATASAVE.
      DrawFileIO.c:
      Add check of load/exec/modified/filename. Defer creating a new diag until later on to avoid annoying screen flicker when disposing of the diag (similarly for error cases).
      Fix confusion returning FALSE as a pointer.
      
      Version 1.26. Tagged as 'Draw-1_26'
      b82bc503
  9. 31 Jul, 2014 1 commit
    • Robert Sprowson's avatar
      Build fix · 11073f0a
      Robert Sprowson authored
      Message_SetPrinter renamed.
      
      Version 1.25. Tagged as 'Draw-1_25'
      11073f0a
  10. 22 Jul, 2013 1 commit
    • Robert Sprowson's avatar
      Add support for background blended text and text areas · 290b3025
      Robert Sprowson authored
      The background colour for text can now be set to "none" in the colour picker to request Draw to blend to background, rather than a fixed colour.
      In the saved file 0xFFFFFFFF, or -1, is used (same as foreground colour transparent) which would render gracefully as a white background on older versions of !Draw.
      For text areas the \B and \C commands can use -1 -1 -1 for the RGB components to denote transparency (3 arguments are defined as required in the text area spec, even though only 1 would really be needed).
      When text in a text area has a foreground colour of 'transparent' no text is plotted, this is to be consistent with the behaviour for ordinary text.
      Reordered the 'Enter' submenu to have the tools listed in the same order that they appear in the tools pane.
      Moved MIN/MAX macros into common header.
      Draw will only offer this functionality if an appropriate background blending Font Manager is in use, this is required as !Draw appears inside RO350Hook for machines that predate the functionality.
      
      Version 1.24. Tagged as 'Draw-1_24'
      290b3025
  11. 25 Sep, 2012 1 commit
    • Robert Sprowson's avatar
      Style guide ammendment · ef9162a7
      Robert Sprowson authored
      While the !Draw has never been famed for its adherence this brings the delete operation (^K ref Style Guide p38, !ResEd, and the drag & drop protocol specification) into line.
      
      
      Version 1.23. Tagged as 'Draw-1_23'
      ef9162a7
  12. 11 Aug, 2012 2 commits
  13. 09 Aug, 2012 1 commit
    • Robert Sprowson's avatar
      Adjust disc !Run sloppy RMEnsures · c01d3f6b
      Robert Sprowson authored
      Was using UtilityModule 3.60 as a sloppy check for JPEG rendering capability.
      Changed to 3.50 (because deep colour sprite support is unconditional) but added a check for SpriteExtend instead.
      Retagged as Draw-1_20.
      c01d3f6b
  14. 14 Jan, 2012 1 commit
  15. 10 Jul, 2011 1 commit
    • Robert Sprowson's avatar
      Fix sprite plotting with SpriteExtend 1.43 and later. · e9196548
      Robert Sprowson authored
      In numerous places where a sprite area isn't strictly necessary !Draw was passing in a bogus area address of 0xFF, this is now rejected by SpriteExtend.
      Changed to use define UNUSED_SA and set this to an address which is at least in the application slot and word aligned.
      Tested briefly - sprites now appear again.
      
      Version 1.19. Tagged as 'Draw-1_19'
      e9196548
  16. 30 May, 2011 2 commits
  17. 14 Apr, 2011 1 commit
  18. 06 Dec, 2010 3 commits
  19. 01 Oct, 2009 1 commit
  20. 31 May, 2009 1 commit
    • Peter Naulls's avatar
      Normalise Include paths · 5c0d6110
      Peter Naulls authored
      Detail:
       Correct caps on #include
      Admin:
       Part of path changes in all C modules in Apps
      
      Version 1.14. Not tagged
      5c0d6110
  21. 29 May, 2009 1 commit
  22. 22 Jan, 2007 1 commit
    • Steve Revill's avatar
      Minor tweaks to build and install correctly. · 7fac4985
      Steve Revill authored
      Detail:
        Some changes were required in order for this component to build and install
        correctly. These changes are required for the ROOL 'Disc' build.
      Admin:
        Tested in Iyonix 'Disc' build using ROOL 'BuildEnv' build environment
      
      Version 1.14. Tagged as 'Draw-1_14'
      7fac4985
  23. 09 Nov, 2004 1 commit
  24. 02 Dec, 2003 1 commit
  25. 17 Jan, 2003 1 commit
  26. 13 Jan, 2003 3 commits
  27. 20 Apr, 2000 1 commit
  28. 13 May, 1997 1 commit
  29. 16 Dec, 1996 1 commit
  30. 05 Nov, 1996 1 commit