forked from fdorg/flashdevelop
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBBCodeTagMatch.cs
More file actions
123 lines (105 loc) · 4.06 KB
/
BBCodeTagMatch.cs
File metadata and controls
123 lines (105 loc) · 4.06 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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
using System;
using System.Collections.Generic;
namespace PluginCore.BBCode
{
public class BBCodeTagMatch : BBCodeTagInfo, IPairTagMatch
{
public BBCodeTagMatch(Boolean isTagOpener)
{
_init(isTagOpener, -1, null, null, null, 0, 0, true);
}
public BBCodeTagMatch(Boolean isTagOpener,
int tagIndex,
String tagValue,
String tagName,
String tagParam,
uint numOpenBraceSlashes,
uint numCloseBraceSlashes,
Boolean autoGenerateCloserInfo)
{
_init(isTagOpener, tagIndex, tagValue, tagName, tagParam, numOpenBraceSlashes, numCloseBraceSlashes, autoGenerateCloserInfo);
}
private void _init(Boolean isTagOpener,
int tagIndex,
String tagValue,
String tagName,
String tagParam,
uint numOpenBraceSlashes,
uint numCloseBraceSlashes,
Boolean autoGenerateCloserInfo)
{
_init_BBCodeTagInfo(isTagOpener, tagName, tagParam);
_tagIndex = tagIndex;
_tagValue = tagValue != null ? tagValue : "";
_tagLength = (uint)_tagValue.Length;
_numOpenBraceSlashes = numOpenBraceSlashes;
_numCloseBraceSlashes = numCloseBraceSlashes;
_tagCloserInfos = new List<BBCodeTagInfo>();
if (autoGenerateCloserInfo && isTagOpener && !string.IsNullOrEmpty(tagName))
_tagCloserInfos.Add(new BBCodeTagInfo(false, tagName, null));
}
private int _tagIndex;
private uint _tagLength;
private String _tagValue;
private uint _numOpenBraceSlashes;
private uint _numCloseBraceSlashes;
private List<BBCodeTagInfo> _tagCloserInfos;
private BBCodeStyle _bbCodeStyle;
public int tagIndex
{
get { return _tagIndex; }
}
public uint tagLength
{
get { return _tagLength; }
}
public String tagValue
{
get { return _tagValue; }
}
public uint numOpenBraceSlashes
{
get { return _numOpenBraceSlashes; }
}
public uint numCloseBraceSlashes
{
get { return _numCloseBraceSlashes; }
}
public List<BBCodeTagInfo> tagCloserInfos
{
get { return new List<BBCodeTagInfo>(_tagCloserInfos); }
set
{
if (!this.isTagOpener)
throw new Exception("Closer tag infos can be assigned to this only if this is opener");
else
_tagCloserInfos = value != null ? new List<BBCodeTagInfo>(value) : new List<BBCodeTagInfo>();
}
}
public BBCodeStyle bbCodeStyle
{
get { return _bbCodeStyle; }
set
{
if (!this.isTagOpener)
throw new Exception("BBCode style can be assigned to this only if this is opener");
else
_bbCodeStyle = value;
}
}
override public String ToString()
{
return "[bbCodeTagMatch"
+ " isTagOpener=" + this.isTagOpener
+ " tagIndex=" + _tagIndex.ToString()
+ " tagLength=" + _tagLength.ToString()
+ " tagValue='" + _tagValue + "'"
+ " tagName='" + this.tagName + "'"
+ " tagParam='" + this.tagParam + "'"
+ " numOpenBraceSlashes='" + _numOpenBraceSlashes.ToString() + "'"
+ " numCloseBraceSlashes='" + _numCloseBraceSlashes.ToString() + "'"
+ " bbCodeStyle='" + (_bbCodeStyle == null ? "null" : _bbCodeStyle.ToString()) + "'"
+ "]";
}
}
}