If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Design concept question [selectable GUI]
41 posts
• Page 4 of 5 • 1, 2, 3, 4, 5
Re: Design concept question [selectable GUI]
OK ... I've got some of the basics assembled for a GUI display that can be changed dynamically.
Instead of using video switching [much like multi-tabbed windows], I've tried to focus on using things like VECTOR knobs that can be re-configured.
The basis of the idea [which mirrors of type of EQ], is having a main GUI window that has EMPTY slots. Within each 'slot', a module can be assigned. Each module has a 'radio button' switcher that directs the configuration.
What I'm showing is just one module example.
The basic look is something like this:
I'm just getting some of the often used control objects pre-assembled in order to troubleshoot and finetune the design and flow.
There are some important design goals that I'm looking toward, such as, radio-switching between available choices should each retain their last setting. Globally, the main PresetManager should capture and restore everything. The actually number of GUI modules could be anything from 1 to a dozen [or more I suppose]. That would depend on the size of each module, and would be restricted by the overall size of the main GUI window [VST].
I'm still early in putting this together, and there are still some outstanding issues that I'd like to fix ... but for those interested in helping troubleshoot and refine ... that would be most welcomed !!!
Some of the GURUs here might recognize some of their works contain within. I hesitate to mention names, because NO DOUBT, an important one [or three] would be left off
I must single out of of our Gurus .... that would be Mr.NuBeat . Beside some wonderful designs and examples that he has shared ... he has also helped a 'newb' expand the thinking/design process.
The inspiration for this project stems from the 'dual-function' slider that NuBeat had posted awhile back.
I caution though .... it will be easy to see what my rookie work is like ... and this is with conscience effort to try and improve I've got much to learn, and a long ways to go .... but I sincerely appreciate the volumes of help I have received here and previously on the SM forum.
Thanks to everyone for any comments, suggestions, improvements and replacement coding. At this point, the module doesn't actually do anything ... but before it does, I would like to get a solid GUI core happening.
Here's my current schematic:
Thanks GANG !
Instead of using video switching [much like multi-tabbed windows], I've tried to focus on using things like VECTOR knobs that can be re-configured.
The basis of the idea [which mirrors of type of EQ], is having a main GUI window that has EMPTY slots. Within each 'slot', a module can be assigned. Each module has a 'radio button' switcher that directs the configuration.
What I'm showing is just one module example.
The basic look is something like this:
I'm just getting some of the often used control objects pre-assembled in order to troubleshoot and finetune the design and flow.
There are some important design goals that I'm looking toward, such as, radio-switching between available choices should each retain their last setting. Globally, the main PresetManager should capture and restore everything. The actually number of GUI modules could be anything from 1 to a dozen [or more I suppose]. That would depend on the size of each module, and would be restricted by the overall size of the main GUI window [VST].
I'm still early in putting this together, and there are still some outstanding issues that I'd like to fix ... but for those interested in helping troubleshoot and refine ... that would be most welcomed !!!
Some of the GURUs here might recognize some of their works contain within. I hesitate to mention names, because NO DOUBT, an important one [or three] would be left off
I must single out of of our Gurus .... that would be Mr.NuBeat . Beside some wonderful designs and examples that he has shared ... he has also helped a 'newb' expand the thinking/design process.
The inspiration for this project stems from the 'dual-function' slider that NuBeat had posted awhile back.
I caution though .... it will be easy to see what my rookie work is like ... and this is with conscience effort to try and improve I've got much to learn, and a long ways to go .... but I sincerely appreciate the volumes of help I have received here and previously on the SM forum.
Thanks to everyone for any comments, suggestions, improvements and replacement coding. At this point, the module doesn't actually do anything ... but before it does, I would like to get a solid GUI core happening.
Here's my current schematic:
Thanks GANG !
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
Re: Design concept question [selectable GUI]
thx Rj for the kind of words,
nice clean schematic, what i could see is that you`ve still putted the selected module index to the end of the presetname, you shouldn`t do this (anyway the presetparameter array do the same automatically) it only can have one name other wise the DAW gets confused when loading parameters,
lets say the current index is 2 and you load a preset where it is 4 - it is looking for a presetparameter(array)name with 4 on the end but there is none because its set to 2 atm... its the same like with normal presets you need a unique name for the presetparameter prim to get found when loading presets
just try it in a daw and watch your automation parameters for your app (dont forget to turn auto on, it is not connected in my original module - so its set to off!)
nice clean schematic, what i could see is that you`ve still putted the selected module index to the end of the presetname, you shouldn`t do this (anyway the presetparameter array do the same automatically) it only can have one name other wise the DAW gets confused when loading parameters,
lets say the current index is 2 and you load a preset where it is 4 - it is looking for a presetparameter(array)name with 4 on the end but there is none because its set to 2 atm... its the same like with normal presets you need a unique name for the presetparameter prim to get found when loading presets
just try it in a daw and watch your automation parameters for your app (dont forget to turn auto on, it is not connected in my original module - so its set to off!)
-
Nubeat7 - Posts: 1347
- Joined: Sat Apr 14, 2012 9:59 am
- Location: Vienna
Re: Design concept question [selectable GUI]
Nubeat7 wrote:what i could see is that you`ve still putted the selected module index to the end of the presetname, you shouldn`t do this (anyway the presetparameter array do the same automatically) it only can have one name other wise the DAW gets confused when loading parameters,
just try it in a daw and watch your automation parameters for your app (dont forget to turn auto on, it is not connected in my original module - so its set to off!)
Thanks NuBeat !
I pulled the INDEX suffix off all the sub modules, and while in there, added a TRUE link to the AUTO.
I'd had not tested yet in any DAW ... still working through much of the logic.
There is one function I still don't have working as I'd like .... that small ON/OFF button is tied into the GAIN control. What it is suppose to do is change the OUTPUT value to the gain's DEFAULT value ... while STILL holding the position of the needle on the gain knob. The numeric displays go the RED to indicate that this is in a soft bypass mode. The FREQ also turns red, but it is NOT set to default [this way we have a choice if this feature is needed or not]. I use this as a quick A/B comparison of the GAIN [+/-] that a band is given. This would allow auditioning that applied level. Even when the gain is 'bypassed', the level can still be adjusted [silently], and then when UN-bypassed, the NEW level is kicked out. I use this in my regular designs, but this new 'multi' approach is different. Hope I can fix this
Anyway ... thanks for catching my initial errors. Tomorrow I'll post up the changes.
Still much more to do on this design.
I started to play with the module that collects all the values [wireless]. I need to get all this data into a MIDI stream.
I hope to stay with this modular type design.
Thanks again !
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
Re: Design concept question [selectable GUI]
Hello NuBeat !!
Hope you see this ... as we have a question to ask
In the example you posted, were one or 2 'pull-down' menus. They were different than the stock ones, as they also had the selections in both columns and rows.
Here's the question ... due to seeing a RUBY error message ...
If a blank string is used for the list entries ... we get a RUBY complaint. [error with red]. Normal pull-downs just won't open. Is there a way to protect from this error ???
Along the same line ...
For stock pull-downs, I've used a TEXT box [like an array] to fill the entries, however, you're [really cool' one] uses a 'string'. For me to make it work with what I need to have, I have to follow the TEXT box with a 'STR ARR to Selector STR' prim.
Could it be possible to mod your design like the stock ones, but still have the color and selection layout like you did ??
It would be great to have the flexibility to use these without having to change the schematic layout !
As to this 'GUI Project' ... I've had a little more time to tweak the design while getting to test it. Generally, it is behaving quite well With this type of interface design, with lots of sharing of components, I'm having to test extensively.
I've not yet filled the rack with a full stack of modules ... but it should be interesting to compare resources usage to my V1 design.
Anyway ... Thanks for any help NuBeat !!
Hope you see this ... as we have a question to ask
In the example you posted, were one or 2 'pull-down' menus. They were different than the stock ones, as they also had the selections in both columns and rows.
Here's the question ... due to seeing a RUBY error message ...
If a blank string is used for the list entries ... we get a RUBY complaint. [error with red]. Normal pull-downs just won't open. Is there a way to protect from this error ???
Along the same line ...
For stock pull-downs, I've used a TEXT box [like an array] to fill the entries, however, you're [really cool' one] uses a 'string'. For me to make it work with what I need to have, I have to follow the TEXT box with a 'STR ARR to Selector STR' prim.
Could it be possible to mod your design like the stock ones, but still have the color and selection layout like you did ??
It would be great to have the flexibility to use these without having to change the schematic layout !
As to this 'GUI Project' ... I've had a little more time to tweak the design while getting to test it. Generally, it is behaving quite well With this type of interface design, with lots of sharing of components, I'm having to test extensively.
I've not yet filled the rack with a full stack of modules ... but it should be interesting to compare resources usage to my V1 design.
Anyway ... Thanks for any help NuBeat !!
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
Re: Design concept question [selectable GUI]
RJHollins wrote:If a blank string is used for the list entries ... we get a RUBY complaint. [error with red]. Normal pull-downs just won't open. Is there a way to protect from this error ??
i wanted to do this since ages, just always was to lazy...
just add this line
- Code: Select all
label = ' ' if label == nil
after this one
- Code: Select all
label = @items.split(',')[@check]
so if label is nil which is the case at empty items input it just shows 1space or what ever you want
and if you want to use a textbox(array) instead of commaseperated itemslist just eliminate the .split(',')
-
Nubeat7 - Posts: 1347
- Joined: Sat Apr 14, 2012 9:59 am
- Location: Vienna
Re: Design concept question [selectable GUI]
Hi NuBeat,
I went in and made the mods posted above, but the display of the selected item is not working correctly
here's the code from example:
something else I'm confused on is what the formatting settings are [in the code] that can alter the pulldown layout. Could you 'comment' the line that handles that ... I've been using the ole, 'trial and error' method ... which means plenty of 'trying errors'
I went in and made the mods posted above, but the display of the selected item is not working correctly
here's the code from example:
- Code: Select all
def draw i,v
# label = @items.split(',')[@check]
label = @items [@check]
label = ' ' if label == nil
rc = [0.2,0.2,v.width-0.4,v.height-0.4]
outl = Pen.new @c5,0.2
b = Brush.new @c4
font = Font.new 'Arial',1.125,'bold'
sf = StringFormat.new
sf.setAlignment "center"
sf.setLineAlignment "center"
v.drawRoundRect outl,rc,0.2
v.drawString label,font,sf,rc,b
end
def isInMousePoint
true
end
def mouseLDown
p = [0,0]
createDropList 0,1,p,@items,@check,6
end
def dropListFinished id,index,name
if id == 1
output index
end
end
def event i,v
redraw
end
something else I'm confused on is what the formatting settings are [in the code] that can alter the pulldown layout. Could you 'comment' the line that handles that ... I've been using the ole, 'trial and error' method ... which means plenty of 'trying errors'
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
Re: Design concept question [selectable GUI]
ha, sorry just checked it fast in the morning only with a,b,c,d in the text box where it was working but using whole words it shows only the first letter...
so this should work
in the mouseLDown methode you create the Droplist and give it some values - the last of it sets the items in a row
hope it works well now because its late in the evening and it was only a fast check either
so this should work
- Code: Select all
def draw i,v
label = @items.split(/\r\n/)[@check]
label = ' ' if label == nil
rc = [0.2,0.2,v.width-0.4,v.height-0.4]
outl = Pen.new @c5,0.2
b = Brush.new @c4
font = Font.new 'Arial',1.125,'bold'
sf = StringFormat.new
sf.setAlignment "center"
sf.setLineAlignment "center"
v.drawRoundRect outl,rc,0.2
v.drawString label,font,sf,rc,b
end
def isInMousePoint
true
end
def mouseLDown
p = [0,0]
createDropList 0,1,p,@items,@check,6 #the last one (6 in this case) sets how many items will be in a row
end
def dropListFinished id,index,name
if id == 1
output index
end
end
in the mouseLDown methode you create the Droplist and give it some values - the last of it sets the items in a row
hope it works well now because its late in the evening and it was only a fast check either
-
Nubeat7 - Posts: 1347
- Joined: Sat Apr 14, 2012 9:59 am
- Location: Vienna
Re: Design concept question [selectable GUI]
ahh .... Big Thanks NuBeat ... checking it out as we speak.
I just needed to add a
at the end of the code to refresh the display.
I'll be 'kickin the tires' with it ... but the quick test is looking good.
Interesting what you did on the 'split' code.
that is a confusing section of RUBY for me I kinda,almost get it ... then .... nothing
again ... thanks for your time on knowledge helping me !!
I just needed to add a
- Code: Select all
def event i,v
redraw
end
at the end of the code to refresh the display.
I'll be 'kickin the tires' with it ... but the quick test is looking good.
Interesting what you did on the 'split' code.
- Code: Select all
label = @items.split(/\r\n/)[@check]
that is a confusing section of RUBY for me I kinda,almost get it ... then .... nothing
again ... thanks for your time on knowledge helping me !!
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
Re: Design concept question [selectable GUI]
oh cool it worked with the redraw methode...
.split(/\r\n/)
means that it splits the string at every 'return' and 'newline' into the next array index - the textbox includes this 2 asci signs on every new line.. kind a similar with the comma in the common string version where you split at ','
RJHollins wrote:Interesting what you did on the 'split' code.
- Code: Select all
label = @items.split(/\r\n/)[@check]
that is a confusing section of RUBY for me I kinda,almost get it ... then .... nothing
.split(/\r\n/)
means that it splits the string at every 'return' and 'newline' into the next array index - the textbox includes this 2 asci signs on every new line.. kind a similar with the comma in the common string version where you split at ','
-
Nubeat7 - Posts: 1347
- Joined: Sat Apr 14, 2012 9:59 am
- Location: Vienna
Re: Design concept question [selectable GUI]
Ahh thank-you !
I think it's the look of the code that throws me at first ...
I forget that the / and / are like markers ... and the \r and \n are the actions ... [my poor understanding]
But in its 'simplicity' I can appreciate the power.
I've put the changes in my project ... things seem to be working well.
In the continued effort to slim down and max a GUI interface, I've started looking at some of the 'pop-out' windows.
There are certain GUI controls that are not always needed [to be seen] at all times. I'm looking to place those into a pop-out, or slid-over window that would contain the controls. When the pop-out is not being used, I may display just the values on the main GUI.
I've also looked at some example 'mouse controlled' number boxes that can be 'dragged' to change values. It's an interesting concept ... but I've not found it as useful or practical as yet. [particularly when used to substitute for a slider]. Certain elements like up/down incrementing box displays is another design I've seen examples of.
I guess I'm looking to pull together a comprehensive package of GUI controls. This 'multi-function' design, where single elements can be modified in real-time is really nice. Just being able to switch a knob from STEPS to continuous also has it's advantages.
That means I really need to look closer at 'vector' designs. When using KNOBMan, it was nice to have the lighting and shadows to add some realism to a knob ... it just wish that we had more graphics ability with RUBY [although I've only scratched the surface there].
Anyway ... just trying to push the learning curve and get to different design concepts
Thanks !!!!
I think it's the look of the code that throws me at first ...
- Code: Select all
.split(/\r\n/)
I forget that the / and / are like markers ... and the \r and \n are the actions ... [my poor understanding]
But in its 'simplicity' I can appreciate the power.
I've put the changes in my project ... things seem to be working well.
In the continued effort to slim down and max a GUI interface, I've started looking at some of the 'pop-out' windows.
There are certain GUI controls that are not always needed [to be seen] at all times. I'm looking to place those into a pop-out, or slid-over window that would contain the controls. When the pop-out is not being used, I may display just the values on the main GUI.
I've also looked at some example 'mouse controlled' number boxes that can be 'dragged' to change values. It's an interesting concept ... but I've not found it as useful or practical as yet. [particularly when used to substitute for a slider]. Certain elements like up/down incrementing box displays is another design I've seen examples of.
I guess I'm looking to pull together a comprehensive package of GUI controls. This 'multi-function' design, where single elements can be modified in real-time is really nice. Just being able to switch a knob from STEPS to continuous also has it's advantages.
That means I really need to look closer at 'vector' designs. When using KNOBMan, it was nice to have the lighting and shadows to add some realism to a knob ... it just wish that we had more graphics ability with RUBY [although I've only scratched the surface there].
Anyway ... just trying to push the learning curve and get to different design concepts
Thanks !!!!
- RJHollins
- Posts: 1571
- Joined: Thu Mar 08, 2012 7:58 pm
41 posts
• Page 4 of 5 • 1, 2, 3, 4, 5
Who is online
Users browsing this forum: No registered users and 41 guests