Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1456 → Rev 1457

/programs/develop/libraries/box_lib/trunk/doc/t_edit/t_edit.htm
0,0 → 1,138
<html>
<head>
<title>ýëåìåíò Text Editor</title>
<meta http-equiv="content-type" content="text/html; charset=WINDOWS-1251">
<link href="../style.css" type=text/css rel=stylesheet>
</head>
 
<body>
<p><a href="../box_lib.htm">Íà ãëàâíóþ &uarr;</a></p>
<h1>Îãëàâëåíèå</h1>
 
<p><a href="#vveden">Ââåäåíèå</a></p>
<p><a href="#funct">Ôóíêöèè</a></p>
<ul>
<li><a href="#fun_but_copy">ted_but_copy</a></li>
</ul>
 
<h1><a name="vveden">Ââåäåíèå</a></h1>
<p>Ýëåìåíò text_editor ïîçâîëÿåò ðàáîòàòü ñ òåêñòîâûìè ôàéëàìè, ñîäåðæèò ìíîãî ôóíêöèÿ äëÿ ðåäàêòèðîâàíèÿ òåêñòà.</p>
<p><img src="../../../../../../other/t_edit/t_edit.png"></p>
<p>Âíåøíèé âèä ïðîãðàììû, ñ ýëåìåíòîì text_editor.</p>
 
<h2>Âîçìîæíîñòè</h2>
<ul>
<li>Îòêðûòèå (Ctrl+O)/Ñîõðàíåíèå ôàéëà.</li>
<li>Ðåäàêòèðîâàíèå: Ïîâòîð/Îòìåíà äåéñòâèÿ (Ctrl+Z), Âûðåçàòü/Êîïèðîâàòü (Ctrl+C)/Âñòàâèòü (Ctrl+V), Ïîèñê (Ctrl+F, F3).</li>
<li>Âûäåëåíèå öâåòîì ñëîâ, çàäàííûõ â ôàéëå ñèíòàêñèñà. Âûâîä ñïðàâêè ïî íèì, åñëè îíà åñòü (íàæàòèåì F1 êîãäà êóðñîð íà ñëîâå).</li>
</ul>
 
<h2>Íåêîòîðûå íåäîðàáîòêè</h2>
<ul>
<li>Åñëè îòêðûòü áîëüøîé ôàéë, ðàçìåð êîòîðîãî áîëüøå ÷åì:
maxChars equ 100002 ;(...+2)
îí îòêðîåòñÿ íå âåñü, à ïåðâûå maxChars-2 ñèìâîëîâ èç ôàéëà
(î ÷åì âûäàåòñÿ ñîîáùåíèå).</li>
<li>Ïðè ñîõðàíåíèè ïðîãðàììà íå ñïðàøèâàåò î çàìåíå ñóùåñòâ. ôàéëà.</li>
</ul>
 
<h2>Î ðàáîòå ïðîãðàììû</h2>
<p>Ðàçäåë äëÿ ïðîãðàììèñòîâ (è èíòåðåñóþùèõñÿ ëþäåé), â êîòîðîì ðàñêàçàíû
íåêîòîðûå èäåè, íà êîòîðûõ ïîñòðîåíà äàííàÿ ïðîãðàììà.</p>
 
<p>Äëÿ ðàáîòû ñ òåêñòîì ïðîãðàììà èñïîëüçóåò ñòðóêòóðû:</p>
<pre>struct symbol
c db ? ; +0 ñèìâîë
col db ? ; +1 öâåò
perv dd ? ; +2
next dd ? ; +6 óêàçàòåëè
tc dd ? ; +10 âðåì. ñîçäàíèÿ
td dd ? ; +14 âðåì. óäàëåíèÿ
ends</pre>
<p>Êàæäàÿ èç òàêèõ ñòðóêòóð ñîõðàíÿåò îäèí ñèìâîë â ïåðåìåííîé 'c'. Ïåðåìåííûå
'perv' è 'next' õðàíÿò èíäåêñû ïåðâîãî è ñëåäóþùåãî ñèìâîëîâ. Áëàãîäàðÿ ÷åìó
òåêñò ñîçäàåòñÿ â âèäå öåïî÷êè ñèìâîëîâ (äâóíàïðàâëåííûé ñïèñîê).</p>
<p><b>'tc'</b> - âðåìÿ ñîçäàíèÿ ñèìâîëà, ïðè îòìåíå äåéñòâèÿ òåêñòîâûé ðåäàêòîð "çíàåò"
êàêèå ñèìâîëû îòîáðàæàòü, à êàêèå íåò (õîòÿ âñå ñèìâîëû "âèñÿò" â ïàìÿòè).</p>
<p><b>'td'</b> - âðåìÿ óäàëåíèÿ ñèìâîëà, çàïîëíÿåòñÿ ïðè óäàëåíèè, ïðè îòìåíå äåéñòâèÿ
óäàëåíèÿ ñèìâîëîâ, òåêñò ìîæåò áûòü âîññòàíîâëåí.</p>
<p><b>'col'</b> - èñïîëüçóåòñÿ äëÿ öâåòîâîé ðàçìåòêè.</p>
 
<h1><a name="funct">Ôóíêöèè</a></h1>
<p>Ôóíêöèè íà ýêñïîðò:</p>
 
<h4><a name="fun_but_copy">ted_but_copy</a></h4>
 
