![]() |
|
#1
|
|||
|
|||
|
Servus,
I was in need of a number input option, ideally to be placed into menu. A progress bar was not precise enough for the range +/-50 and at least .5 precision. After trying a Textbox and fighting with input filtering I stumbled across the TickerDialog. Alas not possible to include it in the menu bar as it seems.
Then I thought that it would not add too much clicking when I add it to a temporary panel. I tried the example with three dialogs on three different tabs of a TabPanel which works as it should. Though I want to be able to change e.g. all coordinates at the same time, so I tried a GridPanel. The size exceeds when adding TickerDialogs, but they ain't showing. Same with the normal panel. They won't show even if there is just one TickerDialog in use. ![]()
Thanks, Walter
__________________
21 is only half the truth. |
|
#2
|
|||
|
|||
|
Vizconfig panels support text boxes that filter for float or int values. Would this work for you?
Code:
'''
Press F12 to toggle the visibility
of the configuration window
'''
import viz
import vizconfig
import vizinfo
viz.setMultiSample(4)
viz.fov(60)
viz.go()
vizinfo.InfoPanel()
gallery = viz.add('gallery.osgb')
value = 25.0
def getValue():
return value
def setValue(v):
value=v
#Create a configurable object
bc= vizconfig.BasicConfigurable('Enter a float value between (-50,50)')
bc.addFloatItem('float value',range=(-50,50),fset=setValue,fget=getValue)
#register the object so it will display in the configuration window
vizconfig.register(bc)
|
|
#3
|
|||
|
|||
|
Hi Jeff,
thank you for pointing me to vizconfig. It seems that I can put that to good use, though I'll have to rework my menu system... My opinion is to prohibit unwanted user input rather than telling the user afterwards that I didn't like his input - meaning, I'd prefer that you can't enter letters or non-number special characters into a number (int, float) textbox at all. what about that TickerDialog and Panels, though...?Best Regards, Walter
__________________
21 is only half the truth. |
|
#4
|
|||
|
|||
|
P.S.
On the vizconfig basics help page (with the local beta-3 as well as the online version Vizard5 Online Help) some methods are omitted:
And another question, why are the additional examples and the screenshot now missing which were available in Vizard4 Online Help? Especially the screenshot gives a good idea what to expect, without having to run an example script. Best Regards, Walter
__________________
21 is only half the truth. |
|
#5
|
|||
|
|||
|
P.P.S:
there seems to be an error in an error message; when you supply only one positional argument to addBoolLabelItem, the error reads:TypeError: addBoolLabelItem() takes at least 1 argument (2 given) which should most likely be the other way round (at least 2 arguments and just 1 given) and I suggest to add documentation strings to the BasicConfigurable.add* resources, to ease scripting (I use that tooltip feature in the IDE quite a lot). Pleeeeease...
__________________
21 is only half the truth. |
|
#6
|
|||
|
|||
|
By default the visibility of the dialog components are turned off unless added to a TabPanel. When using a task function, you can use the show method to display the dialog and wait for a button event. The TickerDialog section has a short example. The following turns the visibility of the components on in a standard panel:
Code:
import viz import vizdlg viz.go() # ticker dialog and standard panel s1 = vizdlg.TickerDialog(label='Circle',units='pixels',range=(1,5,1),editable=True,border=False,background=False,margin=0) s2 = vizdlg.TickerDialog(label='Crosshair',units='pixels',range=(1,5,1),editable=True,border=False,background=False,margin=0) s3 = vizdlg.TickerDialog(label='Border',units='pixels',range=(1,5,1),editable=True,border=False,background=False,margin=0) s1.visible(viz.ON) s2.visible(viz.ON) s3.visible(viz.ON) row = vizdlg.Panel(layout=vizdlg.LAYOUT_HORZ_BOTTOM,border=False,background=False,margin=0) is1 = row.addItem(s1) is2 = row.addItem(s2) is3 = row.addItem(s3) myPanel = vizdlg.Panel(align=vizdlg.ALIGN_CENTER) myPanel.addItem(row) viz.link(viz.CenterCenter, myPanel) |
|
#7
|
|||
|
|||
|
Hi Jeff,
thank you for the solution. Of course I have to add that to me this seems to be inconsistent behaviour and confusing to the programmer. But now the solution is documented in this forum ![]() Again, thanks to you! Best Regards, Walter
__________________
21 is only half the truth. |
![]() |
| Tags |
| gridpanel, menu, panel, tabpanel, tickerdialog |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| artoolkit no webcam showing | vrmdl | Vizard | 3 | 03-10-2014 11:01 AM |
| Showing another program in a virtual world | Frank Verberne | Vizard | 3 | 01-16-2013 10:26 AM |
| Models showing up | Elizabeth S | Vizard | 9 | 09-06-2006 06:11 PM |
| V8 HMD showing snow pattern | bailenson | Vizard | 3 | 06-22-2006 10:00 AM |
| running scripts without the IDE showing | hotspur1 | Vizard | 7 | 10-30-2003 10:36 AM |