Thanks for the feedback.
Here is my “Empty Script” for starting out a project.
#!BPY
"""
Name: '(ap) Empty'
Blender: 244
Group: 'Wizards'
Tooltip: 'A simple empty script to get you going.'
"""
__author__ = ["Atomic Perception"]
__version__ = "0.0.2"
__name__ = "Empty"
############################################################################
# Import Stuff
############################################################################
import Blender
import math
from Blender.Draw import *
from Blender.BGL import *
from Blender import Mathutils
from Blender.Mathutils import *
from Blender import *
from math import *
import sys, traceback
############################################################################
# Globals
############################################################################
name = __name__
version = __version__
createdObjs = []
#When you add another variable to hold the default value from a gui element
#remember to add a global reference to the "gui_events" and "gui" defs below.
numbSteps = Create(2) #Holds the default value for the slider.
chkDefault = Create(1) #Holds the default value for the checkbox.
############################################################################
# Console init greetings.
############################################################################
print "Initializing..."
print "" + name + " - version: " + version
print ""
############################################################################
# GUI
############################################################################
def gui():
global chkDefault, numbSteps
glClearColor(0.5,0.5,0.5, 0.0)
glColor3f(0.0,0.0,0.0,)
glClear(GL_COLOR_BUFFER_BIT)
glRasterPos2i(10, 410)
Draw.Text(name + " - V" + version, "large")
numbSteps = Slider("Number: ", 100, 10, 260, 290, 20, numbSteps.val, 1, 100, 1, "Number of some kind of units.")
glRasterPos2i(117, 355)
Draw.Text("Checkbox:")
captions = ["off", "on"]
chkDefault = Draw.Toggle(captions[chkDefault.val], 200, 190, 350, 30, 20, chkDefault.val, "Click to check.")
#glRasterPos2i(117, 355)
#Draw.Text("Click To Generate:")
Button("Generate", 1, 10, 10, 230, 40, "Execute code!")
Button("Exit", 2, 250, 10, 50, 40, "Exit script")
############################################################################
# GUI Event Handlers
############################################################################
def gui_events(eventIndex):
global chkDefault, numbSteps
#Buttons start at 1.
if (eventIndex == 1):
doCode()
elif (eventIndex == 2):
print "
End code...
"
Exit()
#Sliders start at 100.
elif (eventIndex == 100):
print "
numbSteps:",numbSteps
#Checkboxes start at 200.
elif (eventIndex == 200):
if (chkDefault == 1):
print "
On
"
else:
print "
Off
"
Draw.Redraw()
############################################################################
# system Event Handlers
############################################################################
def sys_events(eventIndex, value):
if (eventIndex == ESCKEY and not value):
Exit()
############################################################################
# doCode()
############################################################################
def doCode():
try:
print "
Executing code...
"
except:
print "
Error...
"
traceback.print_exc(file=sys.stdout)
Draw.Redraw(1)
############################################################################
# register handlers.
############################################################################
Register(gui, sys_events, gui_events)