mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 02:42:49 -04:00
fixes to baseline styles (but they're not perfect yet)
This commit is contained in:
parent
ff67d626cc
commit
d4b777bf79
@ -336,6 +336,9 @@ class LevelEditor(NodePath, PandaObject):
|
||||
# Become the new node path
|
||||
self.assign(hidden.attachNewNode('LevelEditor'))
|
||||
|
||||
# Enable replaceSelected by default:
|
||||
self.replaceSelectedEnabled=1
|
||||
|
||||
# Create ancillary objects
|
||||
# Style manager for keeping track of styles/colors
|
||||
self.styleManager = LevelStyleManager()
|
||||
@ -626,10 +629,11 @@ class LevelEditor(NodePath, PandaObject):
|
||||
return DNASTORE.findDNAGroup(nodePath.id())
|
||||
|
||||
def replaceSelected(self):
|
||||
# Update visible geometry using new DNA
|
||||
newRoot = self.replace(self.selectedNPRoot, self.selectedDNARoot)
|
||||
# Reselect node path and respawn followSelectedNodePathTask
|
||||
direct.select(newRoot)
|
||||
if self.replaceSelectedEnabled:
|
||||
# Update visible geometry using new DNA
|
||||
newRoot = self.replace(self.selectedNPRoot, self.selectedDNARoot)
|
||||
# Reselect node path and respawn followSelectedNodePathTask
|
||||
direct.select(newRoot)
|
||||
|
||||
def replace(self, nodePath, dnaNode):
|
||||
""" Replace a node path with the results of a DNANode traversal """
|
||||
@ -3571,20 +3575,13 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
self.levelEditor.selectedNodePathHookHooks.append(self.updateSignPage)
|
||||
gridFrame = Frame(signPage)
|
||||
|
||||
self.baselineString=StringVar()
|
||||
self.baselineString.trace("wu", self.signBaselineTrace)
|
||||
self.baselineTextBox = Entry(
|
||||
gridFrame, width = 24,
|
||||
textvariable=self.baselineString)
|
||||
self.baselineTextBox.grid(row=1, column=0, columnspan=6)
|
||||
|
||||
signSelectedFrame = Frame(gridFrame)
|
||||
|
||||
self.currentBaselineIndex=0
|
||||
self.baselineMenu = Pmw.ComboBox(
|
||||
signSelectedFrame,
|
||||
labelpos = W,
|
||||
label_text = 'Selected:', entry_width = 14,
|
||||
label_text = 'Selected:', entry_width = 24,
|
||||
selectioncommand = self.selectSignBaseline,
|
||||
history = 0, # unique = 0,
|
||||
scrolledlist_items = ['<the sign>'])
|
||||
@ -3598,16 +3595,14 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
|
||||
signSelectedFrame.grid(row=0, column=0, columnspan=6)
|
||||
|
||||
fontList = [""]+self.styleManager.getCatalogCodes('font')
|
||||
self.fontMenu = Pmw.ComboBox(
|
||||
gridFrame, labelpos = W,
|
||||
label_text = 'Font:', entry_width = 12,
|
||||
selectioncommand = self.setSignBaslineFont, history = 0,
|
||||
scrolledlist_items = fontList)
|
||||
self.fontMenu.selectitem(fontList[0])
|
||||
self.fontMenu.grid(row=2, column=3, columnspan=3)
|
||||
self.baselineString=StringVar()
|
||||
self.baselineString.trace("wu", self.signBaselineTrace)
|
||||
self.baselineTextBox = Entry(
|
||||
gridFrame, width = 24,
|
||||
textvariable=self.baselineString)
|
||||
self.baselineTextBox.grid(row=1, column=0, columnspan=6)
|
||||
|
||||
levelAttribute = ( # Yes, there are a lot of steps here:
|
||||
levelAttribute = (
|
||||
self.styleManager.attributeDictionary
|
||||
['baseline_style']['toontown_central']
|
||||
.getDict().keys())
|
||||
@ -3621,6 +3616,15 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
self.baselineStyleMenu.selectitem(baselineStyleList[0])
|
||||
self.baselineStyleMenu.grid(row=2, column=0, columnspan=3)
|
||||
|
||||
fontList = [""]+self.styleManager.getCatalogCodes('font')
|
||||
self.fontMenu = Pmw.ComboBox(
|
||||
gridFrame, labelpos = W,
|
||||
label_text = 'Font:', entry_width = 12,
|
||||
selectioncommand = self.setSignBaslineFont, history = 0,
|
||||
scrolledlist_items = fontList)
|
||||
self.fontMenu.selectitem(fontList[0])
|
||||
self.fontMenu.grid(row=2, column=3, columnspan=3)
|
||||
|
||||
signButtonFrame = Frame(gridFrame)
|
||||
|
||||
self.bigFirstLetterIntVar = IntVar()
|
||||
@ -3947,6 +3951,7 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
return target
|
||||
|
||||
def selectSignBaseline(self, val):
|
||||
print "\nselectSignBaseline:", val
|
||||
if not self.currentSignDNA:
|
||||
return
|
||||
# Temporarily undefine DNATarget (this will speed
|
||||
@ -4037,7 +4042,8 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
if val == '<custom>':
|
||||
return
|
||||
elif val == 'Zero':
|
||||
self.currentBaselineDNA=None
|
||||
self.levelEditor.replaceSelectedEnabled=0
|
||||
|
||||
# Don't set string: self.baselineString.set('')
|
||||
self.addCurveFloater.set(0)
|
||||
self.addKernFloater.set(0)
|
||||
@ -4047,18 +4053,21 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
self.bigFirstLetterIntVar.set(0)
|
||||
self.allCapsIntVar.set(0)
|
||||
self.dropShadowIntVar.set(0)
|
||||
self.currentBaselineDNA=baseline
|
||||
|
||||
target=self.levelEditor.DNATarget
|
||||
self.levelEditor.DNATarget=None
|
||||
self.fontMenu.selectitem(0)
|
||||
self.addXFloater.set(0)
|
||||
self.addZFloater.set(0)
|
||||
self.addScaleXFloater.set(1)
|
||||
self.addScaleZFloater.set(1)
|
||||
self.addRollFloater.set(0)
|
||||
self.levelEditor.DNATarget=target
|
||||
|
||||
self.bigFirstLetterIntVar.set(0)
|
||||
self.allCapsIntVar.set(0)
|
||||
self.dropShadowIntVar.set(0)
|
||||
|
||||
self.updateSelectedObjColor(Vec4(1.0))
|
||||
|
||||
self.levelEditor.replaceSelectedEnabled=1
|
||||
self.levelEditor.replaceSelected()
|
||||
return
|
||||
else:
|
||||
@ -4067,7 +4076,7 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
['baseline_style']['toontown_central']
|
||||
# TODO: toontown_centeral should not be hard coded.
|
||||
.getDict()[val])
|
||||
self.currentBaselineDNA=None
|
||||
self.levelEditor.replaceSelectedEnabled=0
|
||||
|
||||
# Don't set string: self.baselineString.set('')
|
||||
if settings['curve']:
|
||||
@ -4086,11 +4095,6 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
self.allCapsIntVar.set('c' in flags)
|
||||
self.dropShadowIntVar.set('d' in flags)
|
||||
|
||||
self.currentBaselineDNA=baseline
|
||||
|
||||
target=self.levelEditor.DNATarget
|
||||
self.levelEditor.DNATarget=None
|
||||
|
||||
if settings['code']:
|
||||
self.fontMenu.selectitem(settings['code'])
|
||||
if settings['x']:
|
||||
@ -4103,9 +4107,11 @@ class LevelEditorPanel(Pmw.MegaToplevel):
|
||||
self.addScaleZFloater.set(float(settings['scaleZ']))
|
||||
if settings['roll']:
|
||||
self.addRollFloater.set(float(settings['roll']))
|
||||
|
||||
if settings['color']:
|
||||
self.updateSelectedObjColor(settings['color'])
|
||||
|
||||
self.levelEditor.DNATarget=target
|
||||
|
||||
self.levelEditor.replaceSelectedEnabled=1
|
||||
self.levelEditor.replaceSelected()
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user