ZealOS/docs/Demo/DolDoc/MenuBttn.CC.html
TomAwezome 1b75d91002 Fix Mount AHCI Port selection.
Add arg to SATARep to specify drive types to show.
Add checks in AHCIPortInit to verify port signatures, add helper method to get signatures from port.
2021-08-02 16:40:05 -04:00

116 lines
9.2 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.13">
<style type="text/css">
body {background-color:#fef1f0;}
.cF0{color:#000000;background-color:#fef1f0;}
.cF1{color:#0148a4;background-color:#fef1f0;}
.cF2{color:#3b7901;background-color:#fef1f0;}
.cF3{color:#057c7e;background-color:#fef1f0;}
.cF4{color:#bb2020;background-color:#fef1f0;}
.cF5{color:#9e42ae;background-color:#fef1f0;}
.cF6{color:#b57901;background-color:#fef1f0;}
.cF7{color:#b2b6af;background-color:#fef1f0;}
.cF8{color:#555753;background-color:#fef1f0;}
.cF9{color:#678fbb;background-color:#fef1f0;}
.cFA{color:#82bc49;background-color:#fef1f0;}
.cFB{color:#0097a2;background-color:#fef1f0;}
.cFC{color:#e26a6a;background-color:#fef1f0;}
.cFD{color:#c671bc;background-color:#fef1f0;}
.cFE{color:#c7ab00;background-color:#fef1f0;}
.cFF{color:#fef1f0;background-color:#fef1f0;}
</style>
</head>
<body>
<pre style="font-family:monospace;font-size:12pt">
<a name="l1"></a><span class=cF2>//This example shows bttns. Bttns return a menu val</span><span class=cF0>
<a name="l2"></a></span><span class=cF2>//unless you rig them to send macros. Menu entries are</span><span class=cF0>
<a name="l3"></a></span><span class=cF2>//about the same as bttns, but don't have a border.</span><span class=cF0>
<a name="l4"></a>
<a name="l5"></a></span><span class=cF9>I64</span><span class=cF0> PopUpFreq()
<a name="l6"></a>{</span><span class=cF2>//See also </span><a href="https://zeal-operating-system.github.io/ZealOS/System/DolDoc/DocPopUp.CC.html#l234"><span class=cF4>PopUpRangeI64</span></a><span class=cF2>()</span><span class=cF0>
<a name="l7"></a> </span><span class=cF9>I64</span><span class=cF0> i;
<a name="l8"></a> </span><span class=cF9>CDoc</span><span class=cF0> *doc = </span><span class=cF5>DocNew</span><span class=cF0>;
<a name="l9"></a>
<a name="l10"></a> </span><span class=cF5>DocPrint</span><span class=cF0>(doc,
<a name="l11"></a> </span><span class=cF6>&quot;$TX+CX,\&quot;Set Freq\&quot;$\n&quot;</span><span class=cF0> </span><span class=cF2>//Centered text</span><span class=cF0>
<a name="l12"></a> </span><span class=cF6>&quot;$CM+LX,2,4$$BT,\&quot;100 Hz\&quot;,LE=100$&quot;</span><span class=cF0>
<a name="l13"></a> </span><span class=cF6>&quot;$CM+LX,18,0$$BT,\&quot;200 Hz\&quot;,LE=200$&quot;</span><span class=cF0>
<a name="l14"></a> </span><span class=cF6>&quot;$CM+LX,2,4$$BT,\&quot;400 Hz\&quot;,LE=400$&quot;</span><span class=cF0>
<a name="l15"></a> </span><span class=cF6>&quot;$CM+LX,18,0$$BT,\&quot;800 Hz\&quot;,LE=800$\n&quot;</span><span class=cF0>);
<a name="l16"></a> i = </span><span class=cF5>PopUpMenu</span><span class=cF0>(doc);
<a name="l17"></a> </span><span class=cF1>if</span><span class=cF0> (i &lt; </span><span class=cFE>0</span><span class=cF0>)
<a name="l18"></a> i = </span><span class=cFE>0</span><span class=cF0>; </span><span class=cF2>// &lt;SHIFT-ESC&gt;</span><span class=cF0>
<a name="l19"></a> </span><span class=cF5>DocDel</span><span class=cF0>(doc);
<a name="l20"></a>
<a name="l21"></a> </span><span class=cF1>return</span><span class=cF0> i;
<a name="l22"></a>}
<a name="l23"></a>
<a name="l24"></a>#</span><span class=cF1>define</span><span class=cF0> MU_NOTHING </span><span class=cFE>0</span><span class=cF0>
<a name="l25"></a>#</span><span class=cF1>define</span><span class=cF0> MU_SET_FREQ </span><span class=cFE>1</span><span class=cF0>
<a name="l26"></a>#</span><span class=cF1>define</span><span class=cF0> MU_SOUND_ON </span><span class=cFE>2</span><span class=cF0>
<a name="l27"></a>#</span><span class=cF1>define</span><span class=cF0> MU_SOUND_OFF </span><span class=cFE>3</span><span class=cF0>
<a name="l28"></a>
<a name="l29"></a></span><span class=cF1>U0</span><span class=cF0> MenuBttn()
<a name="l30"></a>{
<a name="l31"></a> </span><span class=cF1>Bool</span><span class=cF0> done = </span><span class=cF3>FALSE</span><span class=cF0>;
<a name="l32"></a> </span><span class=cF9>I64</span><span class=cF0> i, j = </span><span class=cFE>0</span><span class=cF0>, freq = </span><span class=cFE>100</span><span class=cF0>;
<a name="l33"></a> </span><span class=cF9>I64</span><span class=cF0> old_flags = </span><span class=cF5>DocPut</span><span class=cF0>-&gt;flags;
<a name="l34"></a> </span><span class=cF2>//This allows keyboard navigation to skip nonselible entries.</span><span class=cF0>
<a name="l35"></a> </span><span class=cF5>DocPut</span><span class=cF0>-&gt;flags |= </span><span class=cF3>DOCF_FORM</span><span class=cF0>;
<a name="l36"></a> </span><span class=cF1>do</span><span class=cF0>
<a name="l37"></a> </span><span class=cF7>{</span><span class=cF0>
<a name="l38"></a> </span><span class=cF5>DocClear</span><span class=cF0>;
<a name="l39"></a> </span><span class=cF2>//Use &lt;CTRL-l&gt; to generate cursor movement expressions and check &quot;Quote&quot;.</span><span class=cF0>
<a name="l40"></a> </span><span class=cF6>&quot;$CM+CX-RE,-4$Menu Demo\n\n&quot;</span><span class=cF0>;
<a name="l41"></a> </span><span class=cF6>&quot;$LM,8$&quot;</span><span class=cF0>; </span><span class=cF2>//Set left margin</span><span class=cF0>
<a name="l42"></a> </span><span class=cF2>//These are bttns that return a val from a menu selection.</span><span class=cF0>
<a name="l43"></a> </span><span class=cF1>if</span><span class=cF0> (!j)
<a name="l44"></a> </span><span class=cF6>&quot;\n$BT,\&quot;Sound On\&quot;,LE=MU_SOUND_ON$\n\n\n&quot;</span><span class=cF0>;
<a name="l45"></a> </span><span class=cF1>else</span><span class=cF0>
<a name="l46"></a> </span><span class=cF6>&quot;\n$BT,\&quot;Sound Off\&quot;,LE=MU_SOUND_OFF$\n\n\n&quot;</span><span class=cF0>;
<a name="l47"></a> </span><span class=cF6>&quot;\n$BT,\&quot;Set Freq\&quot;,LE=MU_SET_FREQ$\n\n\n&quot;</span><span class=cF0>
<a name="l48"></a> </span><span class=cF6>&quot;\n$BT,\&quot;Nothing\&quot;,LE=MU_NOTHING$\n\n\n&quot;</span><span class=cF0>
<a name="l49"></a> </span><span class=cF6>&quot;\n$BT,\&quot;Done\&quot;,LE=DOCM_CANCEL$\n\n\n&quot;</span><span class=cF0>;
<a name="l50"></a> i = </span><span class=cF5>DocMenu</span><span class=cF0>(</span><span class=cF5>DocPut</span><span class=cF0>);
<a name="l51"></a> </span><span class=cF5>DocBottom</span><span class=cF0>;
<a name="l52"></a> </span><span class=cF1>switch</span><span class=cF0> (i)
<a name="l53"></a> {
<a name="l54"></a> </span><span class=cF1>case</span><span class=cF0> MU_NOTHING:
<a name="l55"></a> </span><span class=cF1>break</span><span class=cF0>;
<a name="l56"></a>
<a name="l57"></a> </span><span class=cF1>case</span><span class=cF0> MU_SOUND_ON:
<a name="l58"></a> j = freq;
<a name="l59"></a> </span><span class=cF5>Sound</span><span class=cF0>(</span><span class=cF5>Freq2Ona</span><span class=cF7>(</span><span class=cF0>j</span><span class=cF7>)</span><span class=cF0>);
<a name="l60"></a> </span><span class=cF1>break</span><span class=cF0>;
<a name="l61"></a>
<a name="l62"></a> </span><span class=cF1>case</span><span class=cF0> MU_SOUND_OFF:
<a name="l63"></a> j = </span><span class=cFE>0</span><span class=cF0>;
<a name="l64"></a> </span><span class=cF5>Sound</span><span class=cF0>;
<a name="l65"></a> </span><span class=cF1>break</span><span class=cF0>;
<a name="l66"></a>
<a name="l67"></a> </span><span class=cF1>case</span><span class=cF0> MU_SET_FREQ:
<a name="l68"></a> freq = PopUpFreq;
<a name="l69"></a> </span><span class=cF1>if</span><span class=cF0> (j)
<a name="l70"></a> </span><span class=cF7>{</span><span class=cF0>
<a name="l71"></a> j = freq;
<a name="l72"></a> </span><span class=cF5>Sound</span><span class=cF0>(</span><span class=cF5>Freq2Ona</span><span class=cF7>(</span><span class=cF0>j</span><span class=cF7>)</span><span class=cF0>);
<a name="l73"></a> </span><span class=cF7>}</span><span class=cF0>
<a name="l74"></a> </span><span class=cF1>break</span><span class=cF0>;
<a name="l75"></a>
<a name="l76"></a> </span><span class=cF1>default</span><span class=cF0>:
<a name="l77"></a> done = </span><span class=cF3>TRUE</span><span class=cF0>;
<a name="l78"></a> }
<a name="l79"></a> </span><span class=cF7>}</span><span class=cF0>
<a name="l80"></a> </span><span class=cF1>while</span><span class=cF0> (!done);
<a name="l81"></a>
<a name="l82"></a> </span><span class=cF5>DocPut</span><span class=cF0>-&gt;flags = </span><span class=cF5>DocPut</span><span class=cF0>-&gt;flags &amp; ~</span><span class=cF3>DOCF_FORM</span><span class=cF0> | old_flags &amp; </span><span class=cF3>DOCF_FORM</span><span class=cF0>;
<a name="l83"></a> </span><span class=cF5>DocClear</span><span class=cF0>;
<a name="l84"></a> </span><span class=cF5>Sound</span><span class=cF0>;
<a name="l85"></a>}
<a name="l86"></a>
<a name="l87"></a>MenuBttn;
</span></pre></body>
</html>