from pymol import cmd
import Tkinter as tk
from pmg_tk.startup.ProMol import promolglobals as glb
from pmg_tk.startup.ProMol.Methods.motif import *
from pmg_tk.startup.ProMol.Methods.setting import *
from pmg_tk.startup.ProMol.Methods.utility import *
def initialise():
#---------Orthoscopic view and View distance-----#
group = tk.LabelFrame(glb.GUI.toolbox['tab'], text='Perspective')
group.grid(row=1, column=1, padx=0, pady=0, sticky=tk.NW)
orthoon = tk.Button(group, text = 'Orthoscopic On', width = 16, command=turnorthon)
orthoon.grid(row=0, column=0, padx=2, pady=2, sticky=tk.NW)
orthoff = tk.Button(group, text = 'Orthoscopic Off',width = 16, command=turnorthoff)
orthoff.grid(row=1, column=0, padx=2, pady=2, sticky=tk.NW)
viewsetter = tk.Label(group, text = 'Set Field of View')
viewsetter.grid(row=2, column=0, padx=0, pady=0, sticky=tk.N)
glb.GUI.toolbox['setfieldofview'] = IntVar()
setfieldofview = tk.Scale(group, width=8, troughcolor="#ffffff",
length="65", orient="horizontal", resolution="5", to="100",
variable=glb.GUI.toolbox['setfieldofview'], command=setfield)
setfieldofview.grid(row=3, column=0, padx=0, pady=0, sticky=tk.N)
glb.GUI.toolbox['setfieldofview'].set(20)
getfield = tk.Button(group, text = 'Update',width = 16)
getfield.grid(row=4, column=0, padx=2, pady=2, sticky=tk.N)
#----------------Orient the screen--------------#
orientbutt = tk.Button(group, text = 'Orient Screen', width = 16,
command=orient)
orientbutt.grid(row=6, column=0, padx=2, pady=2, sticky=tk.N)
#-------------------Alternate Ray Tracing----------------------
group = tk.LabelFrame(glb.GUI.toolbox['tab'], text='Ray Trace Options')
group.grid(row=0, column=0,columnspan=2, padx=0, pady=5, sticky=tk.NW)
rayzero = tk.Button(group, text = 'Default Ray', command=setray0)
rayzero.grid(row=0, column=0, padx=2, pady=2, sticky=tk.E)
rayone = tk.Button(group, text = 'Black Outline Ray', command=setray1)
rayone.grid(row=0, column=1, padx=2, pady=2, sticky=tk.E)
raytwo = tk.Button(group, text = 'Black and White Ray', command=setray2)
raytwo.grid(row=0, column=2, padx=2, pady=2, sticky=tk.E)
raythree = tk.Button(group, text = 'Cartoon Ray', command=setray3)
raythree.grid(row=0, column=3, padx=2, pady=2, sticky=tk.E)
#------------------Amino Acid Reference Group-----------------
group = tk.LabelFrame(glb.GUI.toolbox['tab'], text='Amino Acid Reference:')
group.grid(row=1, column=0, padx=0, pady=0, sticky=tk.NW)
msg = tk.Label(group, text="Amino Acid:")
msg.grid(row=0, column=0, padx=0, pady=0, sticky=tk.NE)
glb.GUI.toolbox['aminoimage'] = tk.Entry(group, width=7,)
glb.GUI.toolbox['aminoimage'].grid(row=0, column=1, padx=4, pady=3,
sticky=tk.NW)
but37 = tk.Button(group, text="Submit", width="7", command=showaminopic)
but37.grid(row=0, column=2, padx=4, pady=3, sticky=tk.NW)
glb.GUI.toolbox['aminocanvas'] = tk.Canvas(group, width=200, height=150)
glb.GUI.toolbox['aminocanvas'].grid(row=1, column=0,columnspan=2, rowspan=6,
padx=0, pady=0, sticky=tk.NE)
labels = ('2D', '3D')
glb.GUI.toolbox['picdimension'] = StringVar()
glb.GUI.toolbox['picdimension'].set('2D')
labelrow = 1
for label in labels:
dimensionsel = tk.Radiobutton(group, text=label, value=label,
variable=glb.GUI.toolbox['picdimension'])
dimensionsel.grid(column=2,row=labelrow)
labelrow += 1