from direct.gui.DirectGui import DirectButton, DirectFrame, DirectEntry, YesNoDialog
from direct.gui.DirectGuiGlobals import FLAT, NORMAL
from direct.gui.OnscreenText import OnscreenText
+from pmachines.editor.scene_list import SceneList
class SceneEditor:
(.4, .1, .1, .4)]}[col]
return [self.__load_img_btn(path, col) for col in colors]
fcols = (.4, .4, .4, .14), (.3, .3, .3, .05)
- btn = DirectButton(
+ DirectButton(
image=load_images_btn('exitRight', 'gray'), scale=.05,
pos=(.06, 1, .06),
parent=self._frm, command=self.__on_close, state=NORMAL, relief=FLAT,
frameColor=fcols[0],
rolloverSound=loader.load_sfx('assets/audio/sfx/rollover.ogg'),
clickSound=loader.load_sfx('assets/audio/sfx/click.ogg'))
- btn = DirectButton(
+ DirectButton(
image=load_images_btn('save', 'gray'), scale=.05,
pos=(.06, 1, .18),
parent=self._frm, command=self.__on_save, state=NORMAL, relief=FLAT,
frameColor=fcols[0],
rolloverSound=loader.load_sfx('assets/audio/sfx/rollover.ogg'),
clickSound=loader.load_sfx('assets/audio/sfx/click.ogg'))
+ DirectButton(
+ image=load_images_btn('menuList', 'gray'), scale=.05,
+ pos=(.06, 1, .30),
+ parent=self._frm, command=self.__on_scene_list, state=NORMAL, relief=FLAT,
+ frameColor=fcols[0],
+ rolloverSound=loader.load_sfx('assets/audio/sfx/rollover.ogg'),
+ clickSound=loader.load_sfx('assets/audio/sfx/click.ogg'))
def __on_close(self):
self.__json['name'] = self.__name_entry.get()
self.__dialog = YesNoDialog(dialogName='Unsaved changes',
text=_('You have unsaved changes. Really quit?'),
command=self.__actually_close)
+ self.__dialog['frameColor'] = (.4, .4, .4, .14)
+ self.__dialog['relief'] = FLAT
+ self.__dialog.component('text0')['fg'] = (.9, .9, .9, 1)
+ self.__dialog.component('text0')['font'] = self._font
+ for b in self.__dialog.buttonList:
+ b['frameColor'] = (.4, .4, .4, .14)
+ b.component('text0')['fg'] = (.9, .9, .9, 1)
+ b.component('text0')['font'] = self._font
+ b.component('text1')['fg'] = (.9, .1, .1, 1)
+ b.component('text1')['font'] = self._font
+ b.component('text2')['fg'] = (.9, .9, .1, 1)
+ b.component('text2')['font'] = self._font
def __actually_close(self, arg):
if arg:
with open('assets/scenes/%s.json' % self.__json_name, 'w') as f:
f.write(dumps(self.__json, indent=2, sort_keys=True))
+ def __on_scene_list(self):
+ SceneList()
+
def __load_img_btn(self, path, col):
img = OnscreenImage('assets/images/buttons/%s.dds' % path)
img.set_transparency(True)