source: ZMS/trunk/import/lists.charfmt.xml @ 666

Revision 666, 7.0 KB checked in by chris, 3 years ago (diff)

zms-2.11.1-800

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<list>
3<item type="dictionary"><dictionary>
4<item key="attrs"/>
5<item key="btn" type="image">
6<data width="20" height="20" content_type="image/gif" filename="icon_bulletlist.gif" type="image">47494638396114001400b30000040204fc02fc3432341c22140c0e04242a245452542c221c141214ed006412004c0000779b02fe0000ff0000ff0000ff21f90401000001002c000000001400140000042930c849abbd38ebcdbbff20374c40596e8520996785b08871042c80aa34bb11a41efec0a070481c4600003b</data></item>
7<item key="display"><![CDATA[Insert Bullet]]></item>
8<item key="id"><![CDATA[insert_bullet]]></item>
9<item key="js"><![CDATA[function zmiRicheditInsertBullet()
10{
11    var doc = document;
12    var fm = doc.forms['<dtml-var fmName>'];
13    var input = fm.elements['<dtml-var elName>'];
14    input.focus();
15    var insTab = '\t';
16    var insText = '\t* ';
17    /* internet explorer */
18    if( typeof doc.selection != 'undefined') {
19      var range = doc.selection.createRange();
20      // Move start of selection to start of line
21      var i = 0;
22      while ( true) {
23        var l = range.text.length;
24        range.moveStart('character',-1);
25        if ( range.text.length == l) {
26          break;
27        }
28        i += (range.text.length - l) + 1;
29        if ( range.text.substring( 0, i).indexOf( '\n') >= 0) {
30          range.moveStart('character',1);
31          break;
32        }
33      }
34      // Move end of selection to end of line
35      var i = 0;
36      while ( true) {
37        var l = range.text.length;
38        range.moveEnd('character',1);
39        if ( range.text.length == l) {
40          break;
41        }
42        if ( range.text.substring( l+i).lastIndexOf( '\n') >= 0) {
43          range.moveEnd('character',-1);
44          break;
45        }
46        i += 1;
47      }
48      // Insert tabs
49      var splitRange = range.text.split('\n');
50      var newText = "";
51      for ( var i = 0; i < splitRange.length; i++) {
52        if ( splitRange[i].indexOf( insText) >= 0 && splitRange[i].indexOf( insTab) == 0) {
53          newText += insTab + splitRange[i] + '\n';
54        }
55        else {
56          newText += insText + splitRange[i] + '\n';
57        }
58      }
59      // Insert text
60      range.text = newText;
61    }
62    /* newer gecko-based browsers */
63    else if( typeof input.selectionStart != 'undefined') {
64      // Move start of selection to start of line
65      var start = input.selectionStart;
66      while ( start > 0 && input.value.charAt( start) != '\n') {
67        start = start - 1;
68      }
69      if ( input.value.charAt( start) == '\n') {
70        start = start + 1;
71      }
72      // Move end of selection to end of line
73      var end = input.selectionEnd;
74      while ( end < input.value.length && input.value.charAt( end) != '\n') {
75        end = end + 1;
76      }
77      if ( input.value.charAt( end) == '\n') {
78        end = end - 1;
79      }
80      // Insert tabs
81      var splitRange = input.value.substr(start, end-start+1).split('\n');
82      var newText = "";
83      for ( var i = 0; i < splitRange.length; i++) {
84        if ( splitRange[i].indexOf( insText) >= 0 && splitRange[i].indexOf( insTab) == 0) {
85          newText += insTab + splitRange[i] + '\n';
86        }
87        else {
88          newText += insText + splitRange[i] + '\n';
89        }
90      }
91      newText = newText.substring( 0, newText.length - 1);
92      // Insert text
93      input.value = input.value.substr(0, start) + newText + input.value.substr(end+1);
94      // cursor-position
95      input.selectionStart = start;
96      input.selectionEnd = start + newText.length;
97    }
98}]]></item>
99<item key="tag"/>
100</dictionary>
101</item>
102<item type="dictionary"><dictionary>
103<item key="attrs"/>
104<item key="btn" type="image">
105<data width="20" height="20" content_type="image/gif" filename="icon_numlist.gif" type="image">47494638396114001400b30000040204fc02fc3432341c22140c0e04242a245452542c221c141214ed006412004c0000779b02fe0000ff0000ff0000ff21f90401000001002c000000001400140000042730c849abbd38ebcdbbff1ed00d142072855062886922c6319d5bba724445837cefffc0a0d01201003b</data></item>
106<item key="display"><![CDATA[Insert Enumeration]]></item>
107<item key="id"><![CDATA[insert_enumeration]]></item>
108<item key="js"><![CDATA[function zmiRicheditInsertEnummeration()
109{
110    var doc = document;
111    var fm = doc.forms['<dtml-var fmName>'];
112    var input = fm.elements['<dtml-var elName>'];
113    input.focus();
114    var insTab = '\t';
115    var insText = '\t# ';
116    /* internet explorer */
117    if( typeof doc.selection != 'undefined') {
118      var range = doc.selection.createRange();
119      // Move start of selection to start of line
120      var i = 0;
121      while ( true) {
122        var l = range.text.length;
123        range.moveStart('character',-1);
124        if ( range.text.length == l) {
125          break;
126        }
127        i += (range.text.length - l) + 1;
128        if ( range.text.substring( 0, i).indexOf( '\n') >= 0) {
129          range.moveStart('character',1);
130          break;
131        }
132      }
133      // Move end of selection to end of line
134      var i = 0;
135      while ( true) {
136        var l = range.text.length;
137        range.moveEnd('character',1);
138        if ( range.text.length == l) {
139          break;
140        }
141        if ( range.text.substring( l+i).lastIndexOf( '\n') >= 0) {
142          range.moveEnd('character',-1);
143          break;
144        }
145        i += 1;
146      }
147      // Insert tabs
148      var splitRange = range.text.split('\n');
149      var newText = "";
150      for ( var i = 0; i < splitRange.length; i++) {
151        if ( splitRange[i].indexOf( insText) >= 0 && splitRange[i].indexOf( insTab) == 0) {
152          newText += insTab + splitRange[i] + '\n';
153        }
154        else {
155          newText += insText + splitRange[i] + '\n';
156        }
157      }
158      // Insert text
159      range.text = newText;
160    }
161    /* newer gecko-based browsers */
162    else if( typeof input.selectionStart != 'undefined') {
163      // Move start of selection to start of line
164      var start = input.selectionStart;
165      while ( start > 0 && input.value.charAt( start) != '\n') {
166        start = start - 1;
167      }
168      if ( input.value.charAt( start) == '\n') {
169        start = start + 1;
170      }
171      // Move end of selection to end of line
172      var end = input.selectionEnd;
173      while ( end < input.value.length && input.value.charAt( end) != '\n') {
174        end = end + 1;
175      }
176      if ( input.value.charAt( end) == '\n') {
177        end = end - 1;
178      }
179      // Insert tabs
180      var splitRange = input.value.substr(start, end-start+1).split('\n');
181      var newText = "";
182      for ( var i = 0; i < splitRange.length; i++) {
183        if ( splitRange[i].indexOf( insText) >= 0 && splitRange[i].indexOf( insTab) == 0) {
184          newText += insTab + splitRange[i] + '\n';
185        }
186        else {
187          newText += insText + splitRange[i] + '\n';
188        }
189      }
190      newText = newText.substring( 0, newText.length - 1);
191      // Insert text
192      input.value = input.value.substr(0, start) + newText + input.value.substr(end+1);
193      // cursor-position
194      input.selectionStart = start;
195      input.selectionEnd = start + newText.length;
196    }
197}]]></item>
198<item key="tag"/>
199</dictionary>
200</item>
201</list>
Note: See TracBrowser for help on using the repository browser.