dabo Commit
Revision 4077
Date: 2008-05-11 09:34:15 -0700 (Sun, 11 May 2008)
Author: Ed
Trac: http://svn.dabodev.com/trac/dabo/changeset/4077
Changed:
U trunk/dabo/ui/uiwx/dEditor.py
Log:
Changed getAvailableLanguages() to a classmethod.
Tightened up the code in the changeSelectedTextCase() method.
Diff:
Modified: trunk/dabo/ui/uiwx/dEditor.py
===================================================================
--- trunk/dabo/ui/uiwx/dEditor.py 2008-05-05 22:20:03 UTC (rev 4076)
+++ trunk/dabo/ui/uiwx/dEditor.py 2008-05-11 16:34:15 UTC (rev 4077)
@@ -565,29 +565,28 @@
length = evt.GetLength()
headerLine = o.LineFromPosition(position)
o.Expand(headerLine, True)
-
- def changeSelectedTextCase(self, case):
- case = case[0].lower()
+
+
+ def changeSelectedTextCase(self, newcase):
+ newcase = newcase[0].lower()
pos = self.SelectionPosition
-
- if case == "u":
- self.ReplaceSelection(self.SelectedText.upper())
- elif case == "l":
- self.ReplaceSelection(self.SelectedText.lower())
- elif case == "c":
- self.ReplaceSelection(self.SelectedText.title())
- elif case == "i":
+ seltxt = self.SelectedText
+ if newcase == "i":
def invert(c):
if c.islower():
return c.upper()
else:
return c.lower()
-
self.ReplaceSelection("".join(map(invert,
self.SelectedText)))
else:
- raise ValueError, "Case must be either upper, lower,
capitalize, or invert."
-
+ try:
+ fnc = {"u": seltxt.upper, "l": seltxt.lower,
"c": seltxt.title,
+ "t": seltxt.title}[newcase]
+ self.ReplaceSelection(fnc())
+ except KeyError:
+ raise ValueError, "Case must be either upper,
lower, capitalize, or invert."
self.SelectionPosition = pos
+
def selectLine(self):
start =self.GetLineEndPosition(self.LineNumber-1)
@@ -598,13 +597,12 @@
end = self.GetLineEndPosition(self.LineNumber)
self.SelectionPosition = (start, end)
+
def selectWord(self):
whiteSpace = " \t\r\n"
syntaxDelimeters = """()[]{}"+-*/&%=\\;:"""
-
curPos = self.GetCurrentPos()
val = self.Value
-
if val[curPos] in syntaxDelimeters:
start=curPos
end=start+1
@@ -621,9 +619,9 @@
if val[end] in (whiteSpace + syntaxDelimeters):
break
end += 1
-
self.SelectionPosition = (start, end)
self.SetCurrentPos(end)
+
def OnSBScroll(self, evt):
# redirect the scroll events from the dyn_sash's scrollbars to
the STC
@@ -1032,11 +1030,12 @@
self.AutoCompCancel()
- def getAvailableLanguages(self):
+ def getAvailableLanguages(cls):
"""Returns an alphabetical list of all languages we have lexers
for."""
ret = LexerDic.keys()
ret.sort()
return ret
+ getAvailableLanguages = classmethod(getAvailableLanguages)
def setSyntaxColoring(self, color=None):
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: http://leafe.com/archives/byMID/[EMAIL PROTECTED]