The latest version of this document can be found at www.broad.ology.org.uk/amiga/sketchblock/previouschanges.html
Major Changes In Previous Versions Of SketchBlock
Major Changes in 2.6
- Palette Windows
ARExx commands for opening and close the palette window added. Palette window now automatically opens when loading a palette.
- 'Julia' transform.
Generate Julia set based fractal images. See arexx documentation for details. No GUI with this release but an example script is included.
- GUI tweeks
Some small tweaks to the GUI, offereing more flexibilty when creating new layers and project.
- Extended the scale project and layers to add half / double quick buttons
- Some more bug fixes
See the changelog for details.
Major Changes In 2.4
- Paths Saving And Loading
The paths defined in a project are now saved withing the projects file. Also paths
ca be individualy saved and loaded.
- Experimental Path Editor
Paths can now be created and edited with the path editor. Started from the new Paths menus.
- ClipBrush
The clipboard contents can now be used as a brush. The ClipBrush is updated everytime an image is
copied into the clipboard.
- Brush Attributes Editor
A new window (opened via the edit gadget next to the brush name) allows modification
of the attributes of the current brush. This is in addition to the exiting ',' and '.' keys for increasing and decreasing brush size.
- Colour and Alpha Channel Locking
It's now possible to lock the alpha and colour channels of a Sketch, giving
greater control over the image creation process.
- Fixed the graphical glitches in the brush display when painting
When the brush is set to solid or outline, small glitches, bits of left behind
brush so to speak were being created, finally tracked down and fixed.
- Improved smoothnes for algorithmic brushes.
- Extended various Arexx commands to support path editing
- Some more bug fixes
See the changelog for details.
Major Changes In 2.3
- Selection Masks
Some optimisation of the slection process, speed up of up to 30%.
- Transform Plugin GUIs
Added ProAction GUIs for the GradientFill and RadialFill plugins.
- Macro Recording
Completely reworked macro recording. Can now output Rexx or Python code. Can output Wedge events, can output timestamps as comments in the code, also notes external scripts called in the comments.
- Internal text creation.
Text creation no longer requires an external helper command,the freetype code
has been moved inot the main executable. Resulting in substantial speedups.
The maketext.rexx script has been adapted (and much simplified) to take
advantage of this.
- Improved antialiasing of paths fills
By scaning in both the x and y axes and combining the results smooth
antiailising of path fills is now performed, without the need for oversampling.
This contributes to further improvments in the rendering of text.
- Splash screen on startup
A splash screen with loading progress bar is displayed at program startup.
- Some bug fixes
See the changelog for details.
Major Changes In 2.2
- Selection Masks
It's now possible to mark areas of the image as selected and use these areas as mask for painting, etc.
There four new tools to assist with this.
- Rectangle Select - drag with mouse, press space bar to select.
- Ellipse Select - drag with mouse, press space bar to select.
- Flood Select
- Colour Select
It's also possible to create a selection mask from the alpha channel of a layer.
- Layer Thumbnails
There now a thumbnail in the layers list.
- Transform Plugins
Pixel transforms are now true plugins. Also added SaturationAdjust and GradientFill, RadialFill, and Ripples filters.
- New Toolbar Images
Martin "Mason" Mertz has contributed some great new toolbar images and a splash logo.
Thanks Mason!
- Macro Recording
All (well nearly all) actions can be recorded into a macro, which can then be run or edited as needed.
- Some bug fixes
See the changelog for details.
Major Changes In 2.1
- Change from a ARGB32bit to ARGBfloat colour representation
The internal colour data for SketchBlock images etc is now stored in a high dydnamic range format, ustilise floatng point values for each channel. This gives major benefits in terms of speed (15% increase) and the subtlelty of shading effects
handleing HDR iages etc. at the expense of a higher memory footprint. The old 32bit format files can be loaded in the SketchBlock 2.1 but files saved will be in the new floating point format and so will not be backwards compatable.
- Colour Selection Window
A new more advance colour selection window which allows easy seection by HSV or RGB values.
- Transform Filters
Transform filters have been interoduced which allow processing of images in mamny ways. Initialy including , rotate, flip, gamma, rgb adjust. contrast etc.
- Scale / Resize Layer Script
A new proaction based script for scaling cropping or extending layer sizes
- Rotate Script
A ProAction script to manage rotaing layesr using the "Rotate" transformfunction.
Major Changes In 1.9
- Move Tool
A new tool which allows moving of layers either by dragging with the mouse or by enter the position into the settings gadgets.
- Extension to the Paint Tool
The Paint tool now supports random jitter of the parameters, position, pressure, and scaling, further the amount of jitter can be pressure sensitive. This enables a wide range of effects from slight perturbations to to scattering effects.
- Much more advance Resize Image Script
The resize image script, called from the Image menu by default, offers a greate rangeof options, allowing cropping scaleing, discarding of layer no longer inside the canvas etc.
- Prefs Editor Window
The new prefs editor allows easy creation of custom keyboard shortcuts and menu items, as well as setting preferences relating to tools windows etc.
- About Window
Major Changes In 1.8
- Layer Blend Modes
As well as normal blending layers can now be combined with modes such as "Multiply", "Divide" etc.
The list of modes supported is currently:
- Normal
- Multiply
- Divide
- Add
- Subtract
- Difference
- Hue
- Saturation
- Color
- Value
- Paint Tool Blend Modes
All the modes above can be applied with the Paint Tool.
- Extended Path Support Incuding Splines
Paths introduce in 1.7 can now consist of PolySplines. The fill alogorthm has been improved (with antialiasing in the horizontal axis).
The experimental text tool has been adapted to use the new splines and creates better quality text as a result.
- ARexx port based input wedges (plugins)
As an alternative to the existing input wedge scripst, scripts can now declare an ARexx port to receive input data. This makes maintaining state much easier and allows far more complex plugins with simpler code.
Two new plugins have been written
- Curves: Uses a single open path to create and draw a wide range of curves.
- Filled Boxes: Another advance script using a cosed polyspline to draw filled boxes with rounded corners. Many paremeters are variable, resulting in a wide range of box styles.
Major Changes In 1.7
- New Tool Plugin: Smooth
Smooth applies a gaussian blur to the are under the brush. A more subtle effect than smudge
- Convolution
Convoultion matricies maybe applied to layers. Some example scripts and
matricies are included.
- Completely definable keyboard shortcuts
Any command may be added to key (with modifiers). The commands are defined
in the prefs.xml file.
eg
- 'P': activate paint tool
- 'E': activate erase tool
- Support for paths
Path objects can now be added to projects. A path consists of a list of polygons,
both open abd closed. Paths can currently be stroked with the current brush or filled.
The implmentation is still experimental and the API may well change, especialy once
polygons are extended to support spline points.
- Experimental Text Tool
A script accessable from the Layers menu, this creates paths from truetype and type1 fonts.
Splines are emulated with multiple polygon points, results are acceptable
at higher resolutions / larger fonts sizes. In fact the logo / screenshot for this release was generated with this script, and some convolution.
- Postscript output
"Print" to postscript or eps. The wrapper script also offers the option to convert to PDF.
Access from the Project / PSPrint menu item.
- Multi frame or Anim brushes
Bitmap brushes can now have multiple frames, which can be drawn sequantially, randomely or directionally.
A number of new example brush are supplied. Includeing:
- Pencil_ABR (random)
- Pencil_Small_ABR (random)
- Hoops (directional)
- Arrow (directional)
- PinMan (sequential)
- Extended export using PIL
Exporting the project to a wider range of common formats is now possible via PIL. (Python Imaging Library)
- Proaction based support scripts
Many of the supports scripts have been replaced with ProAction based ones (both python and ARexx). These offer a greater range of options.
- Bug fixes and other minor stuff
Major Chnages In 1.6
Bug fix update.
Major Changes In 1.5
- New Tool Plugin: Smudge
A new full blown plugin allowing smudging of existing painted marks. Plus two presets demonstrating it's use.
- Additional Layer Manipulation Commands
- Project Manipulation Commands
- Custom Mouse Pointers
Script and plugins can set custom mouse pointers to give better feedback on user input.
Arexx commands for adding and changing pointers.
- New Wedges
Three new standard wedge scripts which take advantage of the above functions to add ScaleLayer, MoveLayer and CopyBox (copies a box shaped section of a layer to a newlayer).
functionailty to the GUI. Access via wedges menu by default.
- Clipboard Support
Layers can now be copied to and from the system clipboard.
- New Preferences Options
The 'staytop' / 'toolbox' status of the tools and layers window can now be set via the main sketchprefs file.
- Gadget Help
Gadgets in the layers and tool window now gave gadget help text to make it easier to determine thier use. Gadget help may be enable or disabled via the GADGETHELP Arexx command.
NB. If the layers and tools window are set to be toolbox windows then they will never become active, and the gadget help strings will never show.
- Improved Undo/Redo System
There is now a "Master Undo Redo" control, which allows undoing of all actions in the order they were executed, as well as layer / project undo buttons which allow undoing og actions specific to that layer.
This allows you to edit one layer, then edit another, then if you need to, and undo changes to the first layer without needing to undo changes to the second layer first, as you would have to do if there was only one undo / redo control.
Scripts can now combine several actions into one undo / redo action, by calling the FixUndoLevel and ReleaseUndoLevel commands. This is demonstrated by the new ScaleImageWithContents.rexx script, accessable from the Image menu.
- Extended scripting in Menus
As wellas Arexx commands and scripts in the menu definitions, it's now possible to add shell scripts by prefixing the script name with '@'.
The '@' is removed and the command executing using SystemTags() rather than ARexx and so any scripting language or even binary can be called.
See the zoom.py for the new Zoom menu as an example.
Major Changes In 1.4
- Many additional layer manipulation functions including:
- The Layers List has a icon to display whether or not a layer is transparent or not
- Input Wedges
Scripts can be defined and set to listen to input events enabling interractive functionality to be added without need to write full plugins.
Two examples, Rexx/Wedges/wedge_lines.rexx and Rexx/Wedges/wedge_boxes.rexx are provided. these add the ability to draw lines and boxes....
- Tool Presets have been extended an now support switching tool, and the creation script supports the erase tool.
- Many additional ARexx Commands to support the above features.
- New default menus
Major Changes In 1.3
- Bitmap Brushes
As well as the default round brush, SketchBlock now supports the creation and use of bitmap brushes,
both colour brushes (which use their own colours), and alpha brushes (which apply the currently selected paint colours).
The latter is usually the more useful.
- Brushes Section In 'Layers Window'
A new set of buttons show small previews of the currently available brushes.
- A Selection Of Ready Made Bitmap Brushes
- Create Tool Presets
Tool presets in the form of short ARexx scripts can automatically be created via an ARExx script.
The presets created are automatically added to the Presets Menu and are available after restarting SketchBlock.
(Currently only the paint tool is supported).
- Further Extentions to the ARexx command set
Quite a few new commands, and also the ability to pass commands to the tools via the COMMANDTOOL top level command.
(This allows the presets mentioned above)
- Startup And Exit Scripts
Custom Startup and exit scripts can be setup to handle things like snapshoting on exit, loading default projects etc.
- Extended Documentation
Clearly a lot more to do here, but the docs have been fleshed out abit.
- Mny Bug Fixes and Samller Tweaks
Major Changes in 1.2