mirror of
https://github.com/Zeal-Operating-System/ZealOS.git
synced 2024-12-30 17:26:31 +00:00
dbf8647d59
Added top & right borders to RawDr. Improved spacing in some debug and compiler reporting. Fixed RawPutChar and EdLite tab width. Fixed Ui missing '0x' prefix syntax highlighter bug. Added 32BitPaint demo.
983 lines
116 KiB
HTML
Executable file
983 lines
116 KiB
HTML
Executable file
<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html;charset=US-ASCII">
|
|
<meta name="generator" content="ZealOS V0.08">
|
|
<style type="text/css">
|
|
body {background-color:#000000;}
|
|
.cF0{color:#ffffff;background-color:#000000;}
|
|
.cF1{color:#3465a4;background-color:#000000;}
|
|
.cF2{color:#4e9a06;background-color:#000000;}
|
|
.cF3{color:#06989a;background-color:#000000;}
|
|
.cF4{color:#a24444;background-color:#000000;}
|
|
.cF5{color:#75507b;background-color:#000000;}
|
|
.cF6{color:#ce982f;background-color:#000000;}
|
|
.cF7{color:#bcc0b9;background-color:#000000;}
|
|
.cF8{color:#555753;background-color:#000000;}
|
|
.cF9{color:#729fcf;background-color:#000000;}
|
|
.cFA{color:#82bc49;background-color:#000000;}
|
|
.cFB{color:#34e2e2;background-color:#000000;}
|
|
.cFC{color:#ac3535;background-color:#000000;}
|
|
.cFD{color:#ad7fa8;background-color:#000000;}
|
|
.cFE{color:#fce94f;background-color:#000000;}
|
|
.cFF{color:#000000;background-color:#000000;}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<pre style="font-family:monospace;font-size:12pt">
|
|
<a name="l1"></a><span class=cF0>#</span><span class=cF1>help_index</span><span class=cF0> </span><span class=cF6>"DolDoc/Output;StdOut/DolDoc"</span><span class=cF0>
|
|
<a name="l2"></a>
|
|
<a name="l3"></a></span><span class=cF1>public</span><span class=cF0> </span><span class=cF1>U0</span><span class=cF0> </span><span class=cF5>DocPutKey</span><span class=cF0>(</span><span class=cF9>CDoc</span><span class=cF0> *doc, </span><span class=cF9>I64</span><span class=cF0> ch=</span><span class=cFE>0</span><span class=cF0>, </span><span class=cF9>I64</span><span class=cF0> sc=</span><span class=cFE>0</span><span class=cF0>)
|
|
<a name="l4"></a>{</span><span class=cF2>//</span><a href="https://tomawezome.github.io/ZealOS/Kernel/KeyDev.CC.html#l1"><span class=cF4>PutKey</span></a><span class=cF2>(ch,sc) at doc insert pt, cur_entry.</span><span class=cF0>
|
|
<a name="l5"></a> </span><span class=cF9>I64</span><span class=cF0> i, x, y;
|
|
<a name="l6"></a> </span><span class=cF9>CDoc</span><span class=cF0> *m;
|
|
<a name="l7"></a> </span><span class=cF9>CDocEntry</span><span class=cF0> *doc_ce;
|
|
<a name="l8"></a> </span><span class=cF1>U8</span><span class=cF0> *st, *st2;
|
|
<a name="l9"></a> </span><span class=cF1>Bool</span><span class=cF0> unlock;
|
|
<a name="l10"></a>
|
|
<a name="l11"></a> </span><span class=cF1>if</span><span class=cF0> (!doc && !</span><span class=cF7>(</span><span class=cF0>doc = </span><span class=cF5>DocPut</span><span class=cF7>)</span><span class=cF0> || doc->doc_signature != </span><span class=cF3>DOC_SIGNATURE_VAL</span><span class=cF0>)
|
|
<a name="l12"></a> </span><span class=cF1>return</span><span class=cF0>;
|
|
<a name="l13"></a> </span><span class=cF1>if</span><span class=cF0> (doc->user_put_key && </span><span class=cF7>(</span><span class=cF0>*doc->user_put_key</span><span class=cF7>)(</span><span class=cF0>doc, doc->user_put_data, ch, sc</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l14"></a> </span><span class=cF1>return</span><span class=cF0>;
|
|
<a name="l15"></a> unlock = </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l16"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF5>Bt</span><span class=cF7>(</span><span class=cFB>doldoc</span><span class=cF0>.clean_scan_codes, sc.u8[</span><span class=cFE>0</span><span class=cF0>]</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l17"></a> doc->flags |= </span><span class=cF3>DOCF_UNDO_DIRTY</span><span class=cF0>;
|
|
<a name="l18"></a> </span><span class=cF5>DocCaptureUndo</span><span class=cF0>(doc);
|
|
<a name="l19"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>Bt</span><span class=cF7>(</span><span class=cFB>char_bmp_printable</span><span class=cF0>, ch</span><span class=cF7>)</span><span class=cF0> && !</span><span class=cF7>(</span><span class=cF0>sc & (</span><span class=cF3>SCF_CTRL</span><span class=cF0> | </span><span class=cF3>SCF_ALT</span><span class=cF0>)</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l20"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l21"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l22"></a> {
|
|
<a name="l23"></a> st = </span><span class=cF5>Char2KeyName</span><span class=cF0>(ch, </span><span class=cF3>FALSE</span><span class=cF0>);
|
|
<a name="l24"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Char /'%s'"</span><span class=cF0>, st);
|
|
<a name="l25"></a> </span><span class=cF5>Free</span><span class=cF0>(st);
|
|
<a name="l26"></a> }
|
|
<a name="l27"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l28"></a> </span><span class=cF5>EdCharIns</span><span class=cF0>(ch, sc, doc);
|
|
<a name="l29"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l30"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l31"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l32"></a> doc_ce = doc->cur_entry;
|
|
<a name="l33"></a> x =doc->x;
|
|
<a name="l34"></a> y = doc->y;
|
|
<a name="l35"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_ALT</span><span class=cF0>)
|
|
<a name="l36"></a> </span><span class=cF1>switch</span><span class=cF0> (ch)
|
|
<a name="l37"></a> {
|
|
<a name="l38"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_BACKSPACE</span><span class=cF0>: </span><span class=cF2>//<CTRL-H></span><span class=cF0>
|
|
<a name="l39"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & (</span><span class=cF3>SCF_SHIFT</span><span class=cF0> | </span><span class=cF3>SCF_CTRL</span><span class=cF0>)</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l40"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l41"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l42"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Undo"</span><span class=cF0>);
|
|
<a name="l43"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l44"></a> </span><span class=cF5>DocUndoRestore</span><span class=cF0>(doc);
|
|
<a name="l45"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l46"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l47"></a> }
|
|
<a name="l48"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l49"></a> </span><span class=cF1>switch</span><span class=cF0> (ch)
|
|
<a name="l50"></a> {
|
|
<a name="l51"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cFE>0</span><span class=cF0>:
|
|
<a name="l52"></a> </span><span class=cF1>switch</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>])
|
|
<a name="l53"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l54"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_CURSOR_DOWN</span><span class=cF0>:
|
|
<a name="l55"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l56"></a> {
|
|
<a name="l57"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l58"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l59"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l60"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Down, Sel"</span><span class=cF0>);
|
|
<a name="l61"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l62"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Down"</span><span class=cF0>);
|
|
<a name="l63"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l64"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l65"></a> </span><span class=cF5>EdLineDown</span><span class=cF0>(doc, sc);
|
|
<a name="l66"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l67"></a> }
|
|
<a name="l68"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l69"></a> sc &= ~</span><span class=cF3>SCF_CTRL</span><span class=cF0>;
|
|
<a name="l70"></a></span><span class=cF2>//Fall Through to SC_END</span><span class=cF0>
|
|
<a name="l71"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_END</span><span class=cF0>:
|
|
<a name="l72"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l73"></a> {
|
|
<a name="l74"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l75"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l76"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l77"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Doc End, Sel"</span><span class=cF0>);
|
|
<a name="l78"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l79"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Doc End"</span><span class=cF0>);
|
|
<a name="l80"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l81"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l82"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l83"></a> </span><span class=cF1>while</span><span class=cF0> (doc_ce != doc)
|
|
<a name="l84"></a> {
|
|
<a name="l85"></a> </span><span class=cF5>BEqual</span><span class=cF0>(&doc_ce->type, </span><span class=cF3>DOCEt_SEL</span><span class=cF0>, sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>);
|
|
<a name="l86"></a> doc_ce = doc->cur_entry = doc_ce->next;
|
|
<a name="l87"></a> }
|
|
<a name="l88"></a> doc->cur_col = doc_ce->min_col;
|
|
<a name="l89"></a> </span><span class=cF5>DocFormBwd</span><span class=cF0>(doc);
|
|
<a name="l90"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l91"></a> }
|
|
<a name="l92"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l93"></a>
|
|
<a name="l94"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_CURSOR_UP</span><span class=cF0>:
|
|
<a name="l95"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l96"></a> {
|
|
<a name="l97"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l98"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l99"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l100"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Up, Sel"</span><span class=cF0>);
|
|
<a name="l101"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l102"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Up"</span><span class=cF0>);
|
|
<a name="l103"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l104"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l105"></a> </span><span class=cF5>EdLineUp</span><span class=cF0>(doc, sc);
|
|
<a name="l106"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l107"></a> }
|
|
<a name="l108"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l109"></a> sc &= ~</span><span class=cF3>SCF_CTRL</span><span class=cF0>;
|
|
<a name="l110"></a></span><span class=cF2>//Fall Through to SC_HOME</span><span class=cF0>
|
|
<a name="l111"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_HOME</span><span class=cF0>:
|
|
<a name="l112"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l113"></a> {
|
|
<a name="l114"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l115"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l116"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l117"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Top of Doc, Sel"</span><span class=cF0>);
|
|
<a name="l118"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l119"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Top of Doc"</span><span class=cF0>);
|
|
<a name="l120"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l121"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l122"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l123"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce == doc)
|
|
<a name="l124"></a> doc_ce = doc_ce->last;
|
|
<a name="l125"></a> </span><span class=cF1>while</span><span class=cF0> (doc_ce != doc)
|
|
<a name="l126"></a> {
|
|
<a name="l127"></a> </span><span class=cF5>BEqual</span><span class=cF0>(&doc_ce->type, </span><span class=cF3>DOCEt_SEL</span><span class=cF0>, sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>);
|
|
<a name="l128"></a> doc_ce = doc->cur_entry = doc_ce->last;
|
|
<a name="l129"></a> }
|
|
<a name="l130"></a> doc_ce = doc->cur_entry = doc->head.next;
|
|
<a name="l131"></a> doc->cur_col = doc_ce->min_col;
|
|
<a name="l132"></a> </span><span class=cF5>DocFormFwd</span><span class=cF0>(doc);
|
|
<a name="l133"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l134"></a> }
|
|
<a name="l135"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l136"></a>
|
|
<a name="l137"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_PAGE_DOWN</span><span class=cF0>:
|
|
<a name="l138"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l139"></a> {
|
|
<a name="l140"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l141"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l142"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l143"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Page Down, Sel"</span><span class=cF0>);
|
|
<a name="l144"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l145"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Page Down"</span><span class=cF0>);
|
|
<a name="l146"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l147"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l148"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l149"></a> i = doc_ce->y + doc->win_task->win_height - </span><span class=cFE>1</span><span class=cF0>;
|
|
<a name="l150"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce->type_u8 == </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0>)
|
|
<a name="l151"></a> i += doc->cur_col / </span><span class=cFE>3</span><span class=cF0> / doc_ce->hex_ed_width;
|
|
<a name="l152"></a> </span><span class=cF1>while</span><span class=cF0> (doc_ce != doc &&
|
|
<a name="l153"></a> </span><span class=cF7>(</span><span class=cF0>doc_ce->type_u8 != </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0> && doc_ce->y < i ||
|
|
<a name="l154"></a> doc_ce->type_u8 == </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0> &&
|
|
<a name="l155"></a> doc_ce->y + doc->cur_col / </span><span class=cFE>3</span><span class=cF0> / doc_ce->hex_ed_width < i</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l156"></a> {
|
|
<a name="l157"></a> </span><span class=cF5>EdLineDown</span><span class=cF0>(doc, sc);
|
|
<a name="l158"></a></span><span class=cF2>//paranoid check for stuck on same node</span><span class=cF0>
|
|
<a name="l159"></a> </span><span class=cF1>if</span><span class=cF0> (doc->cur_entry == doc_ce && doc_ce->type_u8 != </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0>)
|
|
<a name="l160"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l161"></a> doc_ce = doc->cur_entry;
|
|
<a name="l162"></a> }
|
|
<a name="l163"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l164"></a> }
|
|
<a name="l165"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l166"></a>
|
|
<a name="l167"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_PAGE_UP</span><span class=cF0>:
|
|
<a name="l168"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l169"></a> {
|
|
<a name="l170"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l171"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l172"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l173"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Page Up, Sel"</span><span class=cF0>);
|
|
<a name="l174"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l175"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Page Up"</span><span class=cF0>);
|
|
<a name="l176"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l177"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l178"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l179"></a> i = doc_ce->y - (doc->win_task->win_height - </span><span class=cFE>1</span><span class=cF0>);
|
|
<a name="l180"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce->type_u8 == </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0>)
|
|
<a name="l181"></a> i += doc->cur_col / </span><span class=cFE>3</span><span class=cF0> / doc_ce->hex_ed_width;
|
|
<a name="l182"></a> </span><span class=cF1>while</span><span class=cF0> (doc_ce->last != doc &&
|
|
<a name="l183"></a> </span><span class=cF7>(</span><span class=cF0>doc_ce->type_u8 != </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0> && doc_ce->y>i ||
|
|
<a name="l184"></a> doc_ce->type_u8 == </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0> &&
|
|
<a name="l185"></a> doc_ce->y + doc->cur_col / </span><span class=cFE>3</span><span class=cF0> / doc_ce->hex_ed_width > i</span><span class=cF7>)</span><span class=cF0> &&
|
|
<a name="l186"></a> doc_ce->y != doc->head.next->y)
|
|
<a name="l187"></a> {
|
|
<a name="l188"></a> </span><span class=cF5>EdLineUp</span><span class=cF0>(doc, sc);
|
|
<a name="l189"></a></span><span class=cF2>//paranoid check for stuck on same node</span><span class=cF0>
|
|
<a name="l190"></a> </span><span class=cF1>if</span><span class=cF0> (doc->cur_entry == doc_ce && doc_ce->type_u8 != </span><span class=cF3>DOCT_HEX_ED</span><span class=cF0>)
|
|
<a name="l191"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l192"></a> doc_ce = doc->cur_entry;
|
|
<a name="l193"></a> }
|
|
<a name="l194"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l195"></a> }
|
|
<a name="l196"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l197"></a>
|
|
<a name="l198"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_CURSOR_LEFT</span><span class=cF0>:
|
|
<a name="l199"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l200"></a> {
|
|
<a name="l201"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l202"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Start of Line"</span><span class=cF0>);
|
|
<a name="l203"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l204"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l205"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l206"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Left, Sel"</span><span class=cF0>);
|
|
<a name="l207"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l208"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Left"</span><span class=cF0>);
|
|
<a name="l209"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l210"></a> }
|
|
<a name="l211"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l212"></a> </span><span class=cF5>EdCursorLeft</span><span class=cF0>(doc, sc);
|
|
<a name="l213"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l214"></a>
|
|
<a name="l215"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_CURSOR_RIGHT</span><span class=cF0>:
|
|
<a name="l216"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l217"></a> {
|
|
<a name="l218"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l219"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo End of Line"</span><span class=cF0>);
|
|
<a name="l220"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l221"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l222"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l223"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Right, Sel"</span><span class=cF0>);
|
|
<a name="l224"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l225"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cursor Right"</span><span class=cF0>);
|
|
<a name="l226"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l227"></a> }
|
|
<a name="l228"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l229"></a> </span><span class=cF5>EdCursorRight</span><span class=cF0>(doc, sc);
|
|
<a name="l230"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l231"></a>
|
|
<a name="l232"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_DELETE</span><span class=cF0>:
|
|
<a name="l233"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l234"></a> {
|
|
<a name="l235"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l236"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l237"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l238"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cut To Clip"</span><span class=cF0>);
|
|
<a name="l239"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l240"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Char /Delete"</span><span class=cF0>);
|
|
<a name="l241"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l242"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l243"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l244"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l245"></a> </span><span class=cF5>ClipCut</span><span class=cF0>(doc);
|
|
<a name="l246"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l247"></a> </span><span class=cF5>EdCharDel</span><span class=cF0>(doc);
|
|
<a name="l248"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l249"></a> }
|
|
<a name="l250"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l251"></a>
|
|
<a name="l252"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_INS</span><span class=cF0>:
|
|
<a name="l253"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF7>(</span><span class=cF3>SCF_SHIFT</span><span class=cF0> | </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0> != </span><span class=cF7>(</span><span class=cF3>SCF_SHIFT</span><span class=cF0> | </span><span class=cF3>SCF_CTRL</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l254"></a> {
|
|
<a name="l255"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l256"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l257"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l258"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Paste Clip"</span><span class=cF0>);
|
|
<a name="l259"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l260"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Copy to Clip"</span><span class=cF0>);
|
|
<a name="l261"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l262"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Toggle Overstrike"</span><span class=cF0>);
|
|
<a name="l263"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l264"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l265"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l266"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l267"></a> </span><span class=cF5>ClipPaste</span><span class=cF0>(doc);
|
|
<a name="l268"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l269"></a> </span><span class=cF5>ClipCopy</span><span class=cF0>(doc);
|
|
<a name="l270"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l271"></a> doc->flags ^= </span><span class=cF3>DOCF_OVERSTRIKE</span><span class=cF0>;
|
|
<a name="l272"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l273"></a> }
|
|
<a name="l274"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l275"></a>
|
|
<a name="l276"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F11</span><span class=cF0>:
|
|
<a name="l277"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F12</span><span class=cF0>:
|
|
<a name="l278"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F1</span><span class=cF0>...</span><span class=cF3>SC_F10</span><span class=cF0>:
|
|
<a name="l279"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l280"></a> {
|
|
<a name="l281"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l282"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l283"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l284"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Src Code of Sym"</span><span class=cF0>);
|
|
<a name="l285"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l286"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Autocomplete Sym"</span><span class=cF0>);
|
|
<a name="l287"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l288"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l289"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l290"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l291"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>AutoComplete</span><span class=cF7>(</span><span class=cF3>ON</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l292"></a> {
|
|
<a name="l293"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l294"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l295"></a> </span><span class=cF1>if</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>] == </span><span class=cF3>SC_F11</span><span class=cF0>)
|
|
<a name="l296"></a> </span><span class=cF5>ACMan</span><span class=cF0>(</span><span class=cFE>11</span><span class=cF0>, </span><span class=cF5>Fs</span><span class=cF0>);
|
|
<a name="l297"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>] == </span><span class=cF3>SC_F12</span><span class=cF0>)
|
|
<a name="l298"></a> </span><span class=cF5>ACMan</span><span class=cF0>(</span><span class=cFE>12</span><span class=cF0>, </span><span class=cF5>Fs</span><span class=cF0>);
|
|
<a name="l299"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l300"></a> </span><span class=cF5>ACMan</span><span class=cF0>(sc.u8[</span><span class=cFE>0</span><span class=cF0>]-</span><span class=cF3>SC_F1</span><span class=cF0> + </span><span class=cFE>1</span><span class=cF0>, </span><span class=cF5>Fs</span><span class=cF0>);
|
|
<a name="l301"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l302"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l303"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l304"></a> </span><span class=cF1>if</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>] == </span><span class=cF3>SC_F11</span><span class=cF0>)
|
|
<a name="l305"></a> </span><span class=cF5>ACFillIn</span><span class=cF0>(</span><span class=cFE>11</span><span class=cF0>);
|
|
<a name="l306"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>] == </span><span class=cF3>SC_F12</span><span class=cF0>)
|
|
<a name="l307"></a> </span><span class=cF5>ACFillIn</span><span class=cF0>(</span><span class=cFE>12</span><span class=cF0>);
|
|
<a name="l308"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l309"></a> </span><span class=cF5>ACFillIn</span><span class=cF0>(sc.u8[</span><span class=cFE>0</span><span class=cF0>] - </span><span class=cF3>SC_F1</span><span class=cF0> + </span><span class=cFE>1</span><span class=cF0>);
|
|
<a name="l310"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l311"></a> }
|
|
<a name="l312"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l313"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l314"></a> }
|
|
<a name="l315"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l316"></a> {
|
|
<a name="l317"></a> </span><span class=cF1>switch</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>])
|
|
<a name="l318"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l319"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F1</span><span class=cF0>:
|
|
<a name="l320"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l321"></a> {
|
|
<a name="l322"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l323"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /About"</span><span class=cF0>);
|
|
<a name="l324"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l325"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Help"</span><span class=cF0>);
|
|
<a name="l326"></a> }
|
|
<a name="l327"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l328"></a> {
|
|
<a name="l329"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l330"></a> </span><span class=cF5>Ed</span><span class=cF0>(</span><span class=cF6>"::/Doc/AboutZealOS.DD"</span><span class=cF0>);
|
|
<a name="l331"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l332"></a> </span><span class=cF5>Ed</span><span class=cF0>(</span><span class=cF6>"::/Doc/HelpIndex.DD"</span><span class=cF0>);
|
|
<a name="l333"></a> }
|
|
<a name="l334"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l335"></a>
|
|
<a name="l336"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F2</span><span class=cF0>:
|
|
<a name="l337"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l338"></a> {
|
|
<a name="l339"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l340"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Play Macro"</span><span class=cF0>);
|
|
<a name="l341"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l342"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Macro"</span><span class=cF0>);
|
|
<a name="l343"></a> }
|
|
<a name="l344"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l345"></a> {
|
|
<a name="l346"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l347"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l348"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l349"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>TaskValidate</span><span class=cF7>(</span><span class=cFB>sys_macro_task</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l350"></a> </span><span class=cF5>MessagePostWait</span><span class=cF0>(</span><span class=cFB>sys_macro_task</span><span class=cF0>, </span><span class=cF3>MESSAGE_KEY_DOWN_UP</span><span class=cF0>, </span><span class=cF3>CH_SHIFT_ESC</span><span class=cF0>, </span><span class=cFE>0</span><span class=cF0>);
|
|
<a name="l351"></a> </span><span class=cF5>SysMacroStripKey</span><span class=cF0>(&</span><span class=cFB>sys_macro_head</span><span class=cF0>, ch, sc);
|
|
<a name="l352"></a> </span><span class=cF5>PlaySysMacro</span><span class=cF0>;
|
|
<a name="l353"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l354"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l355"></a> </span><span class=cF5>EdMacroUtil</span><span class=cF0>;
|
|
<a name="l356"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l357"></a> }
|
|
<a name="l358"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l359"></a>
|
|
<a name="l360"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F3</span><span class=cF0>:
|
|
<a name="l361"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l362"></a> {
|
|
<a name="l363"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l364"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Find Last"</span><span class=cF0>);
|
|
<a name="l365"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l366"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Find Next"</span><span class=cF0>);
|
|
<a name="l367"></a> }
|
|
<a name="l368"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l369"></a> {
|
|
<a name="l370"></a> doc->find_replace->scan_fwd = !(sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>);
|
|
<a name="l371"></a> </span><span class=cF5>EdFindNext</span><span class=cF0>(doc);
|
|
<a name="l372"></a> }
|
|
<a name="l373"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l374"></a>
|
|
<a name="l375"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F4</span><span class=cF0>:
|
|
<a name="l376"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l377"></a> {
|
|
<a name="l378"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l379"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Insert Directory Name"</span><span class=cF0>);
|
|
<a name="l380"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l381"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Insert FileName"</span><span class=cF0>);
|
|
<a name="l382"></a> }
|
|
<a name="l383"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l384"></a> {
|
|
<a name="l385"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l386"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l387"></a> st = </span><span class=cF5>PopUpPickDir</span><span class=cF0>;
|
|
<a name="l388"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l389"></a> st = </span><span class=cF5>PopUpPickFile</span><span class=cF0>;
|
|
<a name="l390"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l391"></a> </span><span class=cF1>if</span><span class=cF0> (st)
|
|
<a name="l392"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l393"></a> </span><span class=cF5>DocPrintPartial</span><span class=cF0>(doc, </span><span class=cF6>"%s"</span><span class=cF0>, st);
|
|
<a name="l394"></a> </span><span class=cF5>Free</span><span class=cF0>(st);
|
|
<a name="l395"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l396"></a> }
|
|
<a name="l397"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l398"></a>
|
|
<a name="l399"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F5</span><span class=cF0>:
|
|
<a name="l400"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l401"></a> {
|
|
<a name="l402"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l403"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /System Include"</span><span class=cF0>);
|
|
<a name="l404"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l405"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Run (Execute)"</span><span class=cF0>);
|
|
<a name="l406"></a> }
|
|
<a name="l407"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l408"></a> {
|
|
<a name="l409"></a> </span><span class=cF1>if</span><span class=cF0> (st2 = </span><span class=cF5>DocEntryLink</span><span class=cF7>(</span><span class=cF0>doc, doc_ce</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l410"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l411"></a> st = </span><span class=cF5>DocLinkFile</span><span class=cF0>(st2);
|
|
<a name="l412"></a> </span><span class=cF5>Free</span><span class=cF0>(st2);
|
|
<a name="l413"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l414"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l415"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l416"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>DriveIsWritable</span><span class=cF0>)
|
|
<a name="l417"></a> {
|
|
<a name="l418"></a> </span><span class=cF5>DocWrite</span><span class=cF0>(doc);
|
|
<a name="l419"></a> st = </span><span class=cF5>StrNew</span><span class=cF0>(doc->filename.name);
|
|
<a name="l420"></a> }
|
|
<a name="l421"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l422"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>PopUpCancelOk</span><span class=cF7>(</span><span class=cF3>ST_WARN_ST</span><span class=cF0> </span><span class=cF6>"Drive not writable.\nCompile file stored on drive?"</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l423"></a> st = </span><span class=cF5>StrNew</span><span class=cF0>(doc->filename.name);
|
|
<a name="l424"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l425"></a> </span><span class=cF1>if</span><span class=cF0> (st2 = </span><span class=cF5>DirFile</span><span class=cF7>(</span><span class=cF0>st, </span><span class=cF6>"Run"</span><span class=cF0>, </span><span class=cF6>"CC"</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l426"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l427"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>FileFind</span><span class=cF7>(</span><span class=cF0>st2</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l428"></a> {
|
|
<a name="l429"></a> </span><span class=cF5>Free</span><span class=cF0>(st);
|
|
<a name="l430"></a> st = st2;
|
|
<a name="l431"></a> }
|
|
<a name="l432"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l433"></a> </span><span class=cF5>Free</span><span class=cF0>(st2);
|
|
<a name="l434"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l435"></a> </span><span class=cF1>if</span><span class=cF0> (st)
|
|
<a name="l436"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l437"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l438"></a> </span><span class=cF5>SysFile</span><span class=cF0>(st);
|
|
<a name="l439"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l440"></a> </span><span class=cF5>PopUpFile</span><span class=cF0>(st);
|
|
<a name="l441"></a> </span><span class=cF5>Free</span><span class=cF0>(st);
|
|
<a name="l442"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l443"></a> }
|
|
<a name="l444"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l445"></a>
|
|
<a name="l446"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F6</span><span class=cF0>:
|
|
<a name="l447"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l448"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /God Song"</span><span class=cF0>);
|
|
<a name="l449"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l450"></a> </span><span class=cF5>GodSong</span><span class=cF0>;
|
|
<a name="l451"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l452"></a>
|
|
<a name="l453"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>SC_F7</span><span class=cF0>:
|
|
<a name="l454"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l455"></a> {
|
|
<a name="l456"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l457"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /God Passage"</span><span class=cF0>);
|
|
<a name="l458"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l459"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /God Word"</span><span class=cF0>);
|
|
<a name="l460"></a> }
|
|
<a name="l461"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l462"></a> {
|
|
<a name="l463"></a> </span><span class=cF5>FifoU8Flush</span><span class=cF0>(</span><span class=cFB>god</span><span class=cF0>.fifo);
|
|
<a name="l464"></a> </span><span class=cF5>GodBitsInsert</span><span class=cF0>(</span><span class=cF3>GOD_GOOD_BITS</span><span class=cF0>, </span><span class=cF5>KbdMouseEventTime</span><span class=cF0> >> </span><span class=cF3>GOD_BAD_BITS</span><span class=cF0>);
|
|
<a name="l465"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l466"></a> </span><span class=cF5>GodBiblePassage</span><span class=cF0>;
|
|
<a name="l467"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l468"></a> </span><span class=cF5>GodWord</span><span class=cF0>;
|
|
<a name="l469"></a> }
|
|
<a name="l470"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l471"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l472"></a> }
|
|
<a name="l473"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l474"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l475"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l476"></a>
|
|
<a name="l477"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLA</span><span class=cF0>:
|
|
<a name="l478"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l479"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l480"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l481"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Save As"</span><span class=cF0>);
|
|
<a name="l482"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>DocWrite</span><span class=cF7>(</span><span class=cF0>doc, </span><span class=cF3>TRUE</span><span class=cF7>)</span><span class=cF0> && </span><span class=cF7>(</span><span class=cF0>st = </span><span class=cF5>FileNameAbs</span><span class=cF0>(doc->filename.name)</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l483"></a> {
|
|
<a name="l484"></a> </span><span class=cF5>DirContextDel</span><span class=cF0>(doc->filename.dirc);
|
|
<a name="l485"></a> doc->filename.dirc = </span><span class=cF5>DirContextNew</span><span class=cF0>(st);
|
|
<a name="l486"></a> </span><span class=cF5>Free</span><span class=cF0>(st);
|
|
<a name="l487"></a> }
|
|
<a name="l488"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l489"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l490"></a>
|
|
<a name="l491"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLB</span><span class=cF0>:
|
|
<a name="l492"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l493"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l494"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l495"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Toggle Border"</span><span class=cF0>);
|
|
<a name="l496"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l497"></a> </span><span class=cF5>WinBorder</span><span class=cF0>(</span><span class=cF5>Bt</span><span class=cF7>(</span><span class=cF0>&doc->win_task->display_flags, </span><span class=cF3>DISPLAYf_NO_BORDER</span><span class=cF7>)</span><span class=cF0>, doc->win_task);
|
|
<a name="l498"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l499"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l500"></a>
|
|
<a name="l501"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLC</span><span class=cF0>:
|
|
<a name="l502"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l503"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l504"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l505"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Copy to Clip"</span><span class=cF0>);
|
|
<a name="l506"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l507"></a> </span><span class=cF5>ClipCopy</span><span class=cF0>(doc);
|
|
<a name="l508"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l509"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l510"></a>
|
|
<a name="l511"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLD</span><span class=cF0>:
|
|
<a name="l512"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l513"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l514"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l515"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /File Manager"</span><span class=cF0>);
|
|
<a name="l516"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l517"></a> {
|
|
<a name="l518"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l519"></a> </span><span class=cF5>FileMgr</span><span class=cF0>;
|
|
<a name="l520"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l521"></a> }
|
|
<a name="l522"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l523"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l524"></a>
|
|
<a name="l525"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLF</span><span class=cF0>:
|
|
<a name="l526"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l527"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l528"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l529"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Search Files"</span><span class=cF0>);
|
|
<a name="l530"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l531"></a> </span><span class=cF5>FindWiz</span><span class=cF0>;
|
|
<a name="l532"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l533"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l534"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l535"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l536"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Find & Replace"</span><span class=cF0>);
|
|
<a name="l537"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l538"></a> </span><span class=cF5>EdFindReplace</span><span class=cF0>(doc);
|
|
<a name="l539"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l540"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l541"></a>
|
|
<a name="l542"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLG</span><span class=cF0>:
|
|
<a name="l543"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l544"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l545"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l546"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo Line Num"</span><span class=cF0>);
|
|
<a name="l547"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l548"></a> </span><span class=cF5>EdGoToLine</span><span class=cF0>(doc);
|
|
<a name="l549"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l550"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l551"></a>
|
|
<a name="l552"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_BACKSPACE</span><span class=cF0>: </span><span class=cF2>//<CTRL-H></span><span class=cF0>
|
|
<a name="l553"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l554"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Char /Back Space"</span><span class=cF0>);
|
|
<a name="l555"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l556"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l557"></a> </span><span class=cF5>DocCaptureUndo</span><span class=cF0>(doc);
|
|
<a name="l558"></a> doc_ce = doc->cur_entry;
|
|
<a name="l559"></a> </span><span class=cF1>if</span><span class=cF0> (doc->cur_col <= doc_ce->min_col)
|
|
<a name="l560"></a> {
|
|
<a name="l561"></a> doc_ce = doc->cur_entry = doc_ce->last;
|
|
<a name="l562"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce != doc && doc_ce->type_u8 == </span><span class=cF3>DOCT_SOFT_NEW_LINE</span><span class=cF0>)
|
|
<a name="l563"></a> doc_ce = doc->cur_entry = doc_ce->last;
|
|
<a name="l564"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce == doc || doc_ce->type_u8 == </span><span class=cF3>DOCT_PROMPT</span><span class=cF0>)
|
|
<a name="l565"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l566"></a> doc_ce = doc->cur_entry = doc_ce->next;
|
|
<a name="l567"></a> doc->cur_col = doc_ce->min_col;
|
|
<a name="l568"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l569"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l570"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l571"></a> doc->cur_col = doc_ce->max_col;
|
|
<a name="l572"></a> </span><span class=cF1>if</span><span class=cF0> (doc->cur_col > doc_ce->min_col)
|
|
<a name="l573"></a> doc->cur_col--;
|
|
<a name="l574"></a> </span><span class=cF5>EdCharDel</span><span class=cF0>(doc);
|
|
<a name="l575"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l576"></a> }
|
|
<a name="l577"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l578"></a> {
|
|
<a name="l579"></a> doc->cur_col--;
|
|
<a name="l580"></a> </span><span class=cF5>EdCharDel</span><span class=cF0>(doc);
|
|
<a name="l581"></a> }
|
|
<a name="l582"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l583"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l584"></a>
|
|
<a name="l585"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLI</span><span class=cF0>:
|
|
<a name="l586"></a> </span><span class=cF1>if</span><span class=cF0> (sc.u8[</span><span class=cFE>0</span><span class=cF0>] != </span><span class=cF3>SC_TAB</span><span class=cF0>)
|
|
<a name="l587"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l588"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l589"></a> {
|
|
<a name="l590"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l591"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Unindent 2"</span><span class=cF0>);
|
|
<a name="l592"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l593"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$ID,-2$"</span><span class=cF0>);
|
|
<a name="l594"></a> }
|
|
<a name="l595"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l596"></a> {
|
|
<a name="l597"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l598"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Indent 2"</span><span class=cF0>);
|
|
<a name="l599"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l600"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$ID,2$"</span><span class=cF0>);
|
|
<a name="l601"></a> }
|
|
<a name="l602"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l603"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l604"></a>
|
|
<a name="l605"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF6>'\n'</span><span class=cF0>:
|
|
<a name="l606"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l607"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l608"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l609"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Char /Return"</span><span class=cF0>);
|
|
<a name="l610"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l611"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Char /Page Break"</span><span class=cF0>);
|
|
<a name="l612"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l613"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l614"></a> </span><span class=cF5>EdCharIns</span><span class=cF0>(ch, sc, doc);
|
|
<a name="l615"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l616"></a>
|
|
<a name="l617"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLK</span><span class=cF0>:
|
|
<a name="l618"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l619"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l620"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l621"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Blinking Text Off"</span><span class=cF0>);
|
|
<a name="l622"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l623"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$BK,0$"</span><span class=cF0>);
|
|
<a name="l624"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l625"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l626"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l627"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l628"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Blinking Text On"</span><span class=cF0>);
|
|
<a name="l629"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l630"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$BK,1$"</span><span class=cF0>);
|
|
<a name="l631"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l632"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l633"></a>
|
|
<a name="l634"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLL</span><span class=cF0>:
|
|
<a name="l635"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l636"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l637"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l638"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Code Tools"</span><span class=cF0>);
|
|
<a name="l639"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l640"></a> {
|
|
<a name="l641"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l642"></a> </span><span class=cF5>EdCodeTools</span><span class=cF0>(doc);
|
|
<a name="l643"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l644"></a> }
|
|
<a name="l645"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l646"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l647"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l648"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l649"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Insert Text Widgets Wizard"</span><span class=cF0>);
|
|
<a name="l650"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l651"></a> {
|
|
<a name="l652"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l653"></a> </span><span class=cF5>EdInsWidgetWiz</span><span class=cF0>;
|
|
<a name="l654"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l655"></a> }
|
|
<a name="l656"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l657"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l658"></a>
|
|
<a name="l659"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLM</span><span class=cF0>:
|
|
<a name="l660"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l661"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l662"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l663"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Personal Notes"</span><span class=cF0>);
|
|
<a name="l664"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l665"></a> </span><span class=cF5>Ed</span><span class=cF0>(</span><span class=cF6>"~/PersonalNotes.DD"</span><span class=cF0>);
|
|
<a name="l666"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l667"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l668"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l669"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l670"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Personal Menu"</span><span class=cF0>);
|
|
<a name="l671"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l672"></a> {
|
|
<a name="l673"></a> m = </span><span class=cF5>DocRead</span><span class=cF0>(</span><span class=cF6>"~/PersonalMenu.DD"</span><span class=cF0>);
|
|
<a name="l674"></a> </span><span class=cF5>DocMenu</span><span class=cF0>(m);
|
|
<a name="l675"></a> </span><span class=cF5>DocDel</span><span class=cF0>(m);
|
|
<a name="l676"></a> }
|
|
<a name="l677"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l678"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l679"></a>
|
|
<a name="l680"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLO</span><span class=cF0>:
|
|
<a name="l681"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l682"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l683"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l684"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Collapse"</span><span class=cF0>);
|
|
<a name="l685"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l686"></a> </span><span class=cF5>DocCollapse</span><span class=cF0>(</span><span class=cF3>TRUE</span><span class=cF0>, doc);
|
|
<a name="l687"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l688"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l689"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l690"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l691"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Uncolapse"</span><span class=cF0>);
|
|
<a name="l692"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l693"></a> </span><span class=cF5>DocCollapse</span><span class=cF0>(</span><span class=cF3>FALSE</span><span class=cF0>, doc);
|
|
<a name="l694"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l695"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l696"></a>
|
|
<a name="l697"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLP</span><span class=cF0>:
|
|
<a name="l698"></a> </span><span class=cF1>if</span><span class=cF0> (doc->flags & </span><span class=cF7>(</span><span class=cF3>DOCF_SUPERSCRIPT_MODE</span><span class=cF0> | </span><span class=cF3>DOCF_SUBSCRIPT_MODE</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l699"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l700"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l701"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Toggle Super or Sub script"</span><span class=cF0>);
|
|
<a name="l702"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l703"></a> {
|
|
<a name="l704"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$SY,0$"</span><span class=cF0>);
|
|
<a name="l705"></a> doc->flags &= ~(</span><span class=cF3>DOCF_SUPERSCRIPT_MODE</span><span class=cF0> | </span><span class=cF3>DOCF_SUBSCRIPT_MODE</span><span class=cF0>);
|
|
<a name="l706"></a> }
|
|
<a name="l707"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l708"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l709"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l710"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l711"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Toggle Subscript"</span><span class=cF0>);
|
|
<a name="l712"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l713"></a> {
|
|
<a name="l714"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$SY,3$"</span><span class=cF0>);
|
|
<a name="l715"></a> doc->flags |= </span><span class=cF3>DOCF_SUBSCRIPT_MODE</span><span class=cF0>;
|
|
<a name="l716"></a> }
|
|
<a name="l717"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l718"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l719"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l720"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l721"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Toggle Superscript"</span><span class=cF0>);
|
|
<a name="l722"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l723"></a> {
|
|
<a name="l724"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$SY,-3$"</span><span class=cF0>);
|
|
<a name="l725"></a> doc->flags |= </span><span class=cF3>DOCF_SUPERSCRIPT_MODE</span><span class=cF0>;
|
|
<a name="l726"></a> }
|
|
<a name="l727"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l728"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l729"></a>
|
|
<a name="l730"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLQ</span><span class=cF0>:
|
|
<a name="l731"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l732"></a>
|
|
<a name="l733"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLR</span><span class=cF0>:
|
|
<a name="l734"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l735"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l736"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l737"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Sprite Graphic Resource"</span><span class=cF0>);
|
|
<a name="l738"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l739"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>doc->flags & </span><span class=cF3>DOCF_FORM</span><span class=cF7>)</span><span class=cF0> && !</span><span class=cF7>(</span><span class=cF0>doc->flags & (</span><span class=cF3>DOCF_PLAIN_TEXT</span><span class=cF0> | </span><span class=cF3>DOCF_PLAIN_TEXT_TABS</span><span class=cF0>)</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l740"></a> {
|
|
<a name="l741"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l742"></a> </span><span class=cF1>if</span><span class=cF0> (doc_ce->type_u8 == </span><span class=cF3>DOCT_SPRITE</span><span class=cF0>)
|
|
<a name="l743"></a> </span><span class=cF5>EdSpriteEd</span><span class=cF0>(doc);
|
|
<a name="l744"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l745"></a> </span><span class=cF5>EdSpriteIns</span><span class=cF0>(doc);
|
|
<a name="l746"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l747"></a> }
|
|
<a name="l748"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l749"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l750"></a>
|
|
<a name="l751"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLS</span><span class=cF0>:
|
|
<a name="l752"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l753"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l754"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l755"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Toggle AutoSave"</span><span class=cF0>);
|
|
<a name="l756"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l757"></a> </span><span class=cF5>LBtc</span><span class=cF0>(&doc->flags, </span><span class=cF3>DOCf_AUTO_SAVE</span><span class=cF0>);
|
|
<a name="l758"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l759"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l760"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l761"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l762"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Save"</span><span class=cF0>);
|
|
<a name="l763"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l764"></a> {
|
|
<a name="l765"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>DriveIsWritable</span><span class=cF0>)
|
|
<a name="l766"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l767"></a> </span><span class=cF5>DocWrite</span><span class=cF0>(doc);
|
|
<a name="l768"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l769"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l770"></a> </span><span class=cF5>PopUpOk</span><span class=cF0>(</span><span class=cF3>ST_ERR_ST</span><span class=cF0> </span><span class=cF6>"Drive not writable.\nCannot save file."</span><span class=cF0>);
|
|
<a name="l771"></a> }
|
|
<a name="l772"></a>
|
|
<a name="l773"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l774"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l775"></a>
|
|
<a name="l776"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLT</span><span class=cF0>:
|
|
<a name="l777"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l778"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l779"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l780"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Single Entry Toggle Plain Text"</span><span class=cF0>);
|
|
<a name="l781"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>doc->flags & </span><span class=cF3>DOCF_FORM</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l782"></a> </span><span class=cF5>DocEntryToggle</span><span class=cF0>(doc);
|
|
<a name="l783"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l784"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l785"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l786"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l787"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Toggle Plain Text Display"</span><span class=cF0>);
|
|
<a name="l788"></a> </span><span class=cF1>else</span><span class=cF0> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>doc->flags & </span><span class=cF3>DOCF_FORM</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l789"></a> </span><span class=cF5>DocFlagsToggle</span><span class=cF0>(doc, </span><span class=cF3>DOCF_PLAIN_TEXT</span><span class=cF0>);
|
|
<a name="l790"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l791"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l792"></a>
|
|
<a name="l793"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLU</span><span class=cF0>:
|
|
<a name="l794"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l795"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l796"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l797"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Underline Off"</span><span class=cF0>);
|
|
<a name="l798"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l799"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$UL,0$"</span><span class=cF0>);
|
|
<a name="l800"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l801"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l802"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l803"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l804"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Underline On"</span><span class=cF0>);
|
|
<a name="l805"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l806"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$UL,1$"</span><span class=cF0>);
|
|
<a name="l807"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l808"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l809"></a>
|
|
<a name="l810"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLV</span><span class=cF0>:
|
|
<a name="l811"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l812"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l813"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l814"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Paste Clip"</span><span class=cF0>);
|
|
<a name="l815"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l816"></a> </span><span class=cF5>ClipPaste</span><span class=cF0>(doc);
|
|
<a name="l817"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l818"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l819"></a>
|
|
<a name="l820"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLW</span><span class=cF0>:
|
|
<a name="l821"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l822"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l823"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l824"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Word Wrap Off"</span><span class=cF0>);
|
|
<a name="l825"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l826"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$WW,0$"</span><span class=cF0>);
|
|
<a name="l827"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l828"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l829"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l830"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l831"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Word Wrap On"</span><span class=cF0>);
|
|
<a name="l832"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l833"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$WW,1$"</span><span class=cF0>);
|
|
<a name="l834"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l835"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l836"></a>
|
|
<a name="l837"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLX</span><span class=cF0>:
|
|
<a name="l838"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l839"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l840"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l841"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Cut To Clip"</span><span class=cF0>);
|
|
<a name="l842"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l843"></a> </span><span class=cF5>ClipCut</span><span class=cF0>(doc);
|
|
<a name="l844"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l845"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l846"></a>
|
|
<a name="l847"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLY</span><span class=cF0>:
|
|
<a name="l848"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l849"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l850"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l851"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Delete Line"</span><span class=cF0>);
|
|
<a name="l852"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l853"></a> </span><span class=cF5>EdLineDel</span><span class=cF0>(doc);
|
|
<a name="l854"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l855"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l856"></a>
|
|
<a name="l857"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF3>CH_CTRLZ</span><span class=cF0>:
|
|
<a name="l858"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l859"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l860"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l861"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Inverted Text Off"</span><span class=cF0>);
|
|
<a name="l862"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l863"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$IV,0$"</span><span class=cF0>);
|
|
<a name="l864"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l865"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l866"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l867"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l868"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Dol /Inverted Text On"</span><span class=cF0>);
|
|
<a name="l869"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l870"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc, </span><span class=cF6>"$IV,1$"</span><span class=cF0>);
|
|
<a name="l871"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l872"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l873"></a>
|
|
<a name="l874"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF6>'0'</span><span class=cF0>...</span><span class=cF6>'9'</span><span class=cF0>:
|
|
<a name="l875"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l876"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l877"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l878"></a> {
|
|
<a name="l879"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l880"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Cmd /Word Definition"</span><span class=cF0>);
|
|
<a name="l881"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l882"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/Autocomplete Word"</span><span class=cF0>);
|
|
<a name="l883"></a> }
|
|
<a name="l884"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l885"></a> {
|
|
<a name="l886"></a> </span><span class=cF1>if</span><span class=cF0> (</span><span class=cF5>AutoComplete</span><span class=cF7>(</span><span class=cF3>ON</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l887"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l888"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l889"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l890"></a> </span><span class=cF5>ACDDef</span><span class=cF0>(ch - </span><span class=cF6>'0'</span><span class=cF0>, </span><span class=cF5>Fs</span><span class=cF0>);
|
|
<a name="l891"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l892"></a> </span><span class=cF5>ACDFillin</span><span class=cF0>(ch - </span><span class=cF6>'0'</span><span class=cF0>);
|
|
<a name="l893"></a> </span><span class=cF5>DocLock</span><span class=cF0>(doc);
|
|
<a name="l894"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l895"></a> }
|
|
<a name="l896"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l897"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l898"></a>
|
|
<a name="l899"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF6>'['</span><span class=cF0>:
|
|
<a name="l900"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l901"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l902"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l903"></a> {
|
|
<a name="l904"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l905"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo matching brace"</span><span class=cF0>);
|
|
<a name="l906"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l907"></a> </span><span class=cF5>EdFindPaired</span><span class=cF0>(doc, </span><span class=cF6>'}'</span><span class=cF0>, </span><span class=cF6>'{'</span><span class=cF0>, </span><span class=cF3>FALSE</span><span class=cF0>);
|
|
<a name="l908"></a> }
|
|
<a name="l909"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l910"></a> {
|
|
<a name="l911"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l912"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo matching bracket"</span><span class=cF0>);
|
|
<a name="l913"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l914"></a> </span><span class=cF5>EdFindPaired</span><span class=cF0>(doc, </span><span class=cF6>']'</span><span class=cF0>, </span><span class=cF6>'['</span><span class=cF0>, </span><span class=cF3>FALSE</span><span class=cF0>);
|
|
<a name="l915"></a> }
|
|
<a name="l916"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l917"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l918"></a>
|
|
<a name="l919"></a> </span><span class=cF1>case</span><span class=cF0> </span><span class=cF6>']'</span><span class=cF0>:
|
|
<a name="l920"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_CTRL</span><span class=cF0>)
|
|
<a name="l921"></a> </span><span class=cF7>{</span><span class=cF0>
|
|
<a name="l922"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_SHIFT</span><span class=cF0>)
|
|
<a name="l923"></a> {
|
|
<a name="l924"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l925"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo matching brace"</span><span class=cF0>);
|
|
<a name="l926"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l927"></a> </span><span class=cF5>EdFindPaired</span><span class=cF0>(doc, </span><span class=cF6>'{'</span><span class=cF0>, </span><span class=cF6>'}'</span><span class=cF0>, </span><span class=cF3>TRUE</span><span class=cF0>);
|
|
<a name="l928"></a> }
|
|
<a name="l929"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l930"></a> {
|
|
<a name="l931"></a> </span><span class=cF1>if</span><span class=cF0> (sc & </span><span class=cF3>SCF_KEY_DESC</span><span class=cF0>)
|
|
<a name="l932"></a> </span><span class=cF5>KeyDescSet</span><span class=cF0>(</span><span class=cF6>"Edit/GoTo matching bracket"</span><span class=cF0>);
|
|
<a name="l933"></a> </span><span class=cF1>else</span><span class=cF0>
|
|
<a name="l934"></a> </span><span class=cF5>EdFindPaired</span><span class=cF0>(doc, </span><span class=cF6>'['</span><span class=cF0>, </span><span class=cF6>']'</span><span class=cF0>, </span><span class=cF3>TRUE</span><span class=cF0>);
|
|
<a name="l935"></a> }
|
|
<a name="l936"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l937"></a> </span><span class=cF1>break</span><span class=cF0>;
|
|
<a name="l938"></a> }
|
|
<a name="l939"></a> </span><span class=cF7>}</span><span class=cF0>
|
|
<a name="l940"></a> </span><span class=cF1>if</span><span class=cF0> (unlock)
|
|
<a name="l941"></a> </span><span class=cF5>DocUnlock</span><span class=cF0>(doc);
|
|
<a name="l942"></a> </span><span class=cF1>if</span><span class=cF0> (!</span><span class=cF7>(</span><span class=cF0>doc->flags & </span><span class=cF3>DOCF_DONT_SWAP_OUT</span><span class=cF7>)</span><span class=cF0>)
|
|
<a name="l943"></a> </span><span class=cF5>Yield</span><span class=cF0>;
|
|
<a name="l944"></a>}
|
|
<a name="l945"></a>
|
|
<a name="l946"></a></span><span class=cF1>Bool</span><span class=cF0> </span><span class=cF5>KDDocPutKey</span><span class=cF0>(</span><span class=cF9>I64</span><span class=cF0> ch, </span><span class=cF9>I64</span><span class=cF0> scan_code)
|
|
<a name="l947"></a>{
|
|
<a name="l948"></a> </span><span class=cF9>CDoc</span><span class=cF0> *doc;
|
|
<a name="l949"></a>
|
|
<a name="l950"></a> </span><span class=cF1>if</span><span class=cF0> (doc = </span><span class=cF5>DocPut</span><span class=cF0>)
|
|
<a name="l951"></a> </span><span class=cF5>DocPutKey</span><span class=cF0>(doc, ch, scan_code);
|
|
<a name="l952"></a>
|
|
<a name="l953"></a> </span><span class=cF1>return</span><span class=cF0> </span><span class=cF3>FALSE</span><span class=cF0>;
|
|
<a name="l954"></a>}
|
|
</span></pre></body>
|
|
</html>
|