Subversion Repositories spk

Rev

Rev 124 | Rev 165 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 124 Rev 160
Line 18... Line 18...
18
		SStringList *strNode = new SStringList;
18
		SStringList *strNode = new SStringList;
19
		strNode->str = str;
19
		strNode->str = str;
20
		strNode->data = data;
20
		strNode->data = data;
21
		_lList->push_back(strNode);
21
		_lList->push_back(strNode);
22
	}
22
	}
-
 
23
 
-
 
24
	void CStringList::popBack()
-
 
25
	{
-
 
26
		if (!_lList->empty())
-
 
27
		{
-
 
28
			delete _lList->back();
-
 
29
			_lList->pop_back();
-
 
30
		}
-
 
31
	}
23
	void CStringList::pushBack(const String &str)
32
	void CStringList::pushBack(const String &str)
24
	{
33
	{
25
		pushBack(str, "");
34
		pushBack(str, "");
26
	}
35
	}
27
 
36
 
Line 35... Line 44...
35
	void CStringList::pushFront(const String &str)
44
	void CStringList::pushFront(const String &str)
36
	{
45
	{
37
		pushFront(str, "");
46
		pushFront(str, "");
38
	}
47
	}
39
 
48
 
-
 
49
	void CStringList::insertAt(int at, const String& str, const String& data)
-
 
50
	{
-
 
51
		SStringList* strNode = new SStringList;
-
 
52
		strNode->str = str;
-
 
53
		strNode->data = data;
-
 
54
		_lList->insertAt(at, strNode);
-
 
55
	}
-
 
56
	void CStringList::insertAt(int at, const String& str)
-
 
57
	{
-
 
58
		insertAt(at, str, "");
-
 
59
	}
-
 
60
 
40
	void CStringList::clear()
61
	void CStringList::clear()
41
	{
62
	{
42
		_lList->clear();
63
		_lList->clear();
43
	}
64
	}
44
 
65
 
Line 75... Line 96...
75
	Utils::SStringList *CStringList::next()
96
	Utils::SStringList *CStringList::next()
76
	{
97
	{
77
		return _lList->next();
98
		return _lList->next();
78
	}
99
	}
79
 
100
 
80
	CStringListIterator CStringList::begin()
101
	CStringListIterator CStringList::begin() const
81
	{
102
	{
82
		return _lList->begin();
103
		return _lList->begin();
83
	}
104
	}
84
 
105
 
85
	CStringListIterator CStringList::end()
106
	CStringListIterator CStringList::end() const
86
	{
107
	{
87
		return _lList->end();
108
		return _lList->end();
88
	}
109
	}
89
 
110
 
-
 
111
	Utils::String CStringList::front() const
-
 
112
	{
-
 
113
		auto front = _lList->front();
-
 
114
		if (front)
-
 
115
			return front->str;
-
 
116
		return Utils::String::Null();
-
 
117
	}
-
 
118
 
-
 
119
	Utils::String CStringList::back() const
-
 
120
	{
-
 
121
		auto front = _lList->back();
-
 
122
		if (front)
-
 
123
			return front->str;
-
 
124
		return Utils::String::Null();
-
 
125
	}
-
 
126
 
90
	Utils::SStringList *CStringList::get(int i)
127
	Utils::SStringList *CStringList::get(int i)
91
	{
128
	{
92
		return _lList->get(i);
129
		return _lList->get(i);
93
	}
130
	}
94
 
131
 
Line 110... Line 147...
110
		}
147
		}
111
 
148
 
112
		return String::Null();
149
		return String::Null();
113
	}
150
	}
114
 
151
 
-
 
152
	int CStringList::findStringAndData(const Utils::String& str, const Utils::String& data, bool bIgnoreCase) const
-
 
153
	{
-
 
154
		size_t pos = 0;
-
 
155
		for (CList<SStringList>::iterator itr = _lList->begin(); itr != _lList->end(); itr++, pos++) {
-
 
156
			if ((*itr)->str.Compare(str, !bIgnoreCase))
-
 
157
			{
-
 
158
				if ((*itr)->data.Compare(data, !bIgnoreCase))
-
 
159
					return static_cast<int>(pos);
-
 
160
			}
-
 
161
		}
-
 
162
 
-
 
163
		return -1;
-
 
164
	}
-
 
165
 
-
 
166
	bool CStringList::containsStringAndData(const Utils::String& str, const Utils::String& data, bool bIgnoreCase) const
-
 
167
	{
-
 
168
		size_t pos = 0;
-
 
169
		for (CList<SStringList>::iterator itr = _lList->begin(); itr != _lList->end(); itr++, pos++) {
-
 
170
			if ((*itr)->str.Compare(str, !bIgnoreCase))
-
 
171
			{
-
 
172
				if ((*itr)->data.Compare(data, !bIgnoreCase))
-
 
173
					return true;
-
 
174
			}
-
 
175
		}
-
 
176
 
-
 
177
		return false;
-
 
178
	}
-
 
179
 
115
	bool CStringList::containsData(const Utils::String &data, bool bIgnoreCase) const
180
	bool CStringList::containsData(const Utils::String &data, bool bIgnoreCase) const
116
	{
181
	{
117
		for (CList<SStringList>::iterator itr = _lList->begin(); itr != _lList->end(); itr++) {
182
		for (CList<SStringList>::iterator itr = _lList->begin(); itr != _lList->end(); itr++) {
118
			if ((*itr)->data.Compare(data, !bIgnoreCase))
183
			if ((*itr)->data.Compare(data, !bIgnoreCase))
119
				return true;
184
				return true;