# Copyright 2009 Autodesk, Inc.  All rights reserved.
# Use of this software is subject to the terms of the Autodesk license agreement 
# provided at the time of installation or download, or which otherwise accompanies
# this software in either electronic or hard copy form.
#
# Script description:
# Create a tool that will create and close a FBPopup
#
# Topic: FBTool
#

from pyfbsdk import *
from pyfbsdk_additions import *

# a Popup is really a layout. It should be populated/initialized
def CloseCallback(control, event):
    CloseTool(globalTool)


def PopulateLayout(mainLyt):
    # create a button on the tool that will show the popup
    b = FBButton()
    b.Caption = "Close Me!"

    x = FBAddRegionParam(10,FBAttachType.kFBAttachLeft,"")
    y = FBAddRegionParam(10,FBAttachType.kFBAttachTop,"")
    w = FBAddRegionParam(50,FBAttachType.kFBAttachNone,"")
    h = FBAddRegionParam(25,FBAttachType.kFBAttachNone,"")

    mainLyt.AddRegion("Btn","Btn", x, y, w, h)
    mainLyt.SetControl("Btn",b)

    b.OnClick.Add(CloseCallback)


def CreateTool():
    # Tool creation will serve as the hub for all other controls
    global globalTool
    globalTool = CreateUniqueTool("Close Tool Example")
    globalTool.StartSizeX = 200
    globalTool.StartSizeY = 100
    PopulateLayout(globalTool)
    ShowTool(globalTool)


CreateTool()