Hi Iain, Just curious, are you running Csound on the same computer as the UI? Just some general rambling: For typical MVC, the input is done with the controller, the controller updates the model, and the model notifies the view to update. When you interact with a UI, I've found that the interaction (mouse control, keyboard) goes through the controller first, then the model, then the view again. So, when you move a knob, the interaction doesn't move the knob, but rather the interaction notifies the model which notifies the knob to update. In Java's Swing library, there's a slightly modified version of MVC where it's more MV, where the model and the controller are the same object. I think with how FLTK and Csound are implemented, there's isn't a true MVC way to do all of this since the widgets themselves will update their views when interacted with, before updating values in Csound. Maybe the thing to think about is limiting how change occurs. So all input, instead of directly affecting csound, can call FLset on fltk widgets. The widgets would then change and thus affecting csound. The layering becomes something like: valueChanges -> widgets -> csound Csound could also then affect widgets, but that would count as input too I guess. If you have all input handling through csound, then this might work. Csound's priority would still be top, handling is about on the same level, and FLTK should be in its own lower-priorty thread anyway. However, I'm not sure about keystroke handling and csound, especially if FLTK has focus. This is all speculation and a quick reply, and since I don't use FLTK very much, MIDI less so, and have only tried keyboard input a few times a few years ago, my thoughts on the subject may not be worth much. (But you have them anyways! =) ) Good luck! steven On 8/2/05, Iain Duncan wrote: > Wondering if anyone can tip me off before I waste effort doing it wrong. > > I want my live rig front end to be prioritized as follows: > - csound thread, highest > - input thread(s) midi, keystrokes, mouse, network connections > - fltk display, lowest > > So, what is the smart way of handling keystrokes, given that I want them > to be higher priority than the display, but they will also update the > display. I guess I want my own input handling layer, that then passes > the events to the fltk loop after checking whether that is necessary or > whether other stuff should happen first. Anyone have an example or tips? > > Thanks > Iain > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > _______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel > ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net