[Cuis-dev] Siren for Cuis - initial (partial) port

Stephen Travis Pope stephen at heaveneverywhere.com
Thu Nov 24 11:09:08 PST 2022


Hello colleagues,

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.

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).

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).

<From the Workbook doc>

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.

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.
	[Siren.DisplayList rectangleExample]

</From the Workbook doc>

The basic display items all have VisualWorks-style display methods, such as,

!DisplayLine methodsFor: 'displaying'!
displayOn: aGraphicsContext
	"Display a line between startPoint and endPoint."

"	Transcript show: start printString, '	', end printString; cr."
	color == nil
		ifFalse: [aGraphicsContext paint: color].
	width == nil
		ifFalse: [aGraphicsContext lineWidth: width].
	aGraphicsContext displayLineFrom: offset to: (offset + extent)! !

and these need to be ported to the equivalent versions in the VectorEngineWithPluginWholePixel world.

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,

Hierarchical display list with random rects and texts



Large random display list with different look-and-feel and zoom bar layout



Music notation view with Motif-like L&F



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.




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/build-siren.st <http://build-siren.st/> 

Does anyone want to try porting the display item display methods and making a display-list view?

There’s a ZIP file with the sources, build-script and pre-configured image in

	http://fastlabinc.com/Siren/Siren_Cuis_Test.zip

Questions/comments solicited…

Stephen Pope


--------

Stephen Travis Pope    Ojai, California, USA
    
     http://HeavenEverywhere.com
     http://FASTLabInc.com
     https://vimeo.com/user19434036/videos
     http://heaveneverywhere.com/Reflections



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hierarchicalDL.gif
Type: image/gif
Size: 68913 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0003.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dlist-view2.gif
Type: image/gif
Size: 92853 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0004.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hsview.gif
Type: image/gif
Size: 60294 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0005.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: siren-in-cuis.jpg
Type: image/jpeg
Size: 620360 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0001.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pastedGraphic.tiff
Type: image/tiff
Size: 2442 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20221124/79ff869e/attachment-0001.tiff>


More information about the Cuis-dev mailing list