# Inside canvasGUI 3

**URL:** <https://discourse.processing.org/t/inside-canvasgui-3/48968>\
**Category:** Development\
**Created:** [July 7, 2026, 8:19am UTC](https://discourse.processing.org/t/inside-canvasgui-3/48968 "2026-07-07T08:19:30Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![quark](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/quark/32/26_2.png) [@quark](https://discourse.processing.org/u/quark)\
**Post date:** [July 7, 2026, 8:19am UTC](https://discourse.processing.org/t/inside-canvasgui-3/48968/1 "2026-07-07T08:19:30Z")

</div>

To encourage programmers to experiment with canvasGUI and extend or customize its functionality I have previously posted discussions on how to create user defined controls.  
[canvasGUI 3 : user-defined controls (1)](https://discourse.processing.org/t/canvasgui-3-user-defined-controls-1/48529)  
[canvasGUI 3 : user-defined controls (2)](https://discourse.processing.org/t/canvasgui-3-user-defined-controls-2/48768)

To supplement these I have created a guide that describes the inner workings of canvasGUI. Hopefully you will find this guide interesting even if you don’t use the information directly.

[Inside canvasGUI 3](http://www.lagers.org.uk/canvasgui/pdf_guides/Inside%20canvasGUI.pdf)
