<div><div dir="auto" style="font-size:1rem;word-spacing:1px;border-color:rgb(49,49,49);color:rgb(49,49,49)">(Sent again without the images)</div><div dir="auto" style="font-size:1rem;word-spacing:1px;border-color:rgb(49,49,49);color:rgb(49,49,49)"><br></div><div dir="auto" style="font-size:1rem;word-spacing:1px;border-color:rgb(49,49,49);color:rgb(49,49,49)">Fantastic news, Stephen! It’s wonderful to have Siren in Cuis! I’ll try the preconfigured image.</div><div dir="auto" style="font-size:1rem;word-spacing:1px;border-color:rgb(49,49,49);color:rgb(49,49,49)">Regarding DisplayLists, I think it won’t be hard to port to Morphic. Essentially the displayOn: aGraphicsContect methods correspond to Morphic’s drawOn: aCanvas. A first step to get it running would be a create a single Morph to serve as view for DisplayLists, and maybe in a second iteration it would make sense to make all display objects be actual morphs as Hilaire says.</div></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 25 Nov 2022 at 23:11 Stephen Travis Pope via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div style="line-break:after-white-space" dir="auto"><div><span style="font-family:TimesNewRomanPSMT"><br></span></div><span style="font-family:TimesNewRomanPSMT">Hello colleagues,</span><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">The core of the Siren music/audio package is running on Cuis, and I'm proceeding to port the I/O classes and looking for some help with the graphics back-end.</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"><div style="font-family:TimesNewRomanPSMT">The core of Siren (MusicMagnitudes, Events and EventList, EventGenerators and EventModifiers, PitchClasses and Scales, Functions, etc.) are all working, but with no real-time I/O (MIDI and OSC support in-progress).</div><div style="font-family:TimesNewRomanPSMT"><br></div></div><div style="font-family:TimesNewRomanPSMT">I made a pre-configured image as well as a build script (no packaging yet); this image also includes my GUI tweaks (esp. left-side scroll bars), 6-paned browser and workbook apps (see screen shot below).</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"><div style="font-family:TimesNewRomanPSMT"><From the Workbook doc></div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">The Siren graphical applications are based on the simple display list graphics framework in the categories MusicUI-DisplayLists and MusicUI-DisplayListViews. This package includes display items such as lines, polygons, curves, text items, and images, hierarchical display lists, and display list views, editors, and controllers. The display list view/controller/editor are MVC components for viewing and manipulating display lists. Simple examples of the display list framework are given below.</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">There are several layouts for the zoom/scroll bars; in the default layout, the bars are grouped on the left and bottom of the window. The zoom bars are gray sliders on the outside, and the scroll bars are the usual color and look, and are set inside of the zoom bars. Take a look at the following and use the zoom/scroll bars.</div><div style="font-family:TimesNewRomanPSMT"><span style="white-space:pre-wrap;font-family:TimesNewRomanPSMT">       </span>[Siren.DisplayList rectangleExample]</div></div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"><div style="font-family:TimesNewRomanPSMT"></From the Workbook doc></div><div style="font-family:TimesNewRomanPSMT"><br></div></div><div style="font-family:TimesNewRomanPSMT">The basic display items all have VisualWorks-style display methods, such as,</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue">!DisplayLine methodsFor: 'displaying'!</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue">displayOn: aGraphicsContext</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue"> </span>"Display a line between startPoint and endPoint."</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><br></b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue">"<span style="white-space:pre-wrap;font-family:HelveticaNeue">       </span>Transcript show: start printString, '<span style="white-space:pre-wrap;font-family:HelveticaNeue">     </span>', end printString; cr."</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue">   </span>color == nil</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue">                </span>ifFalse: [aGraphicsContext paint: color].</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue">   </span>width == nil</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue">                </span>ifFalse: [aGraphicsContext lineWidth: width].</b></font></div><div style="font-family:TimesNewRomanPSMT"><font face="HelveticaNeue" style="font-size:14px;font-family:HelveticaNeue;color:rgb(0,0,0)"><b style="font-family:HelveticaNeue"><span style="white-space:pre-wrap;font-family:HelveticaNeue">       </span>aGraphicsContext displayLineFrom: offset to: (offset + extent)! !</b></font></div></div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">and these need to be ported to the equivalent versions in the VectorEngineWithPluginWholePixel world.</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Q: Is there a Morphic display-list view?  In Siren, most of the GUIs are based on a simple display-list view with 2-D scrolling and zooming (i.e., 4 “scroll” bars) as in these examples,</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Hierarchical display list with random rects and texts</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"></div>…<br><div style="font-family:TimesNewRomanPSMT"></div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Large random display list with different look-and-feel and zoom bar layout</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"></div>…</div></blockquote><div dir="auto"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div style="line-break:after-white-space" dir="auto"><br><div style="font-family:TimesNewRomanPSMT">Music notation view with Motif-like L&F</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"></div>…</div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div style="line-break:after-white-space" dir="auto"><br><div style="font-family:TimesNewRomanPSMT">The pre-build image looks like this, with build-file on the left, 6-pane browsers in the middle and workbook view on the right.</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"></div>…<br><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Note that the other Siren source files are still in VisualWorks format (using namespaces), so they require non-trivial editing to be filed in.  See the build script in Siren_Cuis_Test/FileIns/<a href="http://build-siren.st/" target="_blank" style="font-family:TimesNewRomanPSMT">build-siren.st</a> </div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Does anyone want to try porting the display item display methods and making a display-list view?</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">There’s a ZIP file with the sources, build-script and pre-configured image in</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT"><span style="white-space:pre-wrap;font-family:TimesNewRomanPSMT">       </span><a href="http://fastlabinc.com/Siren/Siren_Cuis_Test.zip" target="_blank" style="font-family:TimesNewRomanPSMT">http://fastlabinc.com/Siren/Siren_Cuis_Test.zip</a></div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Questions/comments solicited…</div><div style="font-family:TimesNewRomanPSMT"><br></div><div style="font-family:TimesNewRomanPSMT">Stephen Pope</div><br><div>
<br style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;float:none;display:inline!important;color:rgb(0,0,0)">--------</span><br style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;color:rgb(0,0,0);font-family:HelveticaNeue;font-size:12px"><br style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;color:rgb(0,0,0);font-family:HelveticaNeue;font-size:12px"><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;float:none;display:inline!important;color:rgb(0,0,0)">Stephen Travis Pope    Ojai,</span><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;float:none;display:inline!important;color:rgb(0,0,0)"> </span><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;float:none;display:inline!important;color:rgb(0,0,0)">California, USA</span><br style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;color:rgb(0,0,0);font-family:HelveticaNeue;font-size:12px"><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;color:rgb(0,0,0)">    </span><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;color:rgb(0,0,0)"></span><span style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;font-size:12px;color:rgb(0,0,0)"></span><span style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"></span><span style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"></span><span style="font-family:"Times New Roman";font-size:18px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;color:rgb(0,0,0)"></span><span><img alt="pastedGraphic.tiff" src="cid:184bd8f004e1022a4285" style="width:39px;max-width:100%"></span><font face="HelveticaNeue" style="font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;font-family:HelveticaNeue;color:rgb(0,0,0)"><span style="font-style:normal;font-size:12px;font-family:HelveticaNeue"><br>     <a href="http://HeavenEverywhere.com" target="_blank" style="font-family:HelveticaNeue">http://HeavenEverywhere.com</a></span></font><div style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"><font face="HelveticaNeue" style="font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;color:rgb(0,0,0)"><span style="font-style:normal;font-size:12px;font-family:HelveticaNeue">     <a href="http://FASTLabInc.com" target="_blank" style="font-family:HelveticaNeue">http://FASTLabInc.com</a></span></font></div><div style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"><font face="HelveticaNeue" style="font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;color:rgb(0,0,0)"><span style="font-style:normal;font-size:12px;font-family:HelveticaNeue">     <a href="https://vimeo.com/user19434036/videos" target="_blank" style="font-family:HelveticaNeue">https://vimeo.com/user19434036/videos</a></span></font></div><div style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"><font face="HelveticaNeue" style="font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;color:rgb(0,0,0)"><span style="font-style:normal;font-size:12px;font-family:HelveticaNeue">     </span></font><span style="font-size:12px;font-family:HelveticaNeue"><a href="http://heaveneverywhere.com/Reflections" target="_blank" style="font-family:HelveticaNeue">http://heaveneverywhere.com/Reflections</a></span></div></div></div><div style="line-break:after-white-space"><div><div style="font-family:"Times New Roman";font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-size:16px;color:rgb(0,0,0)"><font face="HelveticaNeue" style="font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;font-family:HelveticaNeue;color:rgb(0,0,0)"><span style="font-style:normal;font-size:12px;font-family:HelveticaNeue"><br></span></font><br style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:16px;font-style:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none"></div>
</div>
<br></div>-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div></div>