Menu

[r4]: / SelectorList.py  Maximize  Restore  History

Download this file

90 lines (47 with data), 2.3 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
from Translator import *
import SimpleList
class SSSSelectorList(SimpleList.SSSSimpleList):
def __init__(self, text = '', parentObject = None):
super(SSSSelectorList, self).__init__(parentObject)
# self._selectors = []
if (text):
self._parse(text)
def _parse(self, selectorText):
# self._selectors = self.getSelectorsAsArray(selectorText)
# for key in self._selectors:
for key in self.getSelectorsAsArray(selectorText):
self.appendSelector(key)
def getSelectorsAsArray(self, selectorText):
splitList = trim(selectorText).split(',')
return splitList
def removeConsecutiveSpaces(self, string):
return trim(preg_replace(r'\s+', ' ', string))
def appendSelector(self, selector):
#if (selector == ' b'):
#pdb.set_trace()
self.appendItem(self.removeConsecutiveSpaces(selector))
def prependToAllSelectors(self, selectorText):
selectors_to_prepend = self.getSelectorsAsArray(selectorText)
new_array = []
for i in xrange(len(selectors_to_prepend)):
selector_to_prepend = selectors_to_prepend[i]
new_array = new_array + self.prependSelectorToAllSelectors(selector_to_prepend)
self.items = new_array
def prependSelectorToAllSelectors(self, selector_to_prepend):
current_selectors = self.getSelectorsAsArray(self.selectorText)
#foreach(current_selectors as key=>$current_selector):
for i in xrange(len(current_selectors)):
current_selectors[i] = self.removeConsecutiveSpaces(self.prependSelector(trim(selector_to_prepend), current_selectors[i]))
return current_selectors
def prependSelector(self, selector_to_prepend, selector):
return selector_to_prepend + ' ' + selector
def __call(self, method, args):
return super(SSSSelectorList, self).__call(method, args)
def get_selectors(self):
return self.items
selectors = property(get_selectors)
def selectorArrayToString(self, array):
return ", ".join(array)
def get_selectorText(self):
return self.selectorArrayToString(self.items)
selectorText = property(get_selectorText)
MongoDB Logo MongoDB