def __init__(self, top_level): self.gunAttrCount = 1 self.ccAttrCount = 1 self.app = Toplevel(top_level) self.app.title("Weapon Creation Tool") self.app.lift(top_level) # Get current weapon lists self.guns = self.update_dicts('profiles/gnl.wf') self.cc = self.update_dicts('profiles/ccl.wf') if os.name == "posix": self.app.wm_iconbitmap('@staticon.xbm') # For non-windows systems (works on linux, not sure about OSX) else: self.app.wm_iconbitmap('staticon.ico') # For windows # Frames self.gunframe = GUI.label_frame_create(self.app, 'Shooting', 0, 0) self.ccframe = GUI.label_frame_create(self.app, 'Assault', 1, 0) self.gunstatframe = GUI.frame_create(self.gunframe, 0, 0) self.gunsvframe = GUI.frame_create(self.gunframe, 1, 0) self.ccstatframe = GUI.frame_create(self.ccframe, 0, 0) self.ccsvframe = GUI.frame_create(self.ccframe, 1, 0) self.gunsvframe = GUI.frame_create(self.gunstatframe, 2, 0) self.ccsvframe = GUI.frame_create(self.ccstatframe, 2, 0) self.gunattrbtns = GUI.frame_create(self.gunstatframe, 0, 5) self.ccattrbtns = GUI.frame_create(self.ccstatframe, 0, 3) self.gunattrbtns.grid(sticky=(N, S)) self.ccattrbtns.grid(sticky=(N, S)) # Labels ttk.Label(self.gunstatframe, text='Weapon Name').grid(column=0, row=0, sticky=W) ttk.Label(self.gunstatframe, text='Shots', justify='center').grid(column=1, row=0, sticky=W) ttk.Label(self.gunstatframe, text='S', justify='center').grid(column=2, row=0) ttk.Label(self.gunstatframe, text='AP', justify='center').grid(column=3, row=0) ttk.Label(self.gunstatframe, text='Attributes', justify='center').grid(column=4, row=0) ttk.Label(self.ccstatframe, text='Weapon Name').grid(column=0, row=0, sticky=W) ttk.Label(self.ccstatframe, text='Atx', justify='center').grid(column=1, row=0) ttk.Label(self.ccstatframe, text='Attributes', justify='center').grid(column=2, row=0) # Entries self.gunNameVar = StringVar() self.ccNameVar = StringVar() self.ccAtkVar = StringVar() self.gunShotVar = StringVar() self.gunSVar = StringVar() self.gunAPVar = StringVar() self.gunName = GUI.input_create(self.gunstatframe, 'entry', self.gunNameVar, 25, [1, 0, (W, E)], []) self.gunShots = GUI.input_create(self.gunstatframe, 'entry', self.gunShotVar, 4, [1, 1, (W, E)], []) self.gunS = GUI.input_create(self.gunstatframe, 'entry', self.gunSVar, 2, [1, 2, (W, E)], []) self.gunAP = GUI.input_create(self.gunstatframe, 'entry', self.gunAPVar, 2, [1, 3, (W, E)], []) self.CCName = GUI.input_create(self.ccstatframe, 'entry', self.ccNameVar, 25, [1, 0, (W, E)], []) self.CCAtk = GUI.input_create(self.ccstatframe, 'entry', self.ccAtkVar, 4, [1, 1, (W, E)], []) self.gunS.grid(padx=2) self.app.withdraw() self.gunNameVar.set('ENTER NAME OF GUN') self.ccNameVar.set('ENTER NAME OF WEAPON') self.gunShotVar.set('#') self.ccAtkVar.set('#') self.gunSVar.set('#') self.gunAPVar.set('#') self.addGunAttr = ttk.Button(self.gunattrbtns, text = '+', width=3, command=self.add_gun_attr) self.delGunAttr = ttk.Button(self.gunattrbtns, text = '-', width=3, command=self.del_gun_attr) self.addCCAttr = ttk.Button(self.ccattrbtns, text = '+', width=3, command=self.add_cc_attr) self.delCCAttr = ttk.Button(self.ccattrbtns, text = '-', width=3, command=self.del_cc_attr) self.addGunAttr.grid(column=0, row=0, sticky=(W, N, S)) self.delGunAttr.grid(column=1, row=0, sticky=(E, N, S)) self.addCCAttr.grid(column=0, row=0, sticky=(W, N, S)) self.delCCAttr.grid(column=1, row=0, sticky=(E, N, S)) # Attributes Boxes self.gunAttrVar1 = StringVar() self.gunAttrVar2 = StringVar() self.gunAttrVar3 = StringVar() self.gunAttrVar4 = StringVar() self.ccAttrVar1 = StringVar() self.ccAttrVar2 = StringVar() self.ccAttrVar3 = StringVar() self.ccAttrVar4 = StringVar() self.gunAttr1 = ttk.Combobox(self.gunstatframe, textvariable=self.gunAttrVar1) self.gunAttr2 = ttk.Combobox(self.gunstatframe, textvariable=self.gunAttrVar2, state=DISABLED) self.gunAttr3 = ttk.Combobox(self.gunstatframe, textvariable=self.gunAttrVar3, state=DISABLED) self.gunAttr4 = ttk.Combobox(self.gunstatframe, textvariable=self.gunAttrVar4, state=DISABLED) self.ccAttr1 = ttk.Combobox(self.ccstatframe, textvariable=self.ccAttrVar1) self.ccAttr2 = ttk.Combobox(self.ccstatframe, textvariable=self.ccAttrVar2, state=DISABLED) self.ccAttr3 = ttk.Combobox(self.ccstatframe, textvariable=self.ccAttrVar3, state=DISABLED) self.ccAttr4 = ttk.Combobox(self.ccstatframe, textvariable=self.ccAttrVar4, state=DISABLED) self.gunAttr1.grid(column=4, row=1, padx=2) self.gunAttr2.grid(column=5, row=1, padx=2) self.gunAttr3.grid(column=4, row=2, padx=2) self.gunAttr4.grid(column=5, row=2, padx=2) self.ccAttr1.grid(column=2, row=1, padx=2) self.ccAttr2.grid(column=3, row=1, padx=2) self.ccAttr3.grid(column=2, row=2, padx=2) self.ccAttr4.grid(column=3, row=2, padx=2) self.gunAttr1['values'] = weaponAttributes['gun'] self.gunAttr2['values'] = weaponAttributes['gun'] self.gunAttr3['values'] = weaponAttributes['gun'] self.gunAttr4['values'] = weaponAttributes['gun'] self.ccAttr1['values'] = weaponAttributes['cc'] self.ccAttr2['values'] = weaponAttributes['cc'] self.ccAttr3['values'] = weaponAttributes['cc'] self.ccAttr4['values'] = weaponAttributes['cc'] self.gunAttr1.set('None') self.gunAttr2.set('None') self.gunAttr3.set('None') self.gunAttr4.set('None') self.ccAttr1.set('None') self.ccAttr2.set('None') self.ccAttr3.set('None') self.ccAttr4.set('None') self.saveGun = ttk.Button(self.gunsvframe, text = 'Save Weapon', width=15, command=self.save_gun) self.saveCC = ttk.Button(self.ccsvframe, text = 'Save Weapon', width=15, command=self.save_cc) self.saveGun.grid(column=0, row=0, sticky=(N, S)) self.saveCC.grid(column=0, row=0, sticky=(N, S))