from pyfbsdk import *
from pyfbsdk_additions import *
editStyles = ["FBEdit","FBEditColor","FBEditNumber","FBEditVector","FBTimeCode"]
edits = {}
def OnChange(control,event):
print control.Text
def PopulateLayout(mainLyt):
anchor = ""
attachType = FBAttachType.kFBAttachTop
for style in editStyles:
labId = "Label" + style
l = FBLabel()
l.Caption = style
x = FBAddRegionParam(10,FBAttachType.kFBAttachLeft,"")
y = FBAddRegionParam(10,attachType,anchor)
w = FBAddRegionParam(100,FBAttachType.kFBAttachNone,"")
h = FBAddRegionParam(25,FBAttachType.kFBAttachNone,"")
mainLyt.AddRegion(labId,labId, x, y, w, h)
mainLyt.SetControl(labId,l)
editId = "Edit" + style
initCall = "%s()" % (style)
e = eval( initCall )
edits[style] = e
x = FBAddRegionParam(10,FBAttachType.kFBAttachRight,labId)
y = FBAddRegionParam(10,attachType,anchor)
w = FBAddRegionParam(200,FBAttachType.kFBAttachNone,"")
h = FBAddRegionParam(25,FBAttachType.kFBAttachNone,"")
mainLyt.AddRegion(editId,editId, x, y, w, h)
mainLyt.SetControl(editId,e)
attachType = FBAttachType.kFBAttachBottom
anchor = labId
e = edits['FBEdit']
e.Text = "initial text"
e.OnChange.Add(OnChange)
e = edits['FBEditColor']
e.Value = FBColor(1.0, 0.0,0.0)
e = edits['FBEditNumber']
e.Max = 100
e.Min = 34
e.Value = 62
e = edits['FBEditVector']
e.Value = FBVector3d(42.0, 23.0,666.666)
e = edits['FBTimeCode']
e.Value = FBTime(11,22,33,11)
def CreateTool():
t = CreateUniqueTool("Edit Example")
PopulateLayout(t)
ShowTool(t)
CreateTool()