<p>Ôóíêöèÿ êîòîðàÿ áóäåò âûçûâàòüñÿ ïðè íàæàòèè íà êíîïêó êîïèðîâàíèÿ â áóôåð èëè íà <b>Ctrl+C</b>.</p>
<p>Ïðèìåð èñïîëüçîâàíèÿ:</p>
<pre>stdcall [ted_but_copy], tedit0</pre>
 
<h4>ted_but_cut</h4><p></p>
<h4>ted_but_find_next</h4><p></p>
<h4>ted_but_paste</h4><p></p>
<h4>ted_but_redo</h4><p></p>
<h4>ted_but_reverse</h4><p></p>
<h4>ted_but_save_file</h4><p></p>
<h4>ted_but_select_word</h4><p></p>
<h4>ted_but_sumb_lover</h4><p></p>
<h4>ted_but_sumb_upper</h4><p></p>
<h4>ted_but_undo</h4><p></p>
<h4>ted_can_save</h4><p></p>
<h4>ted_clear</h4><p></p>
<h4>ted_delete</h4><p></p>
<h4>ted_draw</h4><p></p>
<h4>ted_init</h4><p></p>
<h4>ted_init_syntax_file</h4><p></p>
<h4>ted_is_select</h4><p></p>
<h4>ted_key</h4><p></p>
<h4>ted_mouse</h4><p></p>
<h4>ted_open_file</h4><p></p>
<h4>ted_text_add</h4><p></p>
<h4>ted_text_colored</h4><p></p>
 
<p>Âíóòðåííèå ôóíêöèè:</p>
<p><b>ted_get_text_perv_pos</b> - ïåðåõîä íà ïðåäûäóùèé ñèìâîë â öåïè (÷åðåç óêàçàòåëü 'perv')</p>
<p><b>ted_get_text_next_pos</b> - ïåðåõîä íà ñëåäóþùèé ñèìâîë â öåïè (÷åðåç óêàçàòåëü 'next')</p>
<p><b>ted_symbol_not_vis</b> - îïðåäåëÿåò âèäèìûé ëè óêàçàííûé ñèìâîë íà ýêðàíå (â çàâèñèìîñòè
îò çíà÷åíèé 'tc' è 'td')</p>
<p><b>ted_iterat_next</b> - ïåðåõîä íà ñëåäóþùèé âèäèìûé ñèìâîë â öåïè. Èñïîëüçóåò äëÿ
ðàáîòû ôóíêöèè ted_get_text_next_pos è ted_symbol_not_vis.</p>
<p><b>ted_iterat_perv</b> - ïåðåõîä íà ïðåäåäóùèé âèäèìûé ñèìâîë â öåïè.</p>
 
<p><b>ted_iterat_next_pos_char</b> - íàéòè ñëåäóþùóþ ïîçèöèþ óêàçàííîãî ñèìâîëà (edx-ïîç. íà÷àëà
ïîèñêà, bl->êîä èñêîìîãî ñèìâîëà)</p>
<p><b>ted_get_pos_by_coords</b> - áåðåò ïîçèöèþ ñèìâîëà ïî êîîðäèíàòàì (esi->êîîðä. x, çíàê;
ecx->êîîðä. y, ñòðîêà)</p>
<p><b>ted_go_to_pos</b> - ïåðåñòàâëÿåò êóðñîð â óêàçàííóþ ïîçèöèþ, åñëè óêàçàííàÿ ïîçèöèÿ
íàõîäèòñÿ âíå ýêðàíà, òî òàêæå ïåðåñòàâëÿþòñÿ ñêðîëèíãè (ecx->êîîðä. x, çíàê; edx->êîîðä. y, ñòðîêà)</p>
 
 
<h1>Ôîðìàò ôàéëà ïîäñâåòêè *.syn</h1>
<table>
<tr><th>Ýëåìåíò</th><th>Ðàçìåð (áàéò)</th></tr>
<tr><td>Êîëè÷åñòâî öâåòîâ òåêñòà</td>
<td><pre>4</pre></td></tr>
<tr><td>Êîëè÷åñòâî ïîäñâå÷èâàåìûõ ñëîâ</td>
<td><pre>4</pre></td></tr>
<tr><td>Öâåòà èíòåðôåéñà</td>
<td><pre>4*6</pre></td></tr>
<tr><td>Öâåòà äëÿ òåêñòà</td>
<td><pre>4*(êîë. öâ. òåêñòà)</pre></td></tr>
<tr><td>Ñòðóêòóðû ñî ñâîéñòâàìè è îïèñàíèÿìè ñëîâ</td>
<td><pre>sizeof(TexColViv)*(êîë. ñëîâ)</pre></td></tr>
<tr><td>Ðàçäåëèòåëüíûé ñèìâîë, îçíà÷àþùèé íà÷àëî îïèñàíèé ñëîâ (âñåãäà ðàâåí 0)</td>
<td><pre>1 áàéò</pre></td></tr>
<tr><td>Îïèñàíèÿ ñëîâ (ñòðîêè òåêñòà ñ 0-ìè â êîíöå)</td>
<td><pre>(äëèííà ñïðàâî÷íîãî òåêñòà + 1)</pre></td></tr>
</table>
<h4>Çàìå÷àíèÿ.</h4>
<ul>
<li>Âñå ñëîâà äîëæíû áûòü ðàñïîëîæåíû â ïîðÿäêå ñëåäîâàíèÿ èõ ASCII êîäîâ.
Âîçìîæíî â áóäóùèõ âåðñèÿõ ôîðìàò ôàéëîâ ïîäñâåòêè áóäåò èçìåíåí.</li>
</ul>
 
<hr>
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 29.04.10.</p>
 
</body>
</html>