Deploying to gh-pages from @ NishiOwO/nishbox@779ddc4251 🚀

This commit is contained in:
NishiOwO 2025-04-20 08:26:47 +00:00
parent ae1b8b96ae
commit de60f83807
44 changed files with 1041 additions and 744 deletions

View File

@ -140,7 +140,7 @@ $(document).ready(function(){initNavTree('client_8h_source.html',''); initResiza
<div class="ttc" id="astructgf__client__t_html_af44ab851509a6119df42954b209b7c0d"><div class="ttname"><a href="structgf__client__t.html#af44ab851509a6119df42954b209b7c0d">gf_client_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="client_8h_source.html#l00043">client.h:43</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -149,113 +149,143 @@ $(document).ready(function(){initNavTree('directx_2dx11_2gf__draw_8c_source.html
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = HIWORD(lp);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">case</span> WM_CLOSE:</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">case</span> WM_DESTROY:</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> PostQuitMessage(0);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">return</span> DefWindowProc(hWnd, msg, wp, lp);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> }</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>}</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#a368f0172138b75a37072d1ed357b1183"> 63</a></span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) { <span class="keywordflow">return</span> 0; }</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="foldopen" id="foldopen00065" data-start="{" data-end="}">
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#af006e1dd0055cd824dd61122454d6192"> 65</a></span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> MSG msg;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">while</span>(PeekMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0, PM_NOREMOVE)) {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span>(GetMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0)) {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> TranslateMessage(&amp;msg);</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> DispatchMessage(&amp;msg);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> ret = 1;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> }</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> SwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="foldopen" id="foldopen00087" data-start="{" data-end="}">
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#ae0d81adf1fa83413f5052dab1fc4793f"> 87</a></span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> WNDCLASSEX wc;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> RECT rect;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> DWORD style;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">case</span> WM_LBUTTONDOWN:</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">case</span> WM_LBUTTONUP:</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span>(msg == WM_LBUTTONDOWN) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> }</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> }</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">case</span> WM_MBUTTONDOWN:</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">case</span> WM_MBUTTONUP:</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">if</span>(msg == WM_MBUTTONDOWN) {</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">case</span> WM_RBUTTONDOWN:</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">case</span> WM_RBUTTONUP:</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">if</span>(msg == WM_RBUTTONDOWN) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> }</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> }</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">case</span> WM_CLOSE:</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">case</span> WM_DESTROY:</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> PostQuitMessage(0);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">return</span> DefWindowProc(hWnd, msg, wp, lp);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> }</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>}</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#a368f0172138b75a37072d1ed357b1183"> 93</a></span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) { <span class="keywordflow">return</span> 0; }</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> platform-&gt;instance = (HINSTANCE)GetModuleHandle(NULL);</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span>(platform-&gt;instance == NULL) {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to get instance&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> }</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> wc.cbSize = <span class="keyword">sizeof</span>(wc);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> wc.lpfnWndProc = gf_draw_platform_proc;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> wc.cbClsExtra = 0;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> wc.cbWndExtra = 0;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> wc.hInstance = platform-&gt;instance;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> wc.hIcon = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> wc.hCursor = LoadCursor(NULL, IDC_ARROW);</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> wc.hbrBackground = NULL;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> wc.lpszMenuName = NULL;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> wc.lpszClassName = <span class="stringliteral">&quot;goldfish&quot;</span>;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> wc.hIconSm = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span>(!RegisterClassEx(&amp;wc)) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to register class&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> }</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> platform-&gt;window = CreateWindow(<span class="stringliteral">&quot;goldfish&quot;</span>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, (WS_OVERLAPPEDWINDOW), draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ad0dd9e86b268e783bb7aa7483f604587">x</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">y</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, NULL, 0, platform-&gt;instance, NULL);</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> }</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> </div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> SetWindowLongPtr(platform-&gt;window, GWLP_USERDATA, (LONG_PTR)draw);</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> platform-&gt;dc = GetDC(platform-&gt;window);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> </div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> SetRect(&amp;rect, 0, 0, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>);</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> style = (DWORD)GetWindowLongPtr(platform-&gt;window, GWL_STYLE);</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> AdjustWindowRect(&amp;rect, style, FALSE);</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> SetWindowPos(platform-&gt;window, NULL, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOMOVE);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> ShowWindow(platform-&gt;window, SW_NORMAL);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> UpdateWindow(platform-&gt;window);</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span>}</div>
<div class="foldopen" id="foldopen00095" data-start="{" data-end="}">
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#af006e1dd0055cd824dd61122454d6192"> 95</a></span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> MSG msg;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">while</span>(PeekMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0, PM_NOREMOVE)) {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span>(GetMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0)) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> TranslateMessage(&amp;msg);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> DispatchMessage(&amp;msg);</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> ret = 1;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> }</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> SwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span>}</div>
</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="foldopen" id="foldopen00143" data-start="{" data-end="}">
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#a24822bbf6cda6c2cbe336d70116dfb25"> 143</a></span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">if</span>(platform-&gt;dc != NULL) {</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> ReleaseDC(platform-&gt;window, platform-&gt;dc);</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> DestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> }</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> free(platform);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span>}</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="foldopen" id="foldopen00117" data-start="{" data-end="}">
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#ae0d81adf1fa83413f5052dab1fc4793f"> 117</a></span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> WNDCLASSEX wc;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> RECT rect;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> DWORD style;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> platform-&gt;instance = (HINSTANCE)GetModuleHandle(NULL);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">if</span>(platform-&gt;instance == NULL) {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to get instance&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> }</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> wc.cbSize = <span class="keyword">sizeof</span>(wc);</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> wc.lpfnWndProc = gf_draw_platform_proc;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> wc.cbClsExtra = 0;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> wc.cbWndExtra = 0;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> wc.hInstance = platform-&gt;instance;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> wc.hIcon = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> wc.hCursor = LoadCursor(NULL, IDC_ARROW);</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> wc.hbrBackground = NULL;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> wc.lpszMenuName = NULL;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> wc.lpszClassName = <span class="stringliteral">&quot;goldfish&quot;</span>;</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> wc.hIconSm = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">if</span>(!RegisterClassEx(&amp;wc)) {</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to register class&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> }</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> </div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> platform-&gt;window = CreateWindow(<span class="stringliteral">&quot;goldfish&quot;</span>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, (WS_OVERLAPPEDWINDOW), draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ad0dd9e86b268e783bb7aa7483f604587">x</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">y</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, NULL, 0, platform-&gt;instance, NULL);</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> }</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> SetWindowLongPtr(platform-&gt;window, GWLP_USERDATA, (LONG_PTR)draw);</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> platform-&gt;dc = GetDC(platform-&gt;window);</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> </div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> SetRect(&amp;rect, 0, 0, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>);</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> style = (DWORD)GetWindowLongPtr(platform-&gt;window, GWL_STYLE);</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> AdjustWindowRect(&amp;rect, style, FALSE);</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> SetWindowPos(platform-&gt;window, NULL, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOMOVE);</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> </div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> ShowWindow(platform-&gt;window, SW_NORMAL);</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> UpdateWindow(platform-&gt;window);</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span>}</div>
</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
<div class="foldopen" id="foldopen00173" data-start="{" data-end="}">
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"><a class="line" href="gf__draw__platform_8h.html#a24822bbf6cda6c2cbe336d70116dfb25"> 173</a></span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">if</span>(platform-&gt;dc != NULL) {</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> ReleaseDC(platform-&gt;window, platform-&gt;dc);</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> DestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> }</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> free(platform);</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span>}</div>
</div>
<div class="ttc" id="agf__directx_8h_html"><div class="ttname"><a href="gf__directx_8h.html">gf_directx.h</a></div><div class="ttdoc">DirectX headers.</div></div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
@ -265,6 +295,9 @@ $(document).ready(function(){initNavTree('directx_2dx11_2gf__draw_8c_source.html
<div class="ttc" id="agf__log_8h_html"><div class="ttname"><a href="gf__log_8h.html">gf_log.h</a></div><div class="ttdoc">Logger.</div></div>
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="ainput_8h_html_a1bcb3fe6d407a1f4791efcbd86cffac9"><div class="ttname"><a href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_MIDDLE_MASK</div><div class="ttdoc">Mask for middle mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00034">input.h:34</a></div></div>
<div class="ttc" id="ainput_8h_html_a9e633a7c5d0bd577a11243b397354588"><div class="ttname"><a href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_LEFT_MASK</div><div class="ttdoc">Mask for left mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00028">input.h:28</a></div></div>
<div class="ttc" id="ainput_8h_html_aa131fcdb7b5d6864c62b32b86f702962"><div class="ttname"><a href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_RIGHT_MASK</div><div class="ttdoc">Mask for right mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00040">input.h:40</a></div></div>
<div class="ttc" id="astructgf__draw__platform__t_html"><div class="ttname"><a href="structgf__draw__platform__t.html">gf_draw_platform_t</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="draw__platform_8h_source.html#l00067">draw_platform.h:67</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_a1ec29e03c753c84e51cb369e9b712d2d"><div class="ttname"><a href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">gf_draw_t::y</a></div><div class="ttdeci">int y</div><div class="ttdoc">Y coord of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
@ -276,8 +309,9 @@ $(document).ready(function(){initNavTree('directx_2dx11_2gf__draw_8c_source.html
<div class="ttc" id="astructgf__draw__t_html_adeb3586537ce39bf94c594dec0348346"><div class="ttname"><a href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">gf_draw_t::width</a></div><div class="ttdeci">int width</div><div class="ttdoc">Width of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_ae300bda23f566c186f873c56c5d32a3f"><div class="ttname"><a href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">gf_draw_t::height</a></div><div class="ttdeci">int height</div><div class="ttdoc">Height of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -180,8 +180,8 @@ $(document).ready(function(){initNavTree('draw_8h_source.html',''); initResizabl
<div class="ttc" id="astructgf__draw__t_html_ae300bda23f566c186f873c56c5d32a3f"><div class="ttname"><a href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">gf_draw_t::height</a></div><div class="ttdeci">int height</div><div class="ttdoc">Height of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__font__t_html"><div class="ttname"><a href="structgf__font__t.html">gf_font_t</a></div><div class="ttdoc">Font.</div><div class="ttdef"><b>Definition</b> <a href="font_8h_source.html#l00095">font.h:95</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="atexture_8h_html"><div class="ttname"><a href="texture_8h.html">texture.h</a></div><div class="ttdoc">Type definitions related to texture.</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->

View File

@ -173,6 +173,7 @@ $(document).ready(function(){initNavTree('functions.html',''); initResizable();
<li>major&#160;:&#160;<a class="el" href="structgf__version__t.html#a18c4ea6d16bd4d27da71586779ea3295">gf_version_t</a></li>
<li>mesh&#160;:&#160;<a class="el" href="structgf__model__t.html#aa28477a09739d0ef7566532fdb62aa06">gf_model_t</a></li>
<li>minor&#160;:&#160;<a class="el" href="structgf__version__t.html#a573839ca44261b9ccbd73e43be57d326">gf_version_t</a></li>
<li>mouse_flag&#160;:&#160;<a class="el" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t</a></li>
<li>mouse_x&#160;:&#160;<a class="el" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t</a></li>
<li>mouse_y&#160;:&#160;<a class="el" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t</a></li>
</ul>
@ -183,7 +184,7 @@ $(document).ready(function(){initNavTree('functions.html',''); initResizable();
<li>physics&#160;:&#160;<a class="el" href="structgf__server__t.html#a03a9c92df8537d9eb5d3cf5f43a02e40">gf_server_t</a></li>
<li>platform&#160;:&#160;<a class="el" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">gf_draw_t</a></li>
<li>points&#160;:&#160;<a class="el" href="structgf__mesh__triangle__t.html#a884485af47f0821ec8473b655d31bd74">gf_mesh_triangle_t</a></li>
<li>pressed&#160;:&#160;<a class="el" href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b">gf_gui_button_t</a></li>
<li>pressed&#160;:&#160;<a class="el" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">gf_gui_component_t</a>, <a class="el" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">gf_gui_t</a></li>
</ul>

View File

@ -173,6 +173,7 @@ $(document).ready(function(){initNavTree('functions_vars.html',''); initResizabl
<li>major&#160;:&#160;<a class="el" href="structgf__version__t.html#a18c4ea6d16bd4d27da71586779ea3295">gf_version_t</a></li>
<li>mesh&#160;:&#160;<a class="el" href="structgf__model__t.html#aa28477a09739d0ef7566532fdb62aa06">gf_model_t</a></li>
<li>minor&#160;:&#160;<a class="el" href="structgf__version__t.html#a573839ca44261b9ccbd73e43be57d326">gf_version_t</a></li>
<li>mouse_flag&#160;:&#160;<a class="el" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t</a></li>
<li>mouse_x&#160;:&#160;<a class="el" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t</a></li>
<li>mouse_y&#160;:&#160;<a class="el" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t</a></li>
</ul>
@ -183,7 +184,7 @@ $(document).ready(function(){initNavTree('functions_vars.html',''); initResizabl
<li>physics&#160;:&#160;<a class="el" href="structgf__server__t.html#a03a9c92df8537d9eb5d3cf5f43a02e40">gf_server_t</a></li>
<li>platform&#160;:&#160;<a class="el" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">gf_draw_t</a></li>
<li>points&#160;:&#160;<a class="el" href="structgf__mesh__triangle__t.html#a884485af47f0821ec8473b655d31bd74">gf_mesh_triangle_t</a></li>
<li>pressed&#160;:&#160;<a class="el" href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b">gf_gui_button_t</a></li>
<li>pressed&#160;:&#160;<a class="el" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">gf_gui_component_t</a>, <a class="el" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">gf_gui_t</a></li>
</ul>

View File

@ -250,7 +250,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00118">118</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00122">122</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
</div>
</div>
@ -316,7 +316,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00084">84</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00085">85</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
</div>
</div>
@ -399,7 +399,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00125">125</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00129">129</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
</div>
</div>
@ -436,7 +436,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>0</code> if successful, otherwise if failed </dd></dl>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00110">110</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__draw__common_8c_source.html#l00114">114</a> of file <a class="el" href="gf__draw__common_8c_source.html">gf_draw_common.c</a>.</p>
</div>
</div>

View File

@ -136,10 +136,10 @@ $(document).ready(function(){initNavTree('gf__draw_8h_source.html',''); initResi
<div class="ttc" id="adraw_8h_html"><div class="ttname"><a href="draw_8h.html">draw.h</a></div><div class="ttdoc">Type definitions related to drawing interface.</div></div>
<div class="ttc" id="agf__draw_8h_html_a11d157bf565b4010f1350dd5329fa4a4"><div class="ttname"><a href="gf__draw_8h.html#a11d157bf565b4010f1350dd5329fa4a4">gf_draw_end</a></div><div class="ttdeci">void gf_draw_end(void)</div><div class="ttdoc">Cleanup drawing stuffs.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00028">gf_draw_common.c:28</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a4575368fee8a93966d657874a0906aaf"><div class="ttname"><a href="gf__draw_8h.html#a4575368fee8a93966d657874a0906aaf">gf_draw_begin</a></div><div class="ttdeci">void gf_draw_begin(void)</div><div class="ttdoc">Initialize drawing stuffs.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00026">gf_draw_common.c:26</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a47934a1eafd8426cc145a97e36867551"><div class="ttname"><a href="gf__draw_8h.html#a47934a1eafd8426cc145a97e36867551">gf_draw_step</a></div><div class="ttdeci">int gf_draw_step(gf_draw_t *draw)</div><div class="ttdoc">Do drawing single step.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00110">gf_draw_common.c:110</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a4887fe11d8dfe55cf784e07b382b046a"><div class="ttname"><a href="gf__draw_8h.html#a4887fe11d8dfe55cf784e07b382b046a">gf_draw_frame</a></div><div class="ttdeci">void gf_draw_frame(gf_draw_t *draw)</div><div class="ttdoc">Draw frame (common part)</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00084">gf_draw_common.c:84</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a4a0353d9ffdb96b2c26600b185b16f4f"><div class="ttname"><a href="gf__draw_8h.html#a4a0353d9ffdb96b2c26600b185b16f4f">gf_draw_set_input</a></div><div class="ttdeci">void gf_draw_set_input(gf_draw_t *draw, gf_input_t *input)</div><div class="ttdoc">Set input interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00125">gf_draw_common.c:125</a></div></div>
<div class="ttc" id="agf__draw_8h_html_aa7c19917300ff10b22de455323f01d83"><div class="ttname"><a href="gf__draw_8h.html#aa7c19917300ff10b22de455323f01d83">gf_draw_destroy</a></div><div class="ttdeci">void gf_draw_destroy(gf_draw_t *draw)</div><div class="ttdoc">Destroy drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00118">gf_draw_common.c:118</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a47934a1eafd8426cc145a97e36867551"><div class="ttname"><a href="gf__draw_8h.html#a47934a1eafd8426cc145a97e36867551">gf_draw_step</a></div><div class="ttdeci">int gf_draw_step(gf_draw_t *draw)</div><div class="ttdoc">Do drawing single step.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00114">gf_draw_common.c:114</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a4887fe11d8dfe55cf784e07b382b046a"><div class="ttname"><a href="gf__draw_8h.html#a4887fe11d8dfe55cf784e07b382b046a">gf_draw_frame</a></div><div class="ttdeci">void gf_draw_frame(gf_draw_t *draw)</div><div class="ttdoc">Draw frame (common part)</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00085">gf_draw_common.c:85</a></div></div>
<div class="ttc" id="agf__draw_8h_html_a4a0353d9ffdb96b2c26600b185b16f4f"><div class="ttname"><a href="gf__draw_8h.html#a4a0353d9ffdb96b2c26600b185b16f4f">gf_draw_set_input</a></div><div class="ttdeci">void gf_draw_set_input(gf_draw_t *draw, gf_input_t *input)</div><div class="ttdoc">Set input interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00129">gf_draw_common.c:129</a></div></div>
<div class="ttc" id="agf__draw_8h_html_aa7c19917300ff10b22de455323f01d83"><div class="ttname"><a href="gf__draw_8h.html#aa7c19917300ff10b22de455323f01d83">gf_draw_destroy</a></div><div class="ttdeci">void gf_draw_destroy(gf_draw_t *draw)</div><div class="ttdoc">Destroy drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00122">gf_draw_common.c:122</a></div></div>
<div class="ttc" id="agf__draw_8h_html_af1d6ba858a1cee357f8626501540e8bf"><div class="ttname"><a href="gf__draw_8h.html#af1d6ba858a1cee357f8626501540e8bf">gf_draw_reshape</a></div><div class="ttdeci">void gf_draw_reshape(gf_draw_t *draw)</div><div class="ttdoc">Do stuffs required on resizing window.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00079">gf_draw_common.c:79</a></div></div>
<div class="ttc" id="agf__draw_8h_html_af65b9048f8e8b33c560f374a945d1dec"><div class="ttname"><a href="gf__draw_8h.html#af65b9048f8e8b33c560f374a945d1dec">gf_draw_create</a></div><div class="ttdeci">gf_draw_t * gf_draw_create(gf_engine_t *engine, const char *title)</div><div class="ttdoc">Create drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__draw__common_8c_source.html#l00032">gf_draw_common.c:32</a></div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
@ -148,7 +148,7 @@ $(document).ready(function(){initNavTree('gf__draw_8h_source.html',''); initResi
<div class="ttc" id="ainput_8h_html"><div class="ttname"><a href="input_8h.html">input.h</a></div><div class="ttdoc">Type definitions related to input interface.</div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -181,57 +181,61 @@ $(document).ready(function(){initNavTree('gf__draw__common_8c_source.html','');
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#af1d6ba858a1cee357f8626501540e8bf"> 79</a></span><span class="keywordtype">void</span> gf_draw_reshape(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) { gf_draw_driver_reshape(draw); }</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> button = -1;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="comment">/* Runs every frame */</span></div>
<div class="foldopen" id="foldopen00084" data-start="{" data-end="}">
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a4887fe11d8dfe55cf784e07b382b046a"> 84</a></span><span class="keywordtype">void</span> gf_draw_frame(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> color;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a55cf386eda83f15c1aa811626653141c">a</a> = 255;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">if</span>(button == -1) {</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> button = gf_gui_create_button(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063">gui</a>, 0, 0, 200, 100, <span class="stringliteral">&quot;\&quot;Test\&quot; text&quot;</span>);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> }</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4699dbc1203697ad79ef8635d48886ec">draw_3d</a>) {</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> gf_graphic_draw_texture_polygon(draw, test_texture, color, <a class="code hl_define" href="gf__graphic_8h.html#a0b9f704231aa067e58c6a8e7a42afdcf">GF_GRAPHIC_3D</a>, 4,</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="comment">/* clang-format off */</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> 0.0, 0.0,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> -1.0, 0.0, -1.0,</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> 0.0, 4.0,</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> -1.0, 0.0, 1.0,</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> 4.0, 4.0,</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> 1.0, 0.0, 1.0,</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> 4.0, 0.0,</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> 1.0, 0.0, -1.0</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/* clang-format on */</span></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> );</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> gf_gui_render(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063">gui</a>);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>}</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> button1 = -1;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> button2 = -1;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span><span class="comment">/* Runs every frame */</span></div>
<div class="foldopen" id="foldopen00085" data-start="{" data-end="}">
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a4887fe11d8dfe55cf784e07b382b046a"> 85</a></span><span class="keywordtype">void</span> gf_draw_frame(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> color;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> = color.<a class="code hl_variable" href="structgf__graphic__color__t.html#a55cf386eda83f15c1aa811626653141c">a</a> = 255;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">if</span>(button1 == -1) {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> button1 = gf_gui_create_button(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063">gui</a>, 0, 0, 200, 50, <span class="stringliteral">&quot;\&quot;Test\&quot; text&quot;</span>);</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> }</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">if</span>(button2 == -1) {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> button2 = gf_gui_create_button(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063">gui</a>, 100, 25, 200, 50, <span class="stringliteral">&quot;\&quot;Test\&quot; text&quot;</span>);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> }</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4699dbc1203697ad79ef8635d48886ec">draw_3d</a>) {</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> gf_graphic_draw_texture_polygon(draw, test_texture, color, <a class="code hl_define" href="gf__graphic_8h.html#a0b9f704231aa067e58c6a8e7a42afdcf">GF_GRAPHIC_3D</a>, 4,</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="comment">/* clang-format off */</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> 0.0, 0.0,</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> -1.0, 0.0, -1.0,</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> 0.0, 4.0,</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> -1.0, 0.0, 1.0,</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> 4.0, 4.0,</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> 1.0, 0.0, 1.0,</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> 4.0, 0.0,</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> 1.0, 0.0, -1.0</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="comment">/* clang-format on */</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> );</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> }</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> gf_gui_render(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063">gui</a>);</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span>}</div>
</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="foldopen" id="foldopen00110" data-start="{" data-end="}">
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a47934a1eafd8426cc145a97e36867551"> 110</a></span><span class="keywordtype">int</span> gf_draw_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">int</span> ret = gf_draw_platform_step(draw);</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(ret != 0) <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 0;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>}</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
<div class="foldopen" id="foldopen00114" data-start="{" data-end="}">
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a47934a1eafd8426cc145a97e36867551"> 114</a></span><span class="keywordtype">int</span> gf_draw_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> ret = gf_draw_platform_step(draw);</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">if</span>(ret != 0) <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 0;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> </div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span>}</div>
</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="foldopen" id="foldopen00118" data-start="{" data-end="}">
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#aa7c19917300ff10b22de455323f01d83"> 118</a></span><span class="keywordtype">void</span> gf_draw_destroy(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4caafef51bb4d3b4a549671f63781c5d">driver</a> != NULL) gf_draw_driver_destroy(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4caafef51bb4d3b4a549671f63781c5d">driver</a>);</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a> != NULL) gf_draw_platform_destroy(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>);</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a9168679ed35dff169e7694bc40d5fe83">engine</a>, <span class="stringliteral">&quot;Destroyed drawing interface&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> free(draw);</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span>}</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="foldopen" id="foldopen00122" data-start="{" data-end="}">
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#aa7c19917300ff10b22de455323f01d83"> 122</a></span><span class="keywordtype">void</span> gf_draw_destroy(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4caafef51bb4d3b4a549671f63781c5d">driver</a> != NULL) gf_draw_driver_destroy(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a4caafef51bb4d3b4a549671f63781c5d">driver</a>);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a> != NULL) gf_draw_platform_destroy(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a9168679ed35dff169e7694bc40d5fe83">engine</a>, <span class="stringliteral">&quot;Destroyed drawing interface&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> free(draw);</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span>}</div>
</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a4a0353d9ffdb96b2c26600b185b16f4f"> 125</a></span><span class="keywordtype">void</span> gf_draw_set_input(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>* input) { draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> = input; }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"><a class="line" href="gf__draw_8h.html#a4a0353d9ffdb96b2c26600b185b16f4f"> 129</a></span><span class="keywordtype">void</span> gf_draw_set_input(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>* input) { draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> = input; }</div>
<div class="ttc" id="agf__core_8h_html"><div class="ttname"><a href="gf__core_8h.html">gf_core.h</a></div><div class="ttdoc">Core.</div></div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
<div class="ttc" id="agf__draw__driver_8h_html"><div class="ttname"><a href="gf__draw__driver_8h.html">gf_draw_driver.h</a></div><div class="ttdoc">Drawing driver.</div></div>
@ -270,7 +274,7 @@ $(document).ready(function(){initNavTree('gf__draw__common_8c_source.html','');
<div class="ttc" id="astructgf__graphic__color__t_html_a26d66ab963cf6822e7eadb7b0a96e040"><div class="ttname"><a href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">gf_graphic_color_t::b</a></div><div class="ttdeci">double b</div><div class="ttdoc">Blue.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html_a55cf386eda83f15c1aa811626653141c"><div class="ttname"><a href="structgf__graphic__color__t.html#a55cf386eda83f15c1aa811626653141c">gf_graphic_color_t::a</a></div><div class="ttdeci">double a</div><div class="ttdoc">Alpha.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html_a5f1ffd7ee29657c6b6c71574b6f12788"><div class="ttname"><a href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">gf_graphic_color_t::r</a></div><div class="ttdeci">double r</div><div class="ttdoc">Red.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__texture__t_html"><div class="ttname"><a href="structgf__texture__t.html">gf_texture_t</a></div><div class="ttdoc">Texture.</div><div class="ttdef"><b>Definition</b> <a href="texture_8h_source.html#l00049">texture.h:49</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->

View File

@ -208,7 +208,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Platform-dependent part of drawing driver </dd></dl>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00087">87</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00117">117</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
</div>
</div>
@ -244,7 +244,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00143">143</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00173">173</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
</div>
</div>
@ -322,7 +322,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>1</code> if extension is present, otherwise if it isn't </dd></dl>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00063">63</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00093">93</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
</div>
</div>
@ -359,7 +359,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>0</code> if successful, otherwise if failed </dd></dl>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00065">65</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="directx_2dx11_2gf__draw_8c_source.html#l00095">95</a> of file <a class="el" href="directx_2dx11_2gf__draw_8c_source.html">gf_draw.c</a>.</p>
</div>
</div>

View File

@ -131,12 +131,12 @@ $(document).ready(function(){initNavTree('gf__draw__platform_8h_source.html','')
<div class="ttc" id="acore_8h_html"><div class="ttname"><a href="core_8h.html">core.h</a></div><div class="ttdoc">Type definitions related to core.</div></div>
<div class="ttc" id="adraw_8h_html"><div class="ttname"><a href="draw_8h.html">draw.h</a></div><div class="ttdoc">Type definitions related to drawing interface.</div></div>
<div class="ttc" id="adraw__platform_8h_html"><div class="ttname"><a href="draw__platform_8h.html">draw_platform.h</a></div><div class="ttdoc">Type definitions related to platform-dependent part of drawing driver.</div></div>
<div class="ttc" id="agf__draw__platform_8h_html_a24822bbf6cda6c2cbe336d70116dfb25"><div class="ttname"><a href="gf__draw__platform_8h.html#a24822bbf6cda6c2cbe336d70116dfb25">gf_draw_platform_destroy</a></div><div class="ttdeci">void gf_draw_platform_destroy(gf_draw_platform_t *platform)</div><div class="ttdoc">Destroy platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00143">gf_draw.c:143</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_a368f0172138b75a37072d1ed357b1183"><div class="ttname"><a href="gf__draw__platform_8h.html#a368f0172138b75a37072d1ed357b1183">gf_draw_platform_has_extension</a></div><div class="ttdeci">int gf_draw_platform_has_extension(gf_draw_t *draw, const char *query)</div><div class="ttdoc">Check if renderer has extension.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00063">gf_draw.c:63</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_a24822bbf6cda6c2cbe336d70116dfb25"><div class="ttname"><a href="gf__draw__platform_8h.html#a24822bbf6cda6c2cbe336d70116dfb25">gf_draw_platform_destroy</a></div><div class="ttdeci">void gf_draw_platform_destroy(gf_draw_platform_t *platform)</div><div class="ttdoc">Destroy platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00173">gf_draw.c:173</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_a368f0172138b75a37072d1ed357b1183"><div class="ttname"><a href="gf__draw__platform_8h.html#a368f0172138b75a37072d1ed357b1183">gf_draw_platform_has_extension</a></div><div class="ttdeci">int gf_draw_platform_has_extension(gf_draw_t *draw, const char *query)</div><div class="ttdoc">Check if renderer has extension.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00093">gf_draw.c:93</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_aa3106f20d1a654acf65f5e4ddb7a0fdd"><div class="ttname"><a href="gf__draw__platform_8h.html#aa3106f20d1a654acf65f5e4ddb7a0fdd">gf_draw_platform_begin</a></div><div class="ttdeci">void gf_draw_platform_begin(void)</div><div class="ttdoc">Initialize platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00023">gf_draw.c:23</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_ad6f83af1b5dec4457aea20dcab88c94f"><div class="ttname"><a href="gf__draw__platform_8h.html#ad6f83af1b5dec4457aea20dcab88c94f">gf_draw_platform_end</a></div><div class="ttdeci">void gf_draw_platform_end(void)</div><div class="ttdoc">Cleanup platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00024">gf_draw.c:24</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_ae0d81adf1fa83413f5052dab1fc4793f"><div class="ttname"><a href="gf__draw__platform_8h.html#ae0d81adf1fa83413f5052dab1fc4793f">gf_draw_platform_create</a></div><div class="ttdeci">gf_draw_platform_t * gf_draw_platform_create(gf_engine_t *engine, gf_draw_t *draw)</div><div class="ttdoc">Create platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00087">gf_draw.c:87</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_af006e1dd0055cd824dd61122454d6192"><div class="ttname"><a href="gf__draw__platform_8h.html#af006e1dd0055cd824dd61122454d6192">gf_draw_platform_step</a></div><div class="ttdeci">int gf_draw_platform_step(gf_draw_t *draw)</div><div class="ttdoc">Do platform-dependent step.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00065">gf_draw.c:65</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_ae0d81adf1fa83413f5052dab1fc4793f"><div class="ttname"><a href="gf__draw__platform_8h.html#ae0d81adf1fa83413f5052dab1fc4793f">gf_draw_platform_create</a></div><div class="ttdeci">gf_draw_platform_t * gf_draw_platform_create(gf_engine_t *engine, gf_draw_t *draw)</div><div class="ttdoc">Create platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00117">gf_draw.c:117</a></div></div>
<div class="ttc" id="agf__draw__platform_8h_html_af006e1dd0055cd824dd61122454d6192"><div class="ttname"><a href="gf__draw__platform_8h.html#af006e1dd0055cd824dd61122454d6192">gf_draw_platform_step</a></div><div class="ttdeci">int gf_draw_platform_step(gf_draw_t *draw)</div><div class="ttdoc">Do platform-dependent step.</div><div class="ttdef"><b>Definition</b> <a href="directx_2dx11_2gf__draw_8c_source.html#l00095">gf_draw.c:95</a></div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
<div class="ttc" id="agf__macro_8h_html_a64ddd31b0795e397b5d944e6f1821357"><div class="ttname"><a href="gf__macro_8h.html#a64ddd31b0795e397b5d944e6f1821357">GF_EXPORT</a></div><div class="ttdeci">#define GF_EXPORT</div><div class="ttdoc">Macro for platform-dependent symbol export/import.</div><div class="ttdef"><b>Definition</b> <a href="gf__macro_8h_source.html#l00182">gf_macro.h:182</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>

View File

@ -113,140 +113,176 @@ $(document).ready(function(){initNavTree('gf__gui_8c_source.html',''); initResiz
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment">/* Engine */</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &lt;<a class="code" href="gf__graphic_8h.html">gf_graphic.h</a>&gt;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;<a class="code" href="gf__draw_8h.html">gf_draw.h</a>&gt;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">/* Standard */</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> gf_gui_base_color;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> gf_gui_font_color;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="foldopen" id="foldopen00023" data-start="{" data-end="}">
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a929e99bf9dd58e4abc0c9f2a6b1341a1"> 23</a></span><a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gf_gui_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui = malloc(<span class="keyword">sizeof</span>(*gui));</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> memset(gui, 0, <span class="keyword">sizeof</span>(*gui));</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b">engine</a> = engine;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a> = draw;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <a class="code hl_define" href="gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203">GF_SET_COLOR</a>(gf_gui_base_color, 48, 96, 48, 255);</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_define" href="gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203">GF_SET_COLOR</a>(gf_gui_font_color, 256 - 32, 256 - 32, 256 - 32, 255);</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;<a class="code" href="gf__log_8h.html">gf_log.h</a>&gt;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment">/* Standard */</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &lt;string.h&gt;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> gf_gui_base_color;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> gf_gui_font_color;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="}">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a929e99bf9dd58e4abc0c9f2a6b1341a1"> 24</a></span><a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gf_gui_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui = malloc(<span class="keyword">sizeof</span>(*gui));</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> memset(gui, 0, <span class="keyword">sizeof</span>(*gui));</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b">engine</a> = engine;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a> = draw;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> = -1;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i].<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> = -1;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">return</span> gui;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span>}</div>
</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_define" href="gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203">GF_SET_COLOR</a>(gf_gui_base_color, 48, 96, 48, 255);</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <a class="code hl_define" href="gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203">GF_SET_COLOR</a>(gf_gui_font_color, 256 - 32, 256 - 32, 256 - 32, 255);</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i].<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> = -1;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">/* note... left top should be the lightest in the border */</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="foldopen" id="foldopen00040" data-start="{" data-end="}">
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a670ac29a4409cc16c8d77f2d33ccc499"> 40</a></span><span class="keywordtype">void</span> gf_gui_draw_box(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <span class="keywordtype">int</span> mul, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> h) {</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">const</span> <span class="keywordtype">int</span> color_diff = 32; <span class="comment">/* color diff */</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">const</span> <span class="keywordtype">double</span> bw = 2; <span class="comment">/* border width */</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> col;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">int</span> cd = mul * color_diff;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> += cd;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> += cd;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> += cd;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> gf_graphic_fill_rect(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x, y, w, h, col);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> -= cd;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> -= cd;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> -= cd;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> gf_graphic_fill_polygon(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, col, <a class="code hl_define" href="gf__graphic_8h.html#ab0a76f61b9510881b842dbba4b0b54c0">GF_GRAPHIC_2D</a>, 5, x + w, y + h, x + w, y, x + w - bw, y + bw, x + bw, y + h - bw, x, y + h);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> gf_graphic_fill_rect(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x + bw, y + bw, w - bw * 2, h - bw * 2, col);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>}</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">return</span> gui;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>}</div>
</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="foldopen" id="foldopen00063" data-start="{" data-end="}">
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a39fc0e9d0e6ebaf3d60e1275008124b5"> 63</a></span><a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* gf_gui_first_unused(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a>* <span class="keywordtype">id</span>) {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span>(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i].<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> == GF_GUI_UNUSED) {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> *<span class="keywordtype">id</span> = i;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span> &amp;gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i];</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> }</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span>}</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment">/* note... left top should be the lightest in the border */</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="foldopen" id="foldopen00043" data-start="{" data-end="}">
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a670ac29a4409cc16c8d77f2d33ccc499"> 43</a></span><span class="keywordtype">void</span> gf_gui_draw_box(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <span class="keywordtype">int</span> mul, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> h) {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">const</span> <span class="keywordtype">int</span> color_diff = 32; <span class="comment">/* color diff */</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">const</span> <span class="keywordtype">double</span> bw = 2; <span class="comment">/* border width */</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_struct" href="structgf__graphic__color__t.html">gf_graphic_color_t</a> col;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">int</span> cd = mul * color_diff;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> += cd;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> += cd;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> += cd;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> gf_graphic_fill_rect(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x, y, w, h, col);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">r</a> -= cd;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">g</a> -= cd;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> col.<a class="code hl_variable" href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">b</a> -= cd;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> gf_graphic_fill_polygon(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, col, <a class="code hl_define" href="gf__graphic_8h.html#ab0a76f61b9510881b842dbba4b0b54c0">GF_GRAPHIC_2D</a>, 5, x + w, y + h, x + w, y, x + w - bw, y + bw, x + bw, y + h - bw, x, y + h);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> col = gf_gui_base_color;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> gf_graphic_fill_rect(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x + bw, y + bw, w - bw * 2, h - bw * 2, col);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>}</div>
</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> </div>
<div class="foldopen" id="foldopen00074" data-start="{" data-end="}">
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e"> 74</a></span><a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> gf_gui_create_button(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> h, <span class="keyword">const</span> <span class="keywordtype">char</span>* text) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> id;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* c = gf_gui_first_unused(gui, &amp;<span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> = GF_GUI_BUTTON;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">x</a> = x;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">y</a> = y;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">width</a> = w;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a> = h;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b">pressed</a> = 0;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a> = malloc(strlen(text) + 1);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> strcpy(c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>, text);</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> id;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>}</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="foldopen" id="foldopen00066" data-start="{" data-end="}">
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a39fc0e9d0e6ebaf3d60e1275008124b5"> 66</a></span><a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* gf_gui_first_unused(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a>* <span class="keywordtype">id</span>) {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span>(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i].<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> == GF_GUI_UNUSED) {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> *<span class="keywordtype">id</span> = i;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> &amp;gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i];</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> }</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> }</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>}</div>
</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="foldopen" id="foldopen00090" data-start="{" data-end="}">
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a41f221ae3b2221553f49678f9434976c"> 90</a></span><span class="keywordtype">void</span> gf_gui_render(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui) {</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* c = &amp;gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i];</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">double</span> cx = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">x</a>;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">double</span> cy = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">y</a>;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">double</span> cw = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">width</a>;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">double</span> ch = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a>;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">switch</span>(c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a>) {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">case</span> GF_GUI_BUTTON: {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">double</span> x = cx + cw / 2 - gf_graphic_text_width(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a>, c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>) / 2;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">double</span> y = cy + ch / 2 - <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a> / 2;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> gf_gui_draw_box(gui, <a class="code hl_define" href="gf__gui_8h.html#ad122969dc187a91908fc312f185eaa46">GF_GUI_NORMAL</a>, cx, cy, cw, ch);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> gf_graphic_text(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x, y, <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a>, c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>, gf_gui_font_color);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> }</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> }</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>}</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="foldopen" id="foldopen00077" data-start="{" data-end="}">
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e"> 77</a></span><a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> gf_gui_create_button(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> w, <span class="keywordtype">double</span> h, <span class="keyword">const</span> <span class="keywordtype">char</span>* text) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> id;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* c = gf_gui_first_unused(gui, &amp;<span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a> = GF_GUI_BUTTON;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">x</a> = x;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">y</a> = y;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">width</a> = w;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a> = h;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">pressed</a> = 0;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a> = malloc(strlen(text) + 1);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> strcpy(c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>, text);</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">return</span> id;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>}</div>
</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="foldopen" id="foldopen00093" data-start="{" data-end="}">
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="gf__gui_8h.html#a41f221ae3b2221553f49678f9434976c"> 93</a></span><span class="keywordtype">void</span> gf_gui_render(<a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>* gui) {</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> i;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>* input = gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">for</span>(i = <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a> - 1; i &gt;= 0; i--) {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* c = &amp;gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i];</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordtype">double</span> cx = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">x</a>;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">double</span> cy = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">y</a>;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">double</span> cw = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">width</a>;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">double</span> ch = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a>;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">switch</span>(c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a>) {</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">case</span> GF_GUI_BUTTON: {</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span>((gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> == -1) &amp;&amp; (input-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> &amp; <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>) &amp;&amp; (cx &lt;= input-&gt;mouse_x &amp;&amp; input-&gt;<a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a> &lt;= cx + cw) &amp;&amp; (cy &lt;= input-&gt;mouse_y &amp;&amp; input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> &lt;= cy + ch)) {</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> = i;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> == -1) {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">pressed</a> = 0;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> }</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> }</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> }</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> }</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span>(i = 0; i &lt; <a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>; i++) {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>* c = &amp;gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[i];</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">double</span> cx = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">x</a>;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">double</span> cy = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">y</a>;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> cw = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">width</a>;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> ch = c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a>;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">switch</span>(c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">type</a>) {</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">case</span> GF_GUI_BUTTON: {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordtype">double</span> x = cx + cw / 2 - gf_graphic_text_width(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a>, c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>) / 2;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">double</span> y = cy + ch / 2 - <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a> / 2;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> gf_gui_draw_box(gui, (gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> == i) ? <a class="code hl_define" href="gf__gui_8h.html#a01d6d034ff93d118bcbabf86f33735c5">GF_GUI_INVERT</a> : <a class="code hl_define" href="gf__gui_8h.html#ad122969dc187a91908fc312f185eaa46">GF_GUI_NORMAL</a>, cx, cy, cw, ch);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> gf_graphic_text(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a>, x, y, <a class="code hl_define" href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a>, c-&gt;<a class="code hl_variable" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a>.<a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>.<a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>, gf_gui_font_color);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> }</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> }</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">if</span>((gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> != -1) &amp;&amp; !(input-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> &amp; <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>)) {</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b">engine</a>, <span class="stringliteral">&quot;GUI component %d was pressed&quot;</span>, gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a>);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a>[gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a>].<a class="code hl_variable" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">pressed</a> = 1;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> gui-&gt;<a class="code hl_variable" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a> = -1;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> }</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span>}</div>
</div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
<div class="ttc" id="agf__graphic_8h_html"><div class="ttname"><a href="gf__graphic_8h.html">gf_graphic.h</a></div><div class="ttdoc">Graphic interface.</div></div>
<div class="ttc" id="agf__graphic_8h_html_a30c57cf06829cfb3f68556e73a86b203"><div class="ttname"><a href="gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203">GF_SET_COLOR</a></div><div class="ttdeci">#define GF_SET_COLOR(color, red, green, blue, alpha)</div><div class="ttdoc">Macro to set color safely and shorter.</div><div class="ttdef"><b>Definition</b> <a href="gf__graphic_8h_source.html#l00039">gf_graphic.h:39</a></div></div>
<div class="ttc" id="agf__graphic_8h_html_ab0a76f61b9510881b842dbba4b0b54c0"><div class="ttname"><a href="gf__graphic_8h.html#ab0a76f61b9510881b842dbba4b0b54c0">GF_GRAPHIC_2D</a></div><div class="ttdeci">#define GF_GRAPHIC_2D</div><div class="ttdoc">Dimension parameter for 2D.</div><div class="ttdef"><b>Definition</b> <a href="gf__graphic_8h_source.html#l00026">gf_graphic.h:26</a></div></div>
<div class="ttc" id="agf__gui_8h_html"><div class="ttname"><a href="gf__gui_8h.html">gf_gui.h</a></div><div class="ttdoc">GUI.</div></div>
<div class="ttc" id="agf__gui_8h_html_a01d6d034ff93d118bcbabf86f33735c5"><div class="ttname"><a href="gf__gui_8h.html#a01d6d034ff93d118bcbabf86f33735c5">GF_GUI_INVERT</a></div><div class="ttdeci">#define GF_GUI_INVERT</div><div class="ttdoc">Draw border inverted.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8h_source.html#l00032">gf_gui.h:32</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a59c22dec721b5a703d29e0b0d9fc3522"><div class="ttname"><a href="gf__gui_8h.html#a59c22dec721b5a703d29e0b0d9fc3522">GF_GUI_FONT_SIZE</a></div><div class="ttdeci">#define GF_GUI_FONT_SIZE</div><div class="ttdoc">Default GUI font size.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8h_source.html#l00038">gf_gui.h:38</a></div></div>
<div class="ttc" id="agf__gui_8h_html_ad122969dc187a91908fc312f185eaa46"><div class="ttname"><a href="gf__gui_8h.html#ad122969dc187a91908fc312f185eaa46">GF_GUI_NORMAL</a></div><div class="ttdeci">#define GF_GUI_NORMAL</div><div class="ttdoc">Draw border normally.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8h_source.html#l00026">gf_gui.h:26</a></div></div>
<div class="ttc" id="agf__log_8h_html"><div class="ttname"><a href="gf__log_8h.html">gf_log.h</a></div><div class="ttdoc">Logger.</div></div>
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="agui_8h_html_a17ba559c53b849a8391b8f48d91b4f11"><div class="ttname"><a href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a></div><div class="ttdeci">int gf_gui_id_t</div><div class="ttdoc">Component ID.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00017">gui.h:17</a></div></div>
<div class="ttc" id="agui_8h_html_a33770d9046d53ad607fcc938f1619eb8"><div class="ttname"><a href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a></div><div class="ttdeci">#define GF_GUI_MAX_COMPONENTS</div><div class="ttdoc">Max components engine GUI can handle.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00038">gui.h:38</a></div></div>
<div class="ttc" id="ainput_8h_html_a9e633a7c5d0bd577a11243b397354588"><div class="ttname"><a href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_LEFT_MASK</div><div class="ttdoc">Mask for left mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00028">input.h:28</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_a1fc8d0f5c4be91a9b539275dd80e0460"><div class="ttname"><a href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">gf_draw_t::input</a></div><div class="ttdeci">gf_input_t * input</div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html"><div class="ttname"><a href="structgf__graphic__color__t.html">gf_graphic_color_t</a></div><div class="ttdoc">Color.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html_a0f0a24017b41658518516306c7e19acf"><div class="ttname"><a href="structgf__graphic__color__t.html#a0f0a24017b41658518516306c7e19acf">gf_graphic_color_t::g</a></div><div class="ttdeci">double g</div><div class="ttdoc">Green.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html_a26d66ab963cf6822e7eadb7b0a96e040"><div class="ttname"><a href="structgf__graphic__color__t.html#a26d66ab963cf6822e7eadb7b0a96e040">gf_graphic_color_t::b</a></div><div class="ttdeci">double b</div><div class="ttdoc">Blue.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__graphic__color__t_html_a5f1ffd7ee29657c6b6c71574b6f12788"><div class="ttname"><a href="structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788">gf_graphic_color_t::r</a></div><div class="ttdeci">double r</div><div class="ttdoc">Red.</div><div class="ttdef"><b>Definition</b> <a href="graphic_8h_source.html#l00044">graphic.h:44</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html_ac32e6a53a2170f64cebf5ff7df77016b"><div class="ttname"><a href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b">gf_gui_button_t::pressed</a></div><div class="ttdeci">int pressed</div><div class="ttdoc">1 if pressed, otherwise 0</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00063">gui.h:63</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html_af4244759e08c083e52da752f3e83980c"><div class="ttname"><a href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">gf_gui_button_t::text</a></div><div class="ttdeci">char * text</div><div class="ttdoc">Button text.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00063">gui.h:63</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a6029cc56d9b7feab844576661a55a865"><div class="ttname"><a href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">gf_gui_component_t::y</a></div><div class="ttdeci">double y</div><div class="ttdoc">X coord of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a6083ffb3cc61006522da912641bc4b1d"><div class="ttname"><a href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">gf_gui_component_t::width</a></div><div class="ttdeci">double width</div><div class="ttdoc">Width of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a76656c3956b8b6055eaec792d82ceddb"><div class="ttname"><a href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">gf_gui_component_t::height</a></div><div class="ttdeci">double height</div><div class="ttdoc">Height of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a9ce56e0861d5d77304cfb63604eaf8ec"><div class="ttname"><a href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">gf_gui_component_t::u</a></div><div class="ttdeci">gf_gui_union_t u</div><div class="ttdoc">Component union.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_ac6a6067145b869324f9464aeeae5839f"><div class="ttname"><a href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">gf_gui_component_t::type</a></div><div class="ttdeci">int type</div><div class="ttdoc">Component type.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_ace277498b9f1c269f928784fda1baceb"><div class="ttname"><a href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">gf_gui_component_t::x</a></div><div class="ttdeci">double x</div><div class="ttdoc">X coord of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_a74daf2c905e24c5c6d40ab8803e5018b"><div class="ttname"><a href="structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b">gf_gui_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_a83995bd363ebcdac5b80a16681ea111a"><div class="ttname"><a href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">gf_gui_t::draw</a></div><div class="ttdeci">gf_draw_t * draw</div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_aa9c0a86d1d6ed76b52065e64f02ef8d7"><div class="ttname"><a href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">gf_gui_t::area</a></div><div class="ttdeci">gf_gui_component_t area[64]</div><div class="ttdoc">Created components.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html_a35c5cf94acf5b2158389f19578ee9ad7"><div class="ttname"><a href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">gf_gui_union_t::button</a></div><div class="ttdeci">gf_gui_button_t button</div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00074">gui.h:74</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html_af4244759e08c083e52da752f3e83980c"><div class="ttname"><a href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">gf_gui_button_t::text</a></div><div class="ttdeci">char * text</div><div class="ttdoc">Button text.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00057">gui.h:57</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a51325b6f792b76b9bb6ced0e75dc3144"><div class="ttname"><a href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">gf_gui_component_t::pressed</a></div><div class="ttdeci">int pressed</div><div class="ttdoc">1 if pressed, otherwise 0</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a6029cc56d9b7feab844576661a55a865"><div class="ttname"><a href="structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865">gf_gui_component_t::y</a></div><div class="ttdeci">double y</div><div class="ttdoc">X coord of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a6083ffb3cc61006522da912641bc4b1d"><div class="ttname"><a href="structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d">gf_gui_component_t::width</a></div><div class="ttdeci">double width</div><div class="ttdoc">Width of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a76656c3956b8b6055eaec792d82ceddb"><div class="ttname"><a href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">gf_gui_component_t::height</a></div><div class="ttdeci">double height</div><div class="ttdoc">Height of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_a9ce56e0861d5d77304cfb63604eaf8ec"><div class="ttname"><a href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">gf_gui_component_t::u</a></div><div class="ttdeci">gf_gui_union_t u</div><div class="ttdoc">Component union.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_ac6a6067145b869324f9464aeeae5839f"><div class="ttname"><a href="structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f">gf_gui_component_t::type</a></div><div class="ttdeci">int type</div><div class="ttdoc">Component type.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html_ace277498b9f1c269f928784fda1baceb"><div class="ttname"><a href="structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb">gf_gui_component_t::x</a></div><div class="ttdeci">double x</div><div class="ttdoc">X coord of component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_a6214eb0616b3f4dc9032eef592430b6a"><div class="ttname"><a href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">gf_gui_t::pressed</a></div><div class="ttdeci">gf_gui_id_t pressed</div><div class="ttdoc">1 if something is being pressed, otherwise 0</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_a74daf2c905e24c5c6d40ab8803e5018b"><div class="ttname"><a href="structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b">gf_gui_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_a83995bd363ebcdac5b80a16681ea111a"><div class="ttname"><a href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">gf_gui_t::draw</a></div><div class="ttdeci">gf_draw_t * draw</div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__gui__t_html_aa9c0a86d1d6ed76b52065e64f02ef8d7"><div class="ttname"><a href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">gf_gui_t::area</a></div><div class="ttdeci">gf_gui_component_t area[64]</div><div class="ttdoc">Created components.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html_a35c5cf94acf5b2158389f19578ee9ad7"><div class="ttname"><a href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">gf_gui_union_t::button</a></div><div class="ttdeci">gf_gui_button_t button</div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00068">gui.h:68</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -243,7 +243,7 @@ Functions</h2></td></tr>
<dl class="section return"><dt>Returns</dt><dd>GUI </dd></dl>
<dl class="section note"><dt>Note</dt><dd>You should not have to call this - simply use <a class="el" href="structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063" title="GUI.">gf_draw_t::gui</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00023">23</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00024">24</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
</div>
</div>
@ -319,7 +319,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Component ID </dd></dl>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00074">74</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00077">77</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
</div>
</div>
@ -394,7 +394,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00040">40</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00043">43</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
</div>
</div>
@ -434,7 +434,7 @@ Functions</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to component </dd></dl>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00063">63</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00066">66</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
</div>
</div>
@ -470,7 +470,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00090">90</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__gui_8c_source.html#l00093">93</a> of file <a class="el" href="gf__gui_8c_source.html">gf_gui.c</a>.</p>
</div>
</div>

View File

@ -134,11 +134,11 @@ $(document).ready(function(){initNavTree('gf__gui_8h_source.html',''); initResiz
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="acore_8h_html"><div class="ttname"><a href="core_8h.html">core.h</a></div><div class="ttdoc">Type definitions related to core.</div></div>
<div class="ttc" id="adraw_8h_html"><div class="ttname"><a href="draw_8h.html">draw.h</a></div><div class="ttdoc">Type definitions related to drawing interface.</div></div>
<div class="ttc" id="agf__gui_8h_html_a39fc0e9d0e6ebaf3d60e1275008124b5"><div class="ttname"><a href="gf__gui_8h.html#a39fc0e9d0e6ebaf3d60e1275008124b5">gf_gui_first_unused</a></div><div class="ttdeci">gf_gui_component_t * gf_gui_first_unused(gf_gui_t *gui, gf_gui_id_t *id)</div><div class="ttdoc">Get first unused component entry.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00063">gf_gui.c:63</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a41f221ae3b2221553f49678f9434976c"><div class="ttname"><a href="gf__gui_8h.html#a41f221ae3b2221553f49678f9434976c">gf_gui_render</a></div><div class="ttdeci">void gf_gui_render(gf_gui_t *gui)</div><div class="ttdoc">Render GUI.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00090">gf_gui.c:90</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a670ac29a4409cc16c8d77f2d33ccc499"><div class="ttname"><a href="gf__gui_8h.html#a670ac29a4409cc16c8d77f2d33ccc499">gf_gui_draw_box</a></div><div class="ttdeci">void gf_gui_draw_box(gf_gui_t *gui, int mul, double x, double y, double w, double h)</div><div class="ttdoc">Render box.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00040">gf_gui.c:40</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a929e99bf9dd58e4abc0c9f2a6b1341a1"><div class="ttname"><a href="gf__gui_8h.html#a929e99bf9dd58e4abc0c9f2a6b1341a1">gf_gui_create</a></div><div class="ttdeci">gf_gui_t * gf_gui_create(gf_engine_t *engine, gf_draw_t *draw)</div><div class="ttdoc">Create GUI.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00023">gf_gui.c:23</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e"><div class="ttname"><a href="gf__gui_8h.html#a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e">gf_gui_create_button</a></div><div class="ttdeci">gf_gui_id_t gf_gui_create_button(gf_gui_t *gui, double x, double y, double w, double h, const char *text)</div><div class="ttdoc">Create button component.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00074">gf_gui.c:74</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a39fc0e9d0e6ebaf3d60e1275008124b5"><div class="ttname"><a href="gf__gui_8h.html#a39fc0e9d0e6ebaf3d60e1275008124b5">gf_gui_first_unused</a></div><div class="ttdeci">gf_gui_component_t * gf_gui_first_unused(gf_gui_t *gui, gf_gui_id_t *id)</div><div class="ttdoc">Get first unused component entry.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00066">gf_gui.c:66</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a41f221ae3b2221553f49678f9434976c"><div class="ttname"><a href="gf__gui_8h.html#a41f221ae3b2221553f49678f9434976c">gf_gui_render</a></div><div class="ttdeci">void gf_gui_render(gf_gui_t *gui)</div><div class="ttdoc">Render GUI.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00093">gf_gui.c:93</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a670ac29a4409cc16c8d77f2d33ccc499"><div class="ttname"><a href="gf__gui_8h.html#a670ac29a4409cc16c8d77f2d33ccc499">gf_gui_draw_box</a></div><div class="ttdeci">void gf_gui_draw_box(gf_gui_t *gui, int mul, double x, double y, double w, double h)</div><div class="ttdoc">Render box.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00043">gf_gui.c:43</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a929e99bf9dd58e4abc0c9f2a6b1341a1"><div class="ttname"><a href="gf__gui_8h.html#a929e99bf9dd58e4abc0c9f2a6b1341a1">gf_gui_create</a></div><div class="ttdeci">gf_gui_t * gf_gui_create(gf_engine_t *engine, gf_draw_t *draw)</div><div class="ttdoc">Create GUI.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00024">gf_gui.c:24</a></div></div>
<div class="ttc" id="agf__gui_8h_html_a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e"><div class="ttname"><a href="gf__gui_8h.html#a9bfb5fc1e4dff3c3f0e4748d5b8c3c2e">gf_gui_create_button</a></div><div class="ttdeci">gf_gui_id_t gf_gui_create_button(gf_gui_t *gui, double x, double y, double w, double h, const char *text)</div><div class="ttdoc">Create button component.</div><div class="ttdef"><b>Definition</b> <a href="gf__gui_8c_source.html#l00077">gf_gui.c:77</a></div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
<div class="ttc" id="agf__macro_8h_html_a64ddd31b0795e397b5d944e6f1821357"><div class="ttname"><a href="gf__macro_8h.html#a64ddd31b0795e397b5d944e6f1821357">GF_EXPORT</a></div><div class="ttdeci">#define GF_EXPORT</div><div class="ttdoc">Macro for platform-dependent symbol export/import.</div><div class="ttdef"><b>Definition</b> <a href="gf__macro_8h_source.html#l00182">gf_macro.h:182</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
@ -146,8 +146,8 @@ $(document).ready(function(){initNavTree('gf__gui_8h_source.html',''); initResiz
<div class="ttc" id="agui_8h_html_a17ba559c53b849a8391b8f48d91b4f11"><div class="ttname"><a href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a></div><div class="ttdeci">int gf_gui_id_t</div><div class="ttdoc">Component ID.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00017">gui.h:17</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -121,28 +121,30 @@ $(document).ready(function(){initNavTree('gf__input_8c_source.html',''); initRes
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> memset(input, 0, <span class="keyword">sizeof</span>(input));</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">engine</a> = engine;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a> = 0;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = 0;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">return</span> input;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>}</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a> = 0;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = 0;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> input-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> = 0;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordflow">return</span> input;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>}</div>
</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="}">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2"> 28</a></span><span class="keywordtype">void</span> gf_input_destroy(<a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>* input) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">engine</a>, <span class="stringliteral">&quot;Destroyed input interface&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> free(input);</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>}</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> </div>
<div class="foldopen" id="foldopen00029" data-start="{" data-end="}">
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2"> 29</a></span><span class="keywordtype">void</span> gf_input_destroy(<a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>* input) {</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(input-&gt;<a class="code hl_variable" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">engine</a>, <span class="stringliteral">&quot;Destroyed input interface&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> free(input);</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>}</div>
</div>
<div class="ttc" id="agf__input_8h_html"><div class="ttname"><a href="gf__input_8h.html">gf_input.h</a></div><div class="ttdoc">Input.</div></div>
<div class="ttc" id="agf__log_8h_html"><div class="ttname"><a href="gf__log_8h.html">gf_log.h</a></div><div class="ttdoc">Logger.</div></div>
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ad67369fac1e057907a6486d4619f2a4f"><div class="ttname"><a href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">gf_input_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ad67369fac1e057907a6486d4619f2a4f"><div class="ttname"><a href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">gf_input_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -189,7 +189,7 @@ Functions</h2></td></tr>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="gf__input_8c_source.html#l00028">28</a> of file <a class="el" href="gf__input_8c_source.html">gf_input.c</a>.</p>
<p class="definition">Definition at line <a class="el" href="gf__input_8c_source.html#l00029">29</a> of file <a class="el" href="gf__input_8c_source.html">gf_input.c</a>.</p>
</div>
</div>

View File

@ -120,14 +120,14 @@ $(document).ready(function(){initNavTree('gf__input_8h_source.html',''); initRes
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="acore_8h_html"><div class="ttname"><a href="core_8h.html">core.h</a></div><div class="ttdoc">Type definitions related to core.</div></div>
<div class="ttc" id="agf__input_8h_html_ac4a22f8231c87a464f6be7faead5dec2"><div class="ttname"><a href="gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2">gf_input_destroy</a></div><div class="ttdeci">void gf_input_destroy(gf_input_t *input)</div><div class="ttdoc">Destroy input interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__input_8c_source.html#l00028">gf_input.c:28</a></div></div>
<div class="ttc" id="agf__input_8h_html_ac4a22f8231c87a464f6be7faead5dec2"><div class="ttname"><a href="gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2">gf_input_destroy</a></div><div class="ttdeci">void gf_input_destroy(gf_input_t *input)</div><div class="ttdoc">Destroy input interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__input_8c_source.html#l00029">gf_input.c:29</a></div></div>
<div class="ttc" id="agf__input_8h_html_ac926a70928c687f96cfbc24aef8ca96d"><div class="ttname"><a href="gf__input_8h.html#ac926a70928c687f96cfbc24aef8ca96d">gf_input_create</a></div><div class="ttdeci">gf_input_t * gf_input_create(gf_engine_t *engine)</div><div class="ttdoc">Create input interface.</div><div class="ttdef"><b>Definition</b> <a href="gf__input_8c_source.html#l00017">gf_input.c:17</a></div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
<div class="ttc" id="agf__macro_8h_html_a64ddd31b0795e397b5d944e6f1821357"><div class="ttname"><a href="gf__macro_8h.html#a64ddd31b0795e397b5d944e6f1821357">GF_EXPORT</a></div><div class="ttdeci">#define GF_EXPORT</div><div class="ttdoc">Macro for platform-dependent symbol export/import.</div><div class="ttdef"><b>Definition</b> <a href="gf__macro_8h_source.html#l00182">gf_macro.h:182</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="ainput_8h_html"><div class="ttname"><a href="input_8h.html">input.h</a></div><div class="ttdoc">Type definitions related to input interface.</div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -181,6 +181,9 @@ $(document).ready(function(){initNavTree('globals.html',''); initResizable(); })
<li>gf_gui_render()&#160;:&#160;<a class="el" href="gf__gui_8h.html#a41f221ae3b2221553f49678f9434976c">gf_gui.h</a></li>
<li>gf_input_create()&#160;:&#160;<a class="el" href="gf__input_8h.html#ac926a70928c687f96cfbc24aef8ca96d">gf_input.h</a></li>
<li>gf_input_destroy()&#160;:&#160;<a class="el" href="gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2">gf_input.h</a></li>
<li>GF_INPUT_MOUSE_LEFT_MASK&#160;:&#160;<a class="el" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">input.h</a></li>
<li>GF_INPUT_MOUSE_MIDDLE_MASK&#160;:&#160;<a class="el" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">input.h</a></li>
<li>GF_INPUT_MOUSE_RIGHT_MASK&#160;:&#160;<a class="el" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">input.h</a></li>
<li>gf_log()&#160;:&#160;<a class="el" href="gf__log_8h.html#aed92dc232c3ae9cabdff1eeea67dfa90">gf_log.h</a></li>
<li>gf_log_function&#160;:&#160;<a class="el" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log.h</a></li>
<li>gf_math_cot()&#160;:&#160;<a class="el" href="gf__math_8h.html#aac8f6a22f2880f5b86b20a191a662333">gf_math.h</a></li>

View File

@ -91,8 +91,14 @@ $(document).ready(function(){initNavTree('globals_defs.html',''); initResizable(
</div>
<div class="contents">
<div class="textblock">Here is a list of all documented macros with links to the documentation:</div><ul>
<div class="textblock">Here is a list of all documented macros with links to the documentation:</div>
<h3><a id="index__5F" name="index__5F"></a>- _ -</h3><ul>
<li>__FUNCTION_NAME__&#160;:&#160;<a class="el" href="gf__macro_8h.html#a25e2d509981e06719691d7b1b4b25b12">gf_macro.h</a></li>
</ul>
<h3><a id="index_g" name="index_g"></a>- g -</h3><ul>
<li>GF_DECLARE_TYPE&#160;:&#160;<a class="el" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">gf_macro.h</a></li>
<li>GF_EXPORT&#160;:&#160;<a class="el" href="gf__macro_8h.html#a64ddd31b0795e397b5d944e6f1821357">gf_macro.h</a></li>
<li>GF_EXPOSE_CLIENT&#160;:&#160;<a class="el" href="gf__macro_8h.html#a13d820c4f195f0f38ce7d791a9a4ddeb">gf_macro.h</a></li>
@ -118,6 +124,9 @@ $(document).ready(function(){initNavTree('globals_defs.html',''); initResizable(
<li>GF_GUI_INVERT&#160;:&#160;<a class="el" href="gf__gui_8h.html#a01d6d034ff93d118bcbabf86f33735c5">gf_gui.h</a></li>
<li>GF_GUI_MAX_COMPONENTS&#160;:&#160;<a class="el" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">gui.h</a></li>
<li>GF_GUI_NORMAL&#160;:&#160;<a class="el" href="gf__gui_8h.html#ad122969dc187a91908fc312f185eaa46">gf_gui.h</a></li>
<li>GF_INPUT_MOUSE_LEFT_MASK&#160;:&#160;<a class="el" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">input.h</a></li>
<li>GF_INPUT_MOUSE_MIDDLE_MASK&#160;:&#160;<a class="el" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">input.h</a></li>
<li>GF_INPUT_MOUSE_RIGHT_MASK&#160;:&#160;<a class="el" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">input.h</a></li>
<li>gf_log_function&#160;:&#160;<a class="el" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log.h</a></li>
<li>GF_MATH_PI&#160;:&#160;<a class="el" href="gf__math_8h.html#a8bf10c0638a206ac572807e90508b6b5">gf_math.h</a></li>
<li>GF_MATH_VECTOR_COPY&#160;:&#160;<a class="el" href="gf__math_8h.html#a545245d1e846e9c756e776eb6138536b">gf_math.h</a></li>

View File

@ -132,40 +132,39 @@ $(document).ready(function(){initNavTree('gui_8h_source.html',''); initResizable
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span>};</div>
</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui_button, {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">char</span>* text;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">int</span> pressed;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b"> 63</a></span>});</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="foldopen" id="foldopen00073" data-start="{" data-end="};">
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="uniongf__gui__union__t.html"> 73</a></span><span class="keyword">typedef</span> <span class="keyword">union </span><a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a> {</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7"> 74</a></span> <a class="code hl_struct" href="structgf__gui__button__t.html">gf_gui_button_t</a> <a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>} <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c"> 57</a></span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui_button, { <span class="keywordtype">char</span>* <a class="code hl_variable" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a>; });</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="foldopen" id="foldopen00067" data-start="{" data-end="};">
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="uniongf__gui__union__t.html"> 67</a></span><span class="keyword">typedef</span> <span class="keyword">union </span><a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a> {</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7"> 68</a></span> <a class="code hl_struct" href="structgf__gui__button__t.html">gf_gui_button_t</a> <a class="code hl_variable" href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">button</a>;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>} <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a>;</div>
</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui_component, {</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">int</span> type;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">double</span> x;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">double</span> y;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">double</span> width;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">double</span> height;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a> u;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb"> 108</a></span>});</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui, {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a> area[<a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>];</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"><a class="line" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7"> 128</a></span>});</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__button__t.html">gf_gui_button_t</a>;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a>;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui_component, {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">int</span> type;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">double</span> x;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">double</span> y;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">double</span> width;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">double</span> height;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">int</span> pressed;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a> u;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb"> 106</a></span>});</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(gui, {</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw;</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <a class="code hl_typedef" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a> pressed;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a> area[<a class="code hl_define" href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a>];</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7"> 130</a></span>});</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__button__t.html">gf_gui_button_t</a>;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__t.html">gf_gui_t</a>;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__gui__component__t.html">gf_gui_component_t</a>;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_union" href="uniongf__gui__union__t.html">gf_gui_union_t</a>;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="acore_8h_html"><div class="ttname"><a href="core_8h.html">core.h</a></div><div class="ttdoc">Type definitions related to core.</div></div>
<div class="ttc" id="adraw_8h_html"><div class="ttname"><a href="draw_8h.html">draw.h</a></div><div class="ttdoc">Type definitions related to drawing interface.</div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
@ -176,11 +175,12 @@ $(document).ready(function(){initNavTree('gui_8h_source.html',''); initResizable
<div class="ttc" id="agui_8h_html_a33770d9046d53ad607fcc938f1619eb8"><div class="ttname"><a href="gui_8h.html#a33770d9046d53ad607fcc938f1619eb8">GF_GUI_MAX_COMPONENTS</a></div><div class="ttdeci">#define GF_GUI_MAX_COMPONENTS</div><div class="ttdoc">Max components engine GUI can handle.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00038">gui.h:38</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html"><div class="ttname"><a href="structgf__gui__button__t.html">gf_gui_button_t</a></div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00063">gui.h:63</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00108">gui.h:108</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00128">gui.h:128</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html"><div class="ttname"><a href="uniongf__gui__union__t.html">gf_gui_union_t</a></div><div class="ttdoc">Component union.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00073">gui.h:73</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html_a35c5cf94acf5b2158389f19578ee9ad7"><div class="ttname"><a href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">gf_gui_union_t::button</a></div><div class="ttdeci">gf_gui_button_t button</div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00074">gui.h:74</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html"><div class="ttname"><a href="structgf__gui__button__t.html">gf_gui_button_t</a></div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00057">gui.h:57</a></div></div>
<div class="ttc" id="astructgf__gui__button__t_html_af4244759e08c083e52da752f3e83980c"><div class="ttname"><a href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">gf_gui_button_t::text</a></div><div class="ttdeci">char * text</div><div class="ttdoc">Button text.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00057">gui.h:57</a></div></div>
<div class="ttc" id="astructgf__gui__component__t_html"><div class="ttname"><a href="structgf__gui__component__t.html">gf_gui_component_t</a></div><div class="ttdoc">Component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00106">gui.h:106</a></div></div>
<div class="ttc" id="astructgf__gui__t_html"><div class="ttname"><a href="structgf__gui__t.html">gf_gui_t</a></div><div class="ttdoc">GUI.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00130">gui.h:130</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html"><div class="ttname"><a href="uniongf__gui__union__t.html">gf_gui_union_t</a></div><div class="ttdoc">Component union.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00067">gui.h:67</a></div></div>
<div class="ttc" id="auniongf__gui__union__t_html_a35c5cf94acf5b2158389f19578ee9ad7"><div class="ttname"><a href="uniongf__gui__union__t.html#a35c5cf94acf5b2158389f19578ee9ad7">gf_gui_union_t::button</a></div><div class="ttdeci">gf_gui_button_t button</div><div class="ttdoc">Button component.</div><div class="ttdef"><b>Definition</b> <a href="gui_8h_source.html#l00068">gui.h:68</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -92,7 +92,8 @@ $(document).ready(function(){initNavTree('input_8h.html',''); initResizable(); }
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> </div>
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> </div>
<div class="headertitle"><div class="title">input.h File Reference</div></div>
</div><!--header-->
<div class="contents">
@ -111,12 +112,79 @@ Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__input__t.html">gf_input_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input interface. <a href="structgf__input__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a9e633a7c5d0bd577a11243b397354588" id="r_a9e633a7c5d0bd577a11243b397354588"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>&#160;&#160;&#160;(1 &lt;&lt; 0)</td></tr>
<tr class="memdesc:a9e633a7c5d0bd577a11243b397354588"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask for left mouse button. <br /></td></tr>
<tr class="separator:a9e633a7c5d0bd577a11243b397354588"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bcb3fe6d407a1f4791efcbd86cffac9" id="r_a1bcb3fe6d407a1f4791efcbd86cffac9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>&#160;&#160;&#160;(1 &lt;&lt; 1)</td></tr>
<tr class="memdesc:a1bcb3fe6d407a1f4791efcbd86cffac9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask for middle mouse button. <br /></td></tr>
<tr class="separator:a1bcb3fe6d407a1f4791efcbd86cffac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa131fcdb7b5d6864c62b32b86f702962" id="r_aa131fcdb7b5d6864c62b32b86f702962"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>&#160;&#160;&#160;(1 &lt;&lt; 2)</td></tr>
<tr class="memdesc:aa131fcdb7b5d6864c62b32b86f702962"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask for right mouse button. <br /></td></tr>
<tr class="separator:aa131fcdb7b5d6864c62b32b86f702962"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Type definitions related to input interface. </p>
<p class="definition">Definition in file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div></div><!-- contents -->
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a9e633a7c5d0bd577a11243b397354588" name="a9e633a7c5d0bd577a11243b397354588"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e633a7c5d0bd577a11243b397354588">&#9670;&#160;</a></span>GF_INPUT_MOUSE_LEFT_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define GF_INPUT_MOUSE_LEFT_MASK&#160;&#160;&#160;(1 &lt;&lt; 0)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask for left mouse button. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00028">28</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
<a id="a1bcb3fe6d407a1f4791efcbd86cffac9" name="a1bcb3fe6d407a1f4791efcbd86cffac9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bcb3fe6d407a1f4791efcbd86cffac9">&#9670;&#160;</a></span>GF_INPUT_MOUSE_MIDDLE_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define GF_INPUT_MOUSE_MIDDLE_MASK&#160;&#160;&#160;(1 &lt;&lt; 1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask for middle mouse button. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00034">34</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
<a id="aa131fcdb7b5d6864c62b32b86f702962" name="aa131fcdb7b5d6864c62b32b86f702962"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa131fcdb7b5d6864c62b32b86f702962">&#9670;&#160;</a></span>GF_INPUT_MOUSE_RIGHT_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define GF_INPUT_MOUSE_RIGHT_MASK&#160;&#160;&#160;(1 &lt;&lt; 2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask for right mouse button. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00040">40</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->

View File

@ -1,4 +1,7 @@
var input_8h =
[
[ "gf_input_t", "structgf__input__t.html", "structgf__input__t" ]
[ "gf_input_t", "structgf__input__t.html", "structgf__input__t" ],
[ "GF_INPUT_MOUSE_LEFT_MASK", "input_8h.html#a9e633a7c5d0bd577a11243b397354588", null ],
[ "GF_INPUT_MOUSE_MIDDLE_MASK", "input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9", null ],
[ "GF_INPUT_MOUSE_RIGHT_MASK", "input_8h.html#aa131fcdb7b5d6864c62b32b86f702962", null ]
];

View File

@ -117,26 +117,34 @@ $(document).ready(function(){initNavTree('input_8h_source.html',''); initResizab
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment">/* Standard */</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(input, {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* <a class="code hl_variable" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">engine</a>;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a>;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f"> 42</a></span>});</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588"> 28</a></span><span class="preprocessor">#define GF_INPUT_MOUSE_LEFT_MASK (1 &lt;&lt; 0)</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9"> 34</a></span><span class="preprocessor">#define GF_INPUT_MOUSE_MIDDLE_MASK (1 &lt;&lt; 1)</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962"> 40</a></span><span class="preprocessor">#define GF_INPUT_MOUSE_RIGHT_MASK (1 &lt;&lt; 2)</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><a class="code hl_define" href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a>(input, {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* <a class="code hl_variable" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">engine</a>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a>;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a>;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a>;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f"> 64</a></span>});</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="keyword">typedef</span> <span class="keywordtype">void</span> <a class="code hl_struct" href="structgf__input__t.html">gf_input_t</a>;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="acore_8h_html"><div class="ttname"><a href="core_8h.html">core.h</a></div><div class="ttdoc">Type definitions related to core.</div></div>
<div class="ttc" id="adraw_8h_html"><div class="ttname"><a href="draw_8h.html">draw.h</a></div><div class="ttdoc">Type definitions related to drawing interface.</div></div>
<div class="ttc" id="agf__macro_8h_html"><div class="ttname"><a href="gf__macro_8h.html">gf_macro.h</a></div><div class="ttdoc">Macro.</div></div>
<div class="ttc" id="agf__macro_8h_html_a018031ff5fba22b9d5052a55f8c9a377"><div class="ttname"><a href="gf__macro_8h.html#a018031ff5fba22b9d5052a55f8c9a377">GF_DECLARE_TYPE</a></div><div class="ttdeci">#define GF_DECLARE_TYPE(n, b)</div><div class="ttdoc">Macro to define engine type shorter.</div><div class="ttdef"><b>Definition</b> <a href="gf__macro_8h_source.html#l00172">gf_macro.h:172</a></div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ad67369fac1e057907a6486d4619f2a4f"><div class="ttname"><a href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">gf_input_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html"><div class="ttname"><a href="structgf__input__t.html">gf_input_t</a></div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ad67369fac1e057907a6486d4619f2a4f"><div class="ttname"><a href="structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f">gf_input_t::engine</a></div><div class="ttdeci">gf_engine_t * engine</div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -80,4 +80,6 @@ var menudata={children:[
{text:"g",url:"globals_func.html#index_g"}]},
{text:"Typedefs",url:"globals_type.html"},
{text:"Enumerations",url:"globals_enum.html"},
{text:"Macros",url:"globals_defs.html"}]}]}]}
{text:"Macros",url:"globals_defs.html",children:[
{text:"_",url:"globals_defs.html#index__5F"},
{text:"g",url:"globals_defs.html#index_g"}]}]}]}]}

View File

@ -50,7 +50,7 @@ var NAVTREE =
var NAVTREEINDEX =
[
"annotated.html",
"structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460"
"structgf__draw__t.html#a0d6e7e3f8f4e72bbfc4208db6b0a4e28"
];
var SYNCONMSG = 'click to disable panel synchronisation';

View File

@ -220,6 +220,9 @@ var NAVTREEINDEX0 =
"index.html":[],
"index.html#autotoc_md1":[0],
"input_8h.html":[2,0,1,0,9],
"input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9":[2,0,1,0,9,2],
"input_8h.html#a9e633a7c5d0bd577a11243b397354588":[2,0,1,0,9,1],
"input_8h.html#aa131fcdb7b5d6864c62b32b86f702962":[2,0,1,0,9,3],
"input_8h_source.html":[2,0,1,0,9],
"math_8h.html":[2,0,1,0,10],
"math_8h.html#a866f43b3ea5386cb9497738f1eec3d88":[2,0,1,0,10,0],
@ -246,8 +249,5 @@ var NAVTREEINDEX0 =
"structgf__draw__driver__t.html":[1,0,1],
"structgf__draw__driver__texture__t.html":[1,0,2],
"structgf__draw__platform__t.html":[1,0,3],
"structgf__draw__t.html":[1,0,4],
"structgf__draw__t.html#a0d6e7e3f8f4e72bbfc4208db6b0a4e28":[1,0,4,5],
"structgf__draw__t.html#a1cba7c3af17c134f9f749ff9cb5aba72":[1,0,4,9],
"structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d":[1,0,4,16]
"structgf__draw__t.html":[1,0,4]
};

View File

@ -1,5 +1,8 @@
var NAVTREEINDEX1 =
{
"structgf__draw__t.html#a0d6e7e3f8f4e72bbfc4208db6b0a4e28":[1,0,4,5],
"structgf__draw__t.html#a1cba7c3af17c134f9f749ff9cb5aba72":[1,0,4,9],
"structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d":[1,0,4,16],
"structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460":[1,0,4,8],
"structgf__draw__t.html#a24c971423b1befdce81738a39080b552":[1,0,4,13],
"structgf__draw__t.html#a28a0e4624401155ff09056d1994f69f2":[1,0,4,10],
@ -40,23 +43,25 @@ var NAVTREEINDEX1 =
"structgf__graphic__color__t.html#a55cf386eda83f15c1aa811626653141c":[1,0,10,0],
"structgf__graphic__color__t.html#a5f1ffd7ee29657c6b6c71574b6f12788":[1,0,10,3],
"structgf__gui__button__t.html":[1,0,11],
"structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b":[1,0,11,0],
"structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c":[1,0,11,1],
"structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c":[1,0,11,0],
"structgf__gui__component__t.html":[1,0,12],
"structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865":[1,0,12,5],
"structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d":[1,0,12,3],
"structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144":[1,0,12,1],
"structgf__gui__component__t.html#a6029cc56d9b7feab844576661a55a865":[1,0,12,6],
"structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d":[1,0,12,4],
"structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb":[1,0,12,0],
"structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec":[1,0,12,2],
"structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f":[1,0,12,1],
"structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb":[1,0,12,4],
"structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec":[1,0,12,3],
"structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f":[1,0,12,2],
"structgf__gui__component__t.html#ace277498b9f1c269f928784fda1baceb":[1,0,12,5],
"structgf__gui__t.html":[1,0,13],
"structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a":[1,0,13,3],
"structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b":[1,0,13,2],
"structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a":[1,0,13,1],
"structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7":[1,0,13,0],
"structgf__input__t.html":[1,0,15],
"structgf__input__t.html#ac47540120552de68249a985e09d7bd9f":[1,0,15,2],
"structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1":[1,0,15,1],
"structgf__input__t.html#ac47540120552de68249a985e09d7bd9f":[1,0,15,3],
"structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f":[1,0,15,0],
"structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5":[1,0,15,1],
"structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5":[1,0,15,2],
"structgf__mesh__t.html":[1,0,16],
"structgf__mesh__t.html#a70bc6e3addeac58806ad9bd2f4e9fe38":[1,0,16,0],
"structgf__mesh__t.html#a879dc8f1f3d6efdba9589e31f71fba2b":[1,0,16,1],

View File

@ -139,71 +139,86 @@ $(document).ready(function(){initNavTree('opengl_2glfw_2gf__draw_8c_source.html'
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> gf_draw_reshape(draw);</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>}</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="keywordtype">void</span> gf_glfw_cursor(GLFWwindow* window, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y) {</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="keywordtype">void</span> gf_glfw_button(GLFWwindow* window, <span class="keywordtype">int</span> button, <span class="keywordtype">int</span> action, <span class="keywordtype">int</span> mods) {</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw = (<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>*)glfwGetWindowUserPointer(window);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a> = x;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = y;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> }</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span>}</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) {</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ext = NULL;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ptr;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">const</span> <span class="keywordtype">int</span> len = strlen(query);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> glfwMakeContextCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">return</span> glfwExtensionSupported(query);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>}</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">int</span> w, h;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> glfwMakeContextCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = glfwWindowShouldClose(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a>) glfwSetWindowShouldClose(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, GLFW_FALSE);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> glfwPollEvents();</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> glfwSwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> }</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span>}</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> platform-&gt;window = glfwCreateWindow(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, NULL, NULL);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_LEFT &amp;&amp; action == GLFW_PRESS) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_LEFT &amp;&amp; action == GLFW_RELEASE) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_RIGHT &amp;&amp; action == GLFW_PRESS) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_RIGHT &amp;&amp; action == GLFW_RELEASE) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_MIDDLE &amp;&amp; action == GLFW_PRESS) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span>(button == GLFW_MOUSE_BUTTON_MIDDLE &amp;&amp; action == GLFW_RELEASE) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> }</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>}</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keywordtype">void</span> gf_glfw_cursor(GLFWwindow* window, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y) {</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw = (<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>*)glfwGetWindowUserPointer(window);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">mouse_x</a> = x;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = y;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> }</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>}</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ext = NULL;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ptr;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">const</span> <span class="keywordtype">int</span> len = strlen(query);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> glfwMakeContextCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">return</span> glfwExtensionSupported(query);</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span>}</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> </div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">int</span> w, h;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> glfwMakeContextCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = glfwWindowShouldClose(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a>) glfwSetWindowShouldClose(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, GLFW_FALSE);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> glfwPollEvents();</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> glfwSwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> glfwSetWindowUserPointer(platform-&gt;window, draw);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> glfwSetCursorPosCallback(platform-&gt;window, gf_glfw_cursor);</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> glfwSetWindowSizeCallback(platform-&gt;window, gf_glfw_size);</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> glfwMakeContextCurrent(platform-&gt;window);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> glfwSwapInterval(1);</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span>}</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> glfwDestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> }</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> free(platform);</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span>}</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>}</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> platform-&gt;window = glfwCreateWindow(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, NULL, NULL);</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> }</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> glfwSetWindowUserPointer(platform-&gt;window, draw);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> glfwSetCursorPosCallback(platform-&gt;window, gf_glfw_cursor);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> glfwSetWindowSizeCallback(platform-&gt;window, gf_glfw_size);</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> glfwSetMouseButtonCallback(platform-&gt;window, gf_glfw_button);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> glfwMakeContextCurrent(platform-&gt;window);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> glfwSwapInterval(1);</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span>}</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> glfwDestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> }</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> free(platform);</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span>}</div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
<div class="ttc" id="agf__draw__driver_8h_html"><div class="ttname"><a href="gf__draw__driver_8h.html">gf_draw_driver.h</a></div><div class="ttdoc">Drawing driver.</div></div>
<div class="ttc" id="agf__draw__platform_8h_html"><div class="ttname"><a href="gf__draw__platform_8h.html">gf_draw_platform.h</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div></div>
@ -212,6 +227,9 @@ $(document).ready(function(){initNavTree('opengl_2glfw_2gf__draw_8c_source.html'
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__opengl_8h_html"><div class="ttname"><a href="gf__opengl_8h.html">gf_opengl.h</a></div><div class="ttdoc">OpenGL headers.</div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="ainput_8h_html_a1bcb3fe6d407a1f4791efcbd86cffac9"><div class="ttname"><a href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_MIDDLE_MASK</div><div class="ttdoc">Mask for middle mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00034">input.h:34</a></div></div>
<div class="ttc" id="ainput_8h_html_a9e633a7c5d0bd577a11243b397354588"><div class="ttname"><a href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_LEFT_MASK</div><div class="ttdoc">Mask for left mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00028">input.h:28</a></div></div>
<div class="ttc" id="ainput_8h_html_aa131fcdb7b5d6864c62b32b86f702962"><div class="ttname"><a href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_RIGHT_MASK</div><div class="ttdoc">Mask for right mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00040">input.h:40</a></div></div>
<div class="ttc" id="astructgf__draw__platform__t_html"><div class="ttname"><a href="structgf__draw__platform__t.html">gf_draw_platform_t</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="draw__platform_8h_source.html#l00067">draw_platform.h:67</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_a1fc8d0f5c4be91a9b539275dd80e0460"><div class="ttname"><a href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">gf_draw_t::input</a></div><div class="ttdeci">gf_input_t * input</div><div class="ttdoc">Input interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
@ -221,8 +239,9 @@ $(document).ready(function(){initNavTree('opengl_2glfw_2gf__draw_8c_source.html'
<div class="ttc" id="astructgf__draw__t_html_adeb3586537ce39bf94c594dec0348346"><div class="ttname"><a href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">gf_draw_t::width</a></div><div class="ttdeci">int width</div><div class="ttdoc">Width of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_ae300bda23f566c186f873c56c5d32a3f"><div class="ttname"><a href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">gf_draw_t::height</a></div><div class="ttdeci">int height</div><div class="ttdoc">Height of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -198,7 +198,7 @@ $(document).ready(function(){initNavTree('opengl_2glx_2gf__draw_8c_source.html',
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> }</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> attr.colormap = XCreateColormap(platform-&gt;display, root, visual-&gt;visual, AllocNone);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> attr.event_mask = StructureNotifyMask | ExposureMask | PointerMotionMask;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> attr.event_mask = StructureNotifyMask | ExposureMask | PointerMotionMask | ButtonPressMask | ButtonReleaseMask;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> platform-&gt;window = XCreateWindow(platform-&gt;display, root, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, 0, visual-&gt;depth, InputOutput, visual-&gt;visual, CWColormap | CWEventMask, &amp;attr);</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> hints.x = draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ad0dd9e86b268e783bb7aa7483f604587">x</a>;</div>
@ -273,35 +273,47 @@ $(document).ready(function(){initNavTree('opengl_2glx_2gf__draw_8c_source.html',
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a> = <span class="keyword">event</span>.xconfigure.height;</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> glXMakeCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;display, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;context);</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> gf_draw_reshape(draw);</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(event.type == ClientMessage) {</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">if</span>(event.xclient.data.l[0] == draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;wm_delete_window) {</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> }</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> }</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> }</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> glXSwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;display, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> }</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span>}</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> </div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span>(platform-&gt;context != NULL) {</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> glXMakeCurrent(platform-&gt;display, None, NULL);</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> glXDestroyContext(platform-&gt;display, platform-&gt;context);</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> }</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">if</span>(platform-&gt;display != NULL) {</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> XDestroyWindow(platform-&gt;display, platform-&gt;window);</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> XCloseDisplay(platform-&gt;display);</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(event.type == ButtonPress) {</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span>(event.xbutton.button == Button1) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">if</span>(event.xbutton.button == Button2) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">if</span>(event.xbutton.button == Button3) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> }</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(event.type == ButtonRelease) {</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">if</span>(event.xbutton.button == Button1) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">if</span>(event.xbutton.button == Button2) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">if</span>(event.xbutton.button == Button3) draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> }</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(event.type == ClientMessage) {</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">if</span>(event.xclient.data.l[0] == draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;wm_delete_window) {</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> }</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> }</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> }</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> glXSwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;display, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window);</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> }</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> free(platform);</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span>}</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span>}</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> </div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span>(platform-&gt;context != NULL) {</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> glXMakeCurrent(platform-&gt;display, None, NULL);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> glXDestroyContext(platform-&gt;display, platform-&gt;context);</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> }</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">if</span>(platform-&gt;display != NULL) {</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> XDestroyWindow(platform-&gt;display, platform-&gt;window);</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> XCloseDisplay(platform-&gt;display);</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> }</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> free(platform);</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span>}</div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
<div class="ttc" id="agf__draw__driver_8h_html"><div class="ttname"><a href="gf__draw__driver_8h.html">gf_draw_driver.h</a></div><div class="ttdoc">Drawing driver.</div></div>
<div class="ttc" id="agf__draw__platform_8h_html"><div class="ttname"><a href="gf__draw__platform_8h.html">gf_draw_platform.h</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div></div>
@ -310,6 +322,9 @@ $(document).ready(function(){initNavTree('opengl_2glx_2gf__draw_8c_source.html',
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__opengl_8h_html"><div class="ttname"><a href="gf__opengl_8h.html">gf_opengl.h</a></div><div class="ttdoc">OpenGL headers.</div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="ainput_8h_html_a1bcb3fe6d407a1f4791efcbd86cffac9"><div class="ttname"><a href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_MIDDLE_MASK</div><div class="ttdoc">Mask for middle mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00034">input.h:34</a></div></div>
<div class="ttc" id="ainput_8h_html_a9e633a7c5d0bd577a11243b397354588"><div class="ttname"><a href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_LEFT_MASK</div><div class="ttdoc">Mask for left mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00028">input.h:28</a></div></div>
<div class="ttc" id="ainput_8h_html_aa131fcdb7b5d6864c62b32b86f702962"><div class="ttname"><a href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_RIGHT_MASK</div><div class="ttdoc">Mask for right mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00040">input.h:40</a></div></div>
<div class="ttc" id="astructgf__draw__platform__t_html"><div class="ttname"><a href="structgf__draw__platform__t.html">gf_draw_platform_t</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="draw__platform_8h_source.html#l00067">draw_platform.h:67</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_a1ec29e03c753c84e51cb369e9b712d2d"><div class="ttname"><a href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">gf_draw_t::y</a></div><div class="ttdeci">int y</div><div class="ttdoc">Y coord of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
@ -321,8 +336,9 @@ $(document).ready(function(){initNavTree('opengl_2glx_2gf__draw_8c_source.html',
<div class="ttc" id="astructgf__draw__t_html_adeb3586537ce39bf94c594dec0348346"><div class="ttname"><a href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">gf_draw_t::width</a></div><div class="ttdeci">int width</div><div class="ttdoc">Width of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_ae300bda23f566c186f873c56c5d32a3f"><div class="ttname"><a href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">gf_draw_t::height</a></div><div class="ttdeci">int height</div><div class="ttdoc">Height of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -155,163 +155,193 @@ $(document).ready(function(){initNavTree('opengl_2wgl_2gf__draw_8c_source.html',
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a> = HIWORD(lp);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> }</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">case</span> WM_CLOSE:</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">case</span> WM_DESTROY:</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> PostQuitMessage(0);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">return</span> DefWindowProc(hWnd, msg, wp, lp);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> }</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>}</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ext = NULL;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ptr;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keyword">const</span> <span class="keywordtype">int</span> len = strlen(query);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> PFNWGLGETEXTENSIONSSTRINGARB proc;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> wglMakeCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;glrc);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> proc = (PFNWGLGETEXTENSIONSSTRINGARB)wglGetProcAddress(<span class="stringliteral">&quot;wglGetExtensionsStringARB&quot;</span>);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(proc != NULL) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> ext = proc(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> ptr = strstr(ext, query);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">return</span> ((ptr != NULL) &amp;&amp; ((ptr[len] == <span class="charliteral">&#39; &#39;</span>) || (ptr[len] == <span class="charliteral">&#39;\0&#39;</span>)));</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> MSG msg;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> wglMakeCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;glrc);</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">while</span>(PeekMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0, PM_NOREMOVE)) {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span>(GetMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0)) {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> TranslateMessage(&amp;msg);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> DispatchMessage(&amp;msg);</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> ret = 1;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> }</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> }</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">case</span> WM_LBUTTONDOWN:</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">case</span> WM_LBUTTONUP:</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span>(msg == WM_LBUTTONDOWN) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a>;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> }</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">case</span> WM_MBUTTONDOWN:</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">case</span> WM_MBUTTONUP:</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span>(msg == WM_MBUTTONDOWN) {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a>;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> }</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">case</span> WM_RBUTTONDOWN:</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">case</span> WM_RBUTTONUP:</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a> != NULL) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span>(msg == WM_RBUTTONDOWN) {</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> |= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1fc8d0f5c4be91a9b539275dd80e0460">input</a>-&gt;<a class="code hl_variable" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a> ^= <a class="code hl_define" href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a>;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> }</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">case</span> WM_CLOSE:</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a923e76b7eba5d6bca1c92bea6a716adb">close</a> = 1;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">case</span> WM_DESTROY:</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> PostQuitMessage(0);</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">default</span>:</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">return</span> DefWindowProc(hWnd, msg, wp, lp);</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> }</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span>}</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span><span class="keywordtype">int</span> gf_draw_platform_has_extension(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw, <span class="keyword">const</span> <span class="keywordtype">char</span>* query) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ext = NULL;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* ptr;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">const</span> <span class="keywordtype">int</span> len = strlen(query);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> PFNWGLGETEXTENSIONSSTRINGARB proc;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> SwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>}</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> WNDCLASSEX wc;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> PIXELFORMATDESCRIPTOR desc;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> PFNWGLSWAPINTERVALPROC wglSwapIntervalEXT;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> RECT rect;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">int</span> fmt;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> DWORD style;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> platform-&gt;instance = (HINSTANCE)GetModuleHandle(NULL);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">if</span>(platform-&gt;instance == NULL) {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to get instance&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> }</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> wc.cbSize = <span class="keyword">sizeof</span>(wc);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> wc.lpfnWndProc = gf_draw_platform_proc;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> wc.cbClsExtra = 0;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> wc.cbWndExtra = 0;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> wc.hInstance = platform-&gt;instance;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> wc.hIcon = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> wc.hCursor = LoadCursor(NULL, IDC_ARROW);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> wc.hbrBackground = NULL;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> wc.lpszMenuName = NULL;</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> wc.lpszClassName = <span class="stringliteral">&quot;goldfish&quot;</span>;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> wc.hIconSm = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">if</span>(!RegisterClassEx(&amp;wc)) {</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to register class&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> platform-&gt;window = CreateWindow(<span class="stringliteral">&quot;goldfish&quot;</span>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, (WS_OVERLAPPEDWINDOW), draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ad0dd9e86b268e783bb7aa7483f604587">x</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">y</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, NULL, 0, platform-&gt;instance, NULL);</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> }</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> SetWindowLongPtr(platform-&gt;window, GWLP_USERDATA, (LONG_PTR)draw);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> memset(&amp;desc, 0, <span class="keyword">sizeof</span>(desc));</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> desc.nSize = <span class="keyword">sizeof</span>(desc);</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> desc.nVersion = 1;</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> desc.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> desc.iPixelType = PFD_TYPE_RGBA;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> desc.cColorBits = 24;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> desc.cAlphaBits = 8;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> desc.cDepthBits = 32;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> </div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> platform-&gt;dc = GetDC(platform-&gt;window);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> </div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> fmt = ChoosePixelFormat(platform-&gt;dc, &amp;desc);</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> SetPixelFormat(platform-&gt;dc, fmt, &amp;desc);</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> </div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> platform-&gt;glrc = wglCreateContext(platform-&gt;dc);</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span>(platform-&gt;glrc == NULL) {</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create OpenGL context&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> wglMakeCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;glrc);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> proc = (PFNWGLGETEXTENSIONSSTRINGARB)wglGetProcAddress(<span class="stringliteral">&quot;wglGetExtensionsStringARB&quot;</span>);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> </div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">if</span>(proc != NULL) {</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> ext = proc(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> ptr = strstr(ext, query);</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">return</span> ((ptr != NULL) &amp;&amp; ((ptr[len] == <span class="charliteral">&#39; &#39;</span>) || (ptr[len] == <span class="charliteral">&#39;\0&#39;</span>)));</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span>}</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span><span class="keywordtype">int</span> gf_draw_platform_step(<a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> MSG msg;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">int</span> ret = 0;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> wglMakeCurrent(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;glrc);</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">while</span>(PeekMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0, PM_NOREMOVE)) {</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">if</span>(GetMessage(&amp;msg, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;window, 0, 0)) {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> TranslateMessage(&amp;msg);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> DispatchMessage(&amp;msg);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> ret = 1;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> }</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> }</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">if</span>(ret == 0) {</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> gf_draw_driver_before(draw);</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> gf_draw_frame(draw);</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> gf_draw_driver_after(draw);</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> SwapBuffers(draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c">platform</a>-&gt;dc);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> }</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span>}</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span><a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* gf_draw_platform_create(<a class="code hl_struct" href="structgf__engine__t.html">gf_engine_t</a>* engine, <a class="code hl_struct" href="structgf__draw__t.html">gf_draw_t</a>* draw) {</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> WNDCLASSEX wc;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> PIXELFORMATDESCRIPTOR desc;</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> PFNWGLSWAPINTERVALPROC wglSwapIntervalEXT;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> RECT rect;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordtype">int</span> fmt;</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> DWORD style;</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform = malloc(<span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> memset(platform, 0, <span class="keyword">sizeof</span>(*platform));</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> platform-&gt;engine = engine;</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> </div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> platform-&gt;instance = (HINSTANCE)GetModuleHandle(NULL);</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">if</span>(platform-&gt;instance == NULL) {</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to get instance&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> }</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> wc.cbSize = <span class="keyword">sizeof</span>(wc);</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> wc.lpfnWndProc = gf_draw_platform_proc;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> wc.cbClsExtra = 0;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> wc.cbWndExtra = 0;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> wc.hInstance = platform-&gt;instance;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> wc.hIcon = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> wc.hCursor = LoadCursor(NULL, IDC_ARROW);</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> wc.hbrBackground = NULL;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> wc.lpszMenuName = NULL;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> wc.lpszClassName = <span class="stringliteral">&quot;goldfish&quot;</span>;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> wc.hIconSm = LoadIcon(platform-&gt;instance, <span class="stringliteral">&quot;GAME&quot;</span>);</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span>(!RegisterClassEx(&amp;wc)) {</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to register class&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> wglMakeCurrent(platform-&gt;dc, platform-&gt;glrc);</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> </div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> wglSwapIntervalEXT = (PFNWGLSWAPINTERVALPROC)wglGetProcAddress(<span class="stringliteral">&quot;wglSwapIntervalEXT&quot;</span>);</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">if</span>(wglSwapIntervalEXT != NULL) {</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Enabled VSync&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> wglSwapIntervalEXT(1);</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> }</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> platform-&gt;window = CreateWindow(<span class="stringliteral">&quot;goldfish&quot;</span>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a24c971423b1befdce81738a39080b552">title</a>, (WS_OVERLAPPEDWINDOW), draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ad0dd9e86b268e783bb7aa7483f604587">x</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">y</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>, NULL, 0, platform-&gt;instance, NULL);</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">if</span>(platform-&gt;window == NULL) {</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create window&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> }</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> </div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> SetWindowLongPtr(platform-&gt;window, GWLP_USERDATA, (LONG_PTR)draw);</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> SetRect(&amp;rect, 0, 0, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>);</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> style = (DWORD)GetWindowLongPtr(platform-&gt;window, GWL_STYLE);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> AdjustWindowRect(&amp;rect, style, FALSE);</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> SetWindowPos(platform-&gt;window, NULL, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOMOVE);</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> </div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> ShowWindow(platform-&gt;window, SW_NORMAL);</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> UpdateWindow(platform-&gt;window);</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> </div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span>}</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> memset(&amp;desc, 0, <span class="keyword">sizeof</span>(desc));</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> desc.nSize = <span class="keyword">sizeof</span>(desc);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> desc.nVersion = 1;</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> desc.dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> desc.iPixelType = PFD_TYPE_RGBA;</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> desc.cColorBits = 24;</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> desc.cAlphaBits = 8;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> desc.cDepthBits = 32;</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> platform-&gt;dc = GetDC(platform-&gt;window);</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">if</span>(platform-&gt;glrc != NULL) {</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> wglMakeCurrent(NULL, NULL);</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> }</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">if</span>(platform-&gt;dc != NULL) {</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> ReleaseDC(platform-&gt;window, platform-&gt;dc);</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> }</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span>(platform-&gt;glrc != NULL) {</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> wglDeleteContext(platform-&gt;glrc);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> }</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> DestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> }</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> free(platform);</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span>}</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> fmt = ChoosePixelFormat(platform-&gt;dc, &amp;desc);</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> SetPixelFormat(platform-&gt;dc, fmt, &amp;desc);</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> </div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> platform-&gt;glrc = wglCreateContext(platform-&gt;dc);</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">if</span>(platform-&gt;glrc == NULL) {</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Failed to create OpenGL context&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> gf_draw_platform_destroy(platform);</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> }</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> wglMakeCurrent(platform-&gt;dc, platform-&gt;glrc);</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span><span class="preprocessor">#ifdef DO_SWAP_INTERVAL</span></div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> wglSwapIntervalEXT = (PFNWGLSWAPINTERVALPROC)wglGetProcAddress(<span class="stringliteral">&quot;wglSwapIntervalEXT&quot;</span>);</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">if</span>(wglSwapIntervalEXT != NULL) {</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(engine, <span class="stringliteral">&quot;Enabled VSync&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> wglSwapIntervalEXT(1);</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> }</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> </div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> SetRect(&amp;rect, 0, 0, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">width</a>, draw-&gt;<a class="code hl_variable" href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">height</a>);</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> style = (DWORD)GetWindowLongPtr(platform-&gt;window, GWL_STYLE);</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> AdjustWindowRect(&amp;rect, style, FALSE);</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> SetWindowPos(platform-&gt;window, NULL, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOMOVE);</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> </div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> ShowWindow(platform-&gt;window, SW_NORMAL);</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> UpdateWindow(platform-&gt;window);</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> </div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">return</span> platform;</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span>}</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> </div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span><span class="keywordtype">void</span> gf_draw_platform_destroy(<a class="code hl_struct" href="structgf__draw__platform__t.html">gf_draw_platform_t</a>* platform) {</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <span class="keywordflow">if</span>(platform-&gt;glrc != NULL) {</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> wglMakeCurrent(NULL, NULL);</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> }</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">if</span>(platform-&gt;dc != NULL) {</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> ReleaseDC(platform-&gt;window, platform-&gt;dc);</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> }</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">if</span>(platform-&gt;glrc != NULL) {</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> wglDeleteContext(platform-&gt;glrc);</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> }</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">if</span>(platform-&gt;window != NULL) {</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> DestroyWindow(platform-&gt;window);</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> }</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <a class="code hl_define" href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a>(platform-&gt;engine, <span class="stringliteral">&quot;Destroyed platform-dependent part of drawing driver&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> free(platform);</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span>}</div>
<div class="ttc" id="agf__draw_8h_html"><div class="ttname"><a href="gf__draw_8h.html">gf_draw.h</a></div><div class="ttdoc">Drawing interface.</div></div>
<div class="ttc" id="agf__draw__driver_8h_html"><div class="ttname"><a href="gf__draw__driver_8h.html">gf_draw_driver.h</a></div><div class="ttdoc">Drawing driver.</div></div>
<div class="ttc" id="agf__draw__platform_8h_html"><div class="ttname"><a href="gf__draw__platform_8h.html">gf_draw_platform.h</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div></div>
@ -320,6 +350,9 @@ $(document).ready(function(){initNavTree('opengl_2wgl_2gf__draw_8c_source.html',
<div class="ttc" id="agf__log_8h_html_a165a2d1cecbdd974b4a44450011bb84a"><div class="ttname"><a href="gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a">gf_log_function</a></div><div class="ttdeci">#define gf_log_function(engine, fmt,...)</div><div class="ttdoc">Output log with line number and function name.</div><div class="ttdef"><b>Definition</b> <a href="gf__log_8h_source.html#l00026">gf_log.h:26</a></div></div>
<div class="ttc" id="agf__opengl_8h_html"><div class="ttname"><a href="gf__opengl_8h.html">gf_opengl.h</a></div><div class="ttdoc">OpenGL headers.</div></div>
<div class="ttc" id="agf__pre_8h_html"><div class="ttname"><a href="gf__pre_8h.html">gf_pre.h</a></div><div class="ttdoc">Required headers before anything.</div></div>
<div class="ttc" id="ainput_8h_html_a1bcb3fe6d407a1f4791efcbd86cffac9"><div class="ttname"><a href="input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9">GF_INPUT_MOUSE_MIDDLE_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_MIDDLE_MASK</div><div class="ttdoc">Mask for middle mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00034">input.h:34</a></div></div>
<div class="ttc" id="ainput_8h_html_a9e633a7c5d0bd577a11243b397354588"><div class="ttname"><a href="input_8h.html#a9e633a7c5d0bd577a11243b397354588">GF_INPUT_MOUSE_LEFT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_LEFT_MASK</div><div class="ttdoc">Mask for left mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00028">input.h:28</a></div></div>
<div class="ttc" id="ainput_8h_html_aa131fcdb7b5d6864c62b32b86f702962"><div class="ttname"><a href="input_8h.html#aa131fcdb7b5d6864c62b32b86f702962">GF_INPUT_MOUSE_RIGHT_MASK</a></div><div class="ttdeci">#define GF_INPUT_MOUSE_RIGHT_MASK</div><div class="ttdoc">Mask for right mouse button.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00040">input.h:40</a></div></div>
<div class="ttc" id="astructgf__draw__platform__t_html"><div class="ttname"><a href="structgf__draw__platform__t.html">gf_draw_platform_t</a></div><div class="ttdoc">Platform-dependent part of drawing driver.</div><div class="ttdef"><b>Definition</b> <a href="draw__platform_8h_source.html#l00067">draw_platform.h:67</a></div></div>
<div class="ttc" id="astructgf__draw__t_html"><div class="ttname"><a href="structgf__draw__t.html">gf_draw_t</a></div><div class="ttdoc">Drawing interface.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_a1ec29e03c753c84e51cb369e9b712d2d"><div class="ttname"><a href="structgf__draw__t.html#a1ec29e03c753c84e51cb369e9b712d2d">gf_draw_t::y</a></div><div class="ttdeci">int y</div><div class="ttdoc">Y coord of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
@ -331,8 +364,9 @@ $(document).ready(function(){initNavTree('opengl_2wgl_2gf__draw_8c_source.html',
<div class="ttc" id="astructgf__draw__t_html_adeb3586537ce39bf94c594dec0348346"><div class="ttname"><a href="structgf__draw__t.html#adeb3586537ce39bf94c594dec0348346">gf_draw_t::width</a></div><div class="ttdeci">int width</div><div class="ttdoc">Width of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__draw__t_html_ae300bda23f566c186f873c56c5d32a3f"><div class="ttname"><a href="structgf__draw__t.html#ae300bda23f566c186f873c56c5d32a3f">gf_draw_t::height</a></div><div class="ttdeci">int height</div><div class="ttdoc">Height of window.</div><div class="ttdef"><b>Definition</b> <a href="draw_8h_source.html#l00108">draw.h:108</a></div></div>
<div class="ttc" id="astructgf__engine__t_html"><div class="ttname"><a href="structgf__engine__t.html">gf_engine_t</a></div><div class="ttdoc">Engine instance.</div><div class="ttdef"><b>Definition</b> <a href="core_8h_source.html#l00046">core.h:46</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00042">input.h:42</a></div></div>
<div class="ttc" id="astructgf__input__t_html_a72fd9e5cdc44ca92b7846babcf2bfbb1"><div class="ttname"><a href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">gf_input_t::mouse_flag</a></div><div class="ttdeci">int mouse_flag</div><div class="ttdoc">Mouse flag.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_ac47540120552de68249a985e09d7bd9f"><div class="ttname"><a href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">gf_input_t::mouse_y</a></div><div class="ttdeci">int mouse_y</div><div class="ttdoc">Y coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
<div class="ttc" id="astructgf__input__t_html_afbcc3c078ca608826acd824499a8b8b5"><div class="ttname"><a href="structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5">gf_input_t::mouse_x</a></div><div class="ttdeci">int mouse_x</div><div class="ttdoc">X coord of mouse.</div><div class="ttdef"><b>Definition</b> <a href="input_8h_source.html#l00064">input.h:64</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View File

@ -108,58 +108,61 @@ var searchData=
['gf_5finput_2eh_105',['gf_input.h',['../gf__input_8h.html',1,'']]],
['gf_5finput_5fcreate_106',['gf_input_create',['../gf__input_8h.html#ac926a70928c687f96cfbc24aef8ca96d',1,'gf_input.c']]],
['gf_5finput_5fdestroy_107',['gf_input_destroy',['../gf__input_8h.html#ac4a22f8231c87a464f6be7faead5dec2',1,'gf_input.c']]],
['gf_5finput_5ft_108',['gf_input_t',['../structgf__input__t.html',1,'']]],
['gf_5flog_109',['gf_log',['../gf__log_8h.html#aed92dc232c3ae9cabdff1eeea67dfa90',1,'gf_log.c']]],
['gf_5flog_2eh_110',['gf_log.h',['../gf__log_8h.html',1,'']]],
['gf_5flog_5ffunction_111',['gf_log_function',['../gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a',1,'gf_log.h']]],
['gf_5fmacro_2eh_112',['gf_macro.h',['../gf__macro_8h.html',1,'']]],
['gf_5fmath_2eh_113',['gf_math.h',['../gf__math_8h.html',1,'']]],
['gf_5fmath_5fcot_114',['gf_math_cot',['../gf__math_8h.html#aac8f6a22f2880f5b86b20a191a662333',1,'gf_math.c']]],
['gf_5fmath_5flog2_115',['gf_math_log2',['../gf__math_8h.html#a018423cb05adf480f9c3f28f304d1c47',1,'gf_math.c']]],
['gf_5fmath_5fmultiply_116',['gf_math_multiply',['../gf__math_8h.html#a394ebd35e2cddf28c86a45dad759fbee',1,'gf_math.c']]],
['gf_5fmath_5fnearest_5f2pow_117',['gf_math_nearest_2pow',['../gf__math_8h.html#aefea2441e869786726095fcda71750dc',1,'gf_math.c']]],
['gf_5fmath_5fnormal_118',['gf_math_normal',['../gf__math_8h.html#a5438b2f7f1324cdd664f2b823faa1ba6',1,'gf_math.c']]],
['gf_5fmath_5fnormalize_119',['gf_math_normalize',['../gf__math_8h.html#a3bd2afc9ff0e67e60afef9fe82553726',1,'gf_math.c']]],
['gf_5fmath_5fpi_120',['GF_MATH_PI',['../gf__math_8h.html#a8bf10c0638a206ac572807e90508b6b5',1,'gf_math.h']]],
['gf_5fmath_5fsubtract_121',['gf_math_subtract',['../gf__math_8h.html#a9df6d1b30bea0b200582e2873bddd113',1,'gf_math.c']]],
['gf_5fmath_5fvector_5fcopy_122',['GF_MATH_VECTOR_COPY',['../gf__math_8h.html#a545245d1e846e9c756e776eb6138536b',1,'gf_math.h']]],
['gf_5fmath_5fvector_5ft_123',['gf_math_vector_t',['../math_8h.html#a866f43b3ea5386cb9497738f1eec3d88',1,'math.h']]],
['gf_5fmesh_2eh_124',['gf_mesh.h',['../gf__mesh_8h.html',1,'']]],
['gf_5fmesh_5ft_125',['gf_mesh_t',['../structgf__mesh__t.html',1,'']]],
['gf_5fmesh_5ftriangle_5ft_126',['gf_mesh_triangle_t',['../structgf__mesh__triangle__t.html',1,'']]],
['gf_5fmodel_2eh_127',['gf_model.h',['../gf__model_8h.html',1,'']]],
['gf_5fmodel_5ft_128',['gf_model_t',['../structgf__model__t.html',1,'']]],
['gf_5fopengl_2eh_129',['gf_opengl.h',['../gf__opengl_8h.html',1,'']]],
['gf_5fphysics_2eh_130',['gf_physics.h',['../gf__physics_8h.html',1,'']]],
['gf_5fphysics_5fbegin_131',['gf_physics_begin',['../gf__physics_8h.html#a046ff3b6d3842c4cfd2c43ec576b09c6',1,'gf_physics.c']]],
['gf_5fphysics_5fcreate_132',['gf_physics_create',['../gf__physics_8h.html#a7e225db0a916463d791036c4d8636993',1,'gf_physics.c']]],
['gf_5fphysics_5fdestroy_133',['gf_physics_destroy',['../gf__physics_8h.html#ad9f65aa74657b4558c67f809c590fad3',1,'gf_physics.c']]],
['gf_5fphysics_5fend_134',['gf_physics_end',['../gf__physics_8h.html#a5724da53e501775d4a0faad3c91f1a14',1,'gf_physics.c']]],
['gf_5fphysics_5ft_135',['gf_physics_t',['../structgf__physics__t.html',1,'']]],
['gf_5fpre_2eh_136',['gf_pre.h',['../gf__pre_8h.html',1,'']]],
['gf_5fserver_2eh_137',['gf_server.h',['../gf__server_8h.html',1,'']]],
['gf_5fserver_5fbegin_138',['gf_server_begin',['../gf__server_8h.html#a656e41de75a97731bffa1653fc2c8d4a',1,'gf_server.c']]],
['gf_5fserver_5fcreate_139',['gf_server_create',['../gf__server_8h.html#a861aac514f048d33ce16e3209e125df5',1,'gf_server.c']]],
['gf_5fserver_5fdestroy_140',['gf_server_destroy',['../gf__server_8h.html#afedff111b1691c5973e264ce4f6a3787',1,'gf_server.c']]],
['gf_5fserver_5fend_141',['gf_server_end',['../gf__server_8h.html#a9f44e37cb5becfe321b352f8801fe22e',1,'gf_server.c']]],
['gf_5fserver_5ft_142',['gf_server_t',['../structgf__server__t.html',1,'']]],
['gf_5fset_5fcolor_143',['GF_SET_COLOR',['../gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203',1,'gf_graphic.h']]],
['gf_5ftexture_2eh_144',['gf_texture.h',['../gf__texture_8h.html',1,'']]],
['gf_5ftexture_5fcreate_145',['gf_texture_create',['../gf__texture_8h.html#a6cd0c41bfc9dbe140bb52f39aaa14080',1,'gf_texture.c']]],
['gf_5ftexture_5fdestroy_146',['gf_texture_destroy',['../gf__texture_8h.html#a3bfedc6c576e35173d3a7b1b9565e649',1,'gf_texture.c']]],
['gf_5ftexture_5ft_147',['gf_texture_t',['../structgf__texture__t.html',1,'']]],
['gf_5fthread_2eh_148',['gf_thread.h',['../gf__thread_8h.html',1,'']]],
['gf_5fthread_5fcontext_5ft_149',['gf_thread_context_t',['../structgf__thread__context__t.html',1,'']]],
['gf_5fthread_5fcreate_150',['gf_thread_create',['../gf__thread_8h.html#ad2a42aa3c8b51ec7e22625e8932906a4',1,'gf_thread.c']]],
['gf_5fthread_5fdestroy_151',['gf_thread_destroy',['../gf__thread_8h.html#ae75b99ee6c28e149e333512f46e8656a',1,'gf_thread.c']]],
['gf_5fthread_5fjoin_152',['gf_thread_join',['../gf__thread_8h.html#a168bd57321daded0d1789442e5680dea',1,'gf_thread.c']]],
['gf_5fthread_5ft_153',['gf_thread_t',['../structgf__thread__t.html',1,'']]],
['gf_5fversion_2eh_154',['gf_version.h',['../gf__version_8h.html',1,'']]],
['gf_5fversion_5fget_155',['gf_version_get',['../gf__version_8h.html#a6bbaecc50f6c677871dcf74d7d7dbc4a',1,'gf_version.c']]],
['gf_5fversion_5ft_156',['gf_version_t',['../structgf__version__t.html',1,'']]],
['glyph_157',['glyph',['../structgf__font__t.html#a1264a95b11cec574d66cda5f57de1808',1,'gf_font_t']]],
['goldfish_20engine_158',['GoldFish Engine',['../index.html',1,'']]],
['graphic_2eh_159',['graphic.h',['../graphic_8h.html',1,'']]],
['gui_160',['gui',['../structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063',1,'gf_draw_t']]],
['gui_2eh_161',['gui.h',['../gui_8h.html',1,'']]]
['gf_5finput_5fmouse_5fleft_5fmask_108',['GF_INPUT_MOUSE_LEFT_MASK',['../input_8h.html#a9e633a7c5d0bd577a11243b397354588',1,'input.h']]],
['gf_5finput_5fmouse_5fmiddle_5fmask_109',['GF_INPUT_MOUSE_MIDDLE_MASK',['../input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9',1,'input.h']]],
['gf_5finput_5fmouse_5fright_5fmask_110',['GF_INPUT_MOUSE_RIGHT_MASK',['../input_8h.html#aa131fcdb7b5d6864c62b32b86f702962',1,'input.h']]],
['gf_5finput_5ft_111',['gf_input_t',['../structgf__input__t.html',1,'']]],
['gf_5flog_112',['gf_log',['../gf__log_8h.html#aed92dc232c3ae9cabdff1eeea67dfa90',1,'gf_log.c']]],
['gf_5flog_2eh_113',['gf_log.h',['../gf__log_8h.html',1,'']]],
['gf_5flog_5ffunction_114',['gf_log_function',['../gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a',1,'gf_log.h']]],
['gf_5fmacro_2eh_115',['gf_macro.h',['../gf__macro_8h.html',1,'']]],
['gf_5fmath_2eh_116',['gf_math.h',['../gf__math_8h.html',1,'']]],
['gf_5fmath_5fcot_117',['gf_math_cot',['../gf__math_8h.html#aac8f6a22f2880f5b86b20a191a662333',1,'gf_math.c']]],
['gf_5fmath_5flog2_118',['gf_math_log2',['../gf__math_8h.html#a018423cb05adf480f9c3f28f304d1c47',1,'gf_math.c']]],
['gf_5fmath_5fmultiply_119',['gf_math_multiply',['../gf__math_8h.html#a394ebd35e2cddf28c86a45dad759fbee',1,'gf_math.c']]],
['gf_5fmath_5fnearest_5f2pow_120',['gf_math_nearest_2pow',['../gf__math_8h.html#aefea2441e869786726095fcda71750dc',1,'gf_math.c']]],
['gf_5fmath_5fnormal_121',['gf_math_normal',['../gf__math_8h.html#a5438b2f7f1324cdd664f2b823faa1ba6',1,'gf_math.c']]],
['gf_5fmath_5fnormalize_122',['gf_math_normalize',['../gf__math_8h.html#a3bd2afc9ff0e67e60afef9fe82553726',1,'gf_math.c']]],
['gf_5fmath_5fpi_123',['GF_MATH_PI',['../gf__math_8h.html#a8bf10c0638a206ac572807e90508b6b5',1,'gf_math.h']]],
['gf_5fmath_5fsubtract_124',['gf_math_subtract',['../gf__math_8h.html#a9df6d1b30bea0b200582e2873bddd113',1,'gf_math.c']]],
['gf_5fmath_5fvector_5fcopy_125',['GF_MATH_VECTOR_COPY',['../gf__math_8h.html#a545245d1e846e9c756e776eb6138536b',1,'gf_math.h']]],
['gf_5fmath_5fvector_5ft_126',['gf_math_vector_t',['../math_8h.html#a866f43b3ea5386cb9497738f1eec3d88',1,'math.h']]],
['gf_5fmesh_2eh_127',['gf_mesh.h',['../gf__mesh_8h.html',1,'']]],
['gf_5fmesh_5ft_128',['gf_mesh_t',['../structgf__mesh__t.html',1,'']]],
['gf_5fmesh_5ftriangle_5ft_129',['gf_mesh_triangle_t',['../structgf__mesh__triangle__t.html',1,'']]],
['gf_5fmodel_2eh_130',['gf_model.h',['../gf__model_8h.html',1,'']]],
['gf_5fmodel_5ft_131',['gf_model_t',['../structgf__model__t.html',1,'']]],
['gf_5fopengl_2eh_132',['gf_opengl.h',['../gf__opengl_8h.html',1,'']]],
['gf_5fphysics_2eh_133',['gf_physics.h',['../gf__physics_8h.html',1,'']]],
['gf_5fphysics_5fbegin_134',['gf_physics_begin',['../gf__physics_8h.html#a046ff3b6d3842c4cfd2c43ec576b09c6',1,'gf_physics.c']]],
['gf_5fphysics_5fcreate_135',['gf_physics_create',['../gf__physics_8h.html#a7e225db0a916463d791036c4d8636993',1,'gf_physics.c']]],
['gf_5fphysics_5fdestroy_136',['gf_physics_destroy',['../gf__physics_8h.html#ad9f65aa74657b4558c67f809c590fad3',1,'gf_physics.c']]],
['gf_5fphysics_5fend_137',['gf_physics_end',['../gf__physics_8h.html#a5724da53e501775d4a0faad3c91f1a14',1,'gf_physics.c']]],
['gf_5fphysics_5ft_138',['gf_physics_t',['../structgf__physics__t.html',1,'']]],
['gf_5fpre_2eh_139',['gf_pre.h',['../gf__pre_8h.html',1,'']]],
['gf_5fserver_2eh_140',['gf_server.h',['../gf__server_8h.html',1,'']]],
['gf_5fserver_5fbegin_141',['gf_server_begin',['../gf__server_8h.html#a656e41de75a97731bffa1653fc2c8d4a',1,'gf_server.c']]],
['gf_5fserver_5fcreate_142',['gf_server_create',['../gf__server_8h.html#a861aac514f048d33ce16e3209e125df5',1,'gf_server.c']]],
['gf_5fserver_5fdestroy_143',['gf_server_destroy',['../gf__server_8h.html#afedff111b1691c5973e264ce4f6a3787',1,'gf_server.c']]],
['gf_5fserver_5fend_144',['gf_server_end',['../gf__server_8h.html#a9f44e37cb5becfe321b352f8801fe22e',1,'gf_server.c']]],
['gf_5fserver_5ft_145',['gf_server_t',['../structgf__server__t.html',1,'']]],
['gf_5fset_5fcolor_146',['GF_SET_COLOR',['../gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203',1,'gf_graphic.h']]],
['gf_5ftexture_2eh_147',['gf_texture.h',['../gf__texture_8h.html',1,'']]],
['gf_5ftexture_5fcreate_148',['gf_texture_create',['../gf__texture_8h.html#a6cd0c41bfc9dbe140bb52f39aaa14080',1,'gf_texture.c']]],
['gf_5ftexture_5fdestroy_149',['gf_texture_destroy',['../gf__texture_8h.html#a3bfedc6c576e35173d3a7b1b9565e649',1,'gf_texture.c']]],
['gf_5ftexture_5ft_150',['gf_texture_t',['../structgf__texture__t.html',1,'']]],
['gf_5fthread_2eh_151',['gf_thread.h',['../gf__thread_8h.html',1,'']]],
['gf_5fthread_5fcontext_5ft_152',['gf_thread_context_t',['../structgf__thread__context__t.html',1,'']]],
['gf_5fthread_5fcreate_153',['gf_thread_create',['../gf__thread_8h.html#ad2a42aa3c8b51ec7e22625e8932906a4',1,'gf_thread.c']]],
['gf_5fthread_5fdestroy_154',['gf_thread_destroy',['../gf__thread_8h.html#ae75b99ee6c28e149e333512f46e8656a',1,'gf_thread.c']]],
['gf_5fthread_5fjoin_155',['gf_thread_join',['../gf__thread_8h.html#a168bd57321daded0d1789442e5680dea',1,'gf_thread.c']]],
['gf_5fthread_5ft_156',['gf_thread_t',['../structgf__thread__t.html',1,'']]],
['gf_5fversion_2eh_157',['gf_version.h',['../gf__version_8h.html',1,'']]],
['gf_5fversion_5fget_158',['gf_version_get',['../gf__version_8h.html#a6bbaecc50f6c677871dcf74d7d7dbc4a',1,'gf_version.c']]],
['gf_5fversion_5ft_159',['gf_version_t',['../structgf__version__t.html',1,'']]],
['glyph_160',['glyph',['../structgf__font__t.html#a1264a95b11cec574d66cda5f57de1808',1,'gf_font_t']]],
['goldfish_20engine_161',['GoldFish Engine',['../index.html',1,'']]],
['graphic_2eh_162',['graphic.h',['../graphic_8h.html',1,'']]],
['gui_163',['gui',['../structgf__draw__t.html#a5db50986159b8a2b1736aa315a5d8063',1,'gf_draw_t']]],
['gui_2eh_164',['gui.h',['../gui_8h.html',1,'']]]
];

View File

@ -6,6 +6,7 @@ var searchData=
['mesh_2eh_3',['mesh.h',['../mesh_8h.html',1,'']]],
['minor_4',['minor',['../structgf__version__t.html#a573839ca44261b9ccbd73e43be57d326',1,'gf_version_t']]],
['model_2eh_5',['model.h',['../model_8h.html',1,'']]],
['mouse_5fx_6',['mouse_x',['../structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5',1,'gf_input_t']]],
['mouse_5fy_7',['mouse_y',['../structgf__input__t.html#ac47540120552de68249a985e09d7bd9f',1,'gf_input_t']]]
['mouse_5fflag_6',['mouse_flag',['../structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1',1,'gf_input_t']]],
['mouse_5fx_7',['mouse_x',['../structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5',1,'gf_input_t']]],
['mouse_5fy_8',['mouse_y',['../structgf__input__t.html#ac47540120552de68249a985e09d7bd9f',1,'gf_input_t']]]
];

View File

@ -5,5 +5,5 @@ var searchData=
['physics_2eh_2',['physics.h',['../physics_8h.html',1,'']]],
['platform_3',['platform',['../structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c',1,'gf_draw_t']]],
['points_4',['points',['../structgf__mesh__triangle__t.html#a884485af47f0821ec8473b655d31bd74',1,'gf_mesh_triangle_t']]],
['pressed_5',['pressed',['../structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b',1,'gf_gui_button_t']]]
['pressed_5',['pressed',['../structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144',1,'gf_gui_component_t::pressed'],['../structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a',1,'gf_gui_t::pressed']]]
];

View File

@ -25,8 +25,11 @@ var searchData=
['gf_5fgui_5finvert_22',['GF_GUI_INVERT',['../gf__gui_8h.html#a01d6d034ff93d118bcbabf86f33735c5',1,'gf_gui.h']]],
['gf_5fgui_5fmax_5fcomponents_23',['GF_GUI_MAX_COMPONENTS',['../gui_8h.html#a33770d9046d53ad607fcc938f1619eb8',1,'gui.h']]],
['gf_5fgui_5fnormal_24',['GF_GUI_NORMAL',['../gf__gui_8h.html#ad122969dc187a91908fc312f185eaa46',1,'gf_gui.h']]],
['gf_5flog_5ffunction_25',['gf_log_function',['../gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a',1,'gf_log.h']]],
['gf_5fmath_5fpi_26',['GF_MATH_PI',['../gf__math_8h.html#a8bf10c0638a206ac572807e90508b6b5',1,'gf_math.h']]],
['gf_5fmath_5fvector_5fcopy_27',['GF_MATH_VECTOR_COPY',['../gf__math_8h.html#a545245d1e846e9c756e776eb6138536b',1,'gf_math.h']]],
['gf_5fset_5fcolor_28',['GF_SET_COLOR',['../gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203',1,'gf_graphic.h']]]
['gf_5finput_5fmouse_5fleft_5fmask_25',['GF_INPUT_MOUSE_LEFT_MASK',['../input_8h.html#a9e633a7c5d0bd577a11243b397354588',1,'input.h']]],
['gf_5finput_5fmouse_5fmiddle_5fmask_26',['GF_INPUT_MOUSE_MIDDLE_MASK',['../input_8h.html#a1bcb3fe6d407a1f4791efcbd86cffac9',1,'input.h']]],
['gf_5finput_5fmouse_5fright_5fmask_27',['GF_INPUT_MOUSE_RIGHT_MASK',['../input_8h.html#aa131fcdb7b5d6864c62b32b86f702962',1,'input.h']]],
['gf_5flog_5ffunction_28',['gf_log_function',['../gf__log_8h.html#a165a2d1cecbdd974b4a44450011bb84a',1,'gf_log.h']]],
['gf_5fmath_5fpi_29',['GF_MATH_PI',['../gf__math_8h.html#a8bf10c0638a206ac572807e90508b6b5',1,'gf_math.h']]],
['gf_5fmath_5fvector_5fcopy_30',['GF_MATH_VECTOR_COPY',['../gf__math_8h.html#a545245d1e846e9c756e776eb6138536b',1,'gf_math.h']]],
['gf_5fset_5fcolor_31',['GF_SET_COLOR',['../gf__graphic_8h.html#a30c57cf06829cfb3f68556e73a86b203',1,'gf_graphic.h']]]
];

View File

@ -3,6 +3,7 @@ var searchData=
['major_0',['major',['../structgf__version__t.html#a18c4ea6d16bd4d27da71586779ea3295',1,'gf_version_t']]],
['mesh_1',['mesh',['../structgf__model__t.html#aa28477a09739d0ef7566532fdb62aa06',1,'gf_model_t']]],
['minor_2',['minor',['../structgf__version__t.html#a573839ca44261b9ccbd73e43be57d326',1,'gf_version_t']]],
['mouse_5fx_3',['mouse_x',['../structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5',1,'gf_input_t']]],
['mouse_5fy_4',['mouse_y',['../structgf__input__t.html#ac47540120552de68249a985e09d7bd9f',1,'gf_input_t']]]
['mouse_5fflag_3',['mouse_flag',['../structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1',1,'gf_input_t']]],
['mouse_5fx_4',['mouse_x',['../structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5',1,'gf_input_t']]],
['mouse_5fy_5',['mouse_y',['../structgf__input__t.html#ac47540120552de68249a985e09d7bd9f',1,'gf_input_t']]]
];

View File

@ -4,5 +4,5 @@ var searchData=
['physics_1',['physics',['../structgf__server__t.html#a03a9c92df8537d9eb5d3cf5f43a02e40',1,'gf_server_t']]],
['platform_2',['platform',['../structgf__draw__t.html#ab7893e83d1d13fe68efbed786df0ce5c',1,'gf_draw_t']]],
['points_3',['points',['../structgf__mesh__triangle__t.html#a884485af47f0821ec8473b655d31bd74',1,'gf_mesh_triangle_t']]],
['pressed_4',['pressed',['../structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b',1,'gf_gui_button_t']]]
['pressed_4',['pressed',['../structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144',1,'gf_gui_component_t::pressed'],['../structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a',1,'gf_gui_t::pressed']]]
];

View File

@ -107,33 +107,12 @@ Data Fields</h2></td></tr>
<tr class="memitem:af4244759e08c083e52da752f3e83980c" id="r_af4244759e08c083e52da752f3e83980c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c">text</a></td></tr>
<tr class="memdesc:af4244759e08c083e52da752f3e83980c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Button text. <br /></td></tr>
<tr class="separator:af4244759e08c083e52da752f3e83980c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac32e6a53a2170f64cebf5ff7df77016b" id="r_ac32e6a53a2170f64cebf5ff7df77016b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b">pressed</a></td></tr>
<tr class="memdesc:ac32e6a53a2170f64cebf5ff7df77016b"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>1</code> if pressed, otherwise <code>0</code> <br /></td></tr>
<tr class="separator:ac32e6a53a2170f64cebf5ff7df77016b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Button component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00063">63</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00057">57</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="ac32e6a53a2170f64cebf5ff7df77016b" name="ac32e6a53a2170f64cebf5ff7df77016b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac32e6a53a2170f64cebf5ff7df77016b">&#9670;&#160;</a></span>pressed</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gf_gui_button_t::pressed</td>
</tr>
</table>
</div><div class="memdoc">
<p><code>1</code> if pressed, otherwise <code>0</code> </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00063">63</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
<a id="af4244759e08c083e52da752f3e83980c" name="af4244759e08c083e52da752f3e83980c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4244759e08c083e52da752f3e83980c">&#9670;&#160;</a></span>text</h2>
@ -148,7 +127,7 @@ Data Fields</h2></td></tr>
<p>Button text. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00063">63</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00057">57</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>

View File

@ -1,5 +1,4 @@
var structgf__gui__button__t =
[
[ "pressed", "structgf__gui__button__t.html#ac32e6a53a2170f64cebf5ff7df77016b", null ],
[ "text", "structgf__gui__button__t.html#af4244759e08c083e52da752f3e83980c", null ]
];

View File

@ -119,6 +119,9 @@ Data Fields</h2></td></tr>
<tr class="memitem:a76656c3956b8b6055eaec792d82ceddb" id="r_a76656c3956b8b6055eaec792d82ceddb"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb">height</a></td></tr>
<tr class="memdesc:a76656c3956b8b6055eaec792d82ceddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Height of component. <br /></td></tr>
<tr class="separator:a76656c3956b8b6055eaec792d82ceddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51325b6f792b76b9bb6ced0e75dc3144" id="r_a51325b6f792b76b9bb6ced0e75dc3144"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144">pressed</a></td></tr>
<tr class="memdesc:a51325b6f792b76b9bb6ced0e75dc3144"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>1</code> if pressed, otherwise <code>0</code> <br /></td></tr>
<tr class="separator:a51325b6f792b76b9bb6ced0e75dc3144"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ce56e0861d5d77304cfb63604eaf8ec" id="r_a9ce56e0861d5d77304cfb63604eaf8ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="uniongf__gui__union__t.html">gf_gui_union_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec">u</a></td></tr>
<tr class="memdesc:a9ce56e0861d5d77304cfb63604eaf8ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Component union. <br /></td></tr>
<tr class="separator:a9ce56e0861d5d77304cfb63604eaf8ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -126,7 +129,7 @@ Data Fields</h2></td></tr>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="a76656c3956b8b6055eaec792d82ceddb" name="a76656c3956b8b6055eaec792d82ceddb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76656c3956b8b6055eaec792d82ceddb">&#9670;&#160;</a></span>height</h2>
@ -142,7 +145,25 @@ Data Fields</h2></td></tr>
<p>Height of component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
<a id="a51325b6f792b76b9bb6ced0e75dc3144" name="a51325b6f792b76b9bb6ced0e75dc3144"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51325b6f792b76b9bb6ced0e75dc3144">&#9670;&#160;</a></span>pressed</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gf_gui_component_t::pressed</td>
</tr>
</table>
</div><div class="memdoc">
<p><code>1</code> if pressed, otherwise <code>0</code> </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -161,7 +182,7 @@ Data Fields</h2></td></tr>
<p>Component type. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="gui_8h.html#a29f22c7359d8c3b586f0d4eb82213d03" title="GUI component types.">GF_GUI_COMPONENT_TYPES</a> </dd></dl>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -179,7 +200,7 @@ Data Fields</h2></td></tr>
<p>Component union. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -197,7 +218,7 @@ Data Fields</h2></td></tr>
<p>Width of component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -215,7 +236,7 @@ Data Fields</h2></td></tr>
<p>X coord of component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -233,7 +254,7 @@ Data Fields</h2></td></tr>
<p>X coord of component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00108">108</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00106">106</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>

View File

@ -1,6 +1,7 @@
var structgf__gui__component__t =
[
[ "height", "structgf__gui__component__t.html#a76656c3956b8b6055eaec792d82ceddb", null ],
[ "pressed", "structgf__gui__component__t.html#a51325b6f792b76b9bb6ced0e75dc3144", null ],
[ "type", "structgf__gui__component__t.html#ac6a6067145b869324f9464aeeae5839f", null ],
[ "u", "structgf__gui__component__t.html#a9ce56e0861d5d77304cfb63604eaf8ec", null ],
[ "width", "structgf__gui__component__t.html#a6083ffb3cc61006522da912641bc4b1d", null ],

View File

@ -110,6 +110,9 @@ Data Fields</h2></td></tr>
<tr class="memitem:a83995bd363ebcdac5b80a16681ea111a" id="r_a83995bd363ebcdac5b80a16681ea111a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgf__draw__t.html">gf_draw_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a">draw</a></td></tr>
<tr class="memdesc:a83995bd363ebcdac5b80a16681ea111a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drawing interface. <br /></td></tr>
<tr class="separator:a83995bd363ebcdac5b80a16681ea111a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6214eb0616b3f4dc9032eef592430b6a" id="r_a6214eb0616b3f4dc9032eef592430b6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="gui_8h.html#a17ba559c53b849a8391b8f48d91b4f11">gf_gui_id_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a">pressed</a></td></tr>
<tr class="memdesc:a6214eb0616b3f4dc9032eef592430b6a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><code>1</code> if something is being pressed, otherwise <code>0</code> <br /></td></tr>
<tr class="separator:a6214eb0616b3f4dc9032eef592430b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9c0a86d1d6ed76b52065e64f02ef8d7" id="r_aa9c0a86d1d6ed76b52065e64f02ef8d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgf__gui__component__t.html">gf_gui_component_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7">area</a> [64]</td></tr>
<tr class="memdesc:aa9c0a86d1d6ed76b52065e64f02ef8d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Created components. <br /></td></tr>
<tr class="separator:aa9c0a86d1d6ed76b52065e64f02ef8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -117,7 +120,7 @@ Data Fields</h2></td></tr>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>GUI. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00128">128</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00130">130</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="aa9c0a86d1d6ed76b52065e64f02ef8d7" name="aa9c0a86d1d6ed76b52065e64f02ef8d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9c0a86d1d6ed76b52065e64f02ef8d7">&#9670;&#160;</a></span>area</h2>
@ -133,7 +136,7 @@ Data Fields</h2></td></tr>
<p>Created components. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00128">128</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00130">130</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -151,7 +154,7 @@ Data Fields</h2></td></tr>
<p>Drawing interface. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00128">128</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00130">130</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
@ -169,7 +172,25 @@ Data Fields</h2></td></tr>
<p>Engine instance. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00128">128</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00130">130</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>
<a id="a6214eb0616b3f4dc9032eef592430b6a" name="a6214eb0616b3f4dc9032eef592430b6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6214eb0616b3f4dc9032eef592430b6a">&#9670;&#160;</a></span>pressed</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gf_gui_t::pressed</td>
</tr>
</table>
</div><div class="memdoc">
<p><code>1</code> if something is being pressed, otherwise <code>0</code> </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00130">130</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>

View File

@ -2,5 +2,6 @@ var structgf__gui__t =
[
[ "area", "structgf__gui__t.html#aa9c0a86d1d6ed76b52065e64f02ef8d7", null ],
[ "draw", "structgf__gui__t.html#a83995bd363ebcdac5b80a16681ea111a", null ],
[ "engine", "structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b", null ]
[ "engine", "structgf__gui__t.html#a74daf2c905e24c5c6d40ab8803e5018b", null ],
[ "pressed", "structgf__gui__t.html#a6214eb0616b3f4dc9032eef592430b6a", null ]
];

View File

@ -113,11 +113,14 @@ Data Fields</h2></td></tr>
<tr class="memitem:ac47540120552de68249a985e09d7bd9f" id="r_ac47540120552de68249a985e09d7bd9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__input__t.html#ac47540120552de68249a985e09d7bd9f">mouse_y</a></td></tr>
<tr class="memdesc:ac47540120552de68249a985e09d7bd9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Y coord of mouse. <br /></td></tr>
<tr class="separator:ac47540120552de68249a985e09d7bd9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72fd9e5cdc44ca92b7846babcf2bfbb1" id="r_a72fd9e5cdc44ca92b7846babcf2bfbb1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1">mouse_flag</a></td></tr>
<tr class="memdesc:a72fd9e5cdc44ca92b7846babcf2bfbb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mouse flag. <br /></td></tr>
<tr class="separator:a72fd9e5cdc44ca92b7846babcf2bfbb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Input interface. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00042">42</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00064">64</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="ad67369fac1e057907a6486d4619f2a4f" name="ad67369fac1e057907a6486d4619f2a4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad67369fac1e057907a6486d4619f2a4f">&#9670;&#160;</a></span>engine</h2>
@ -133,7 +136,25 @@ Data Fields</h2></td></tr>
<p>Engine instance. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00042">42</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00064">64</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
<a id="a72fd9e5cdc44ca92b7846babcf2bfbb1" name="a72fd9e5cdc44ca92b7846babcf2bfbb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72fd9e5cdc44ca92b7846babcf2bfbb1">&#9670;&#160;</a></span>mouse_flag</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gf_input_t::mouse_flag</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mouse flag. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00064">64</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
@ -151,7 +172,7 @@ Data Fields</h2></td></tr>
<p>X coord of mouse. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00042">42</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00064">64</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>
@ -169,7 +190,7 @@ Data Fields</h2></td></tr>
<p>Y coord of mouse. </p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00042">42</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="input_8h_source.html#l00064">64</a> of file <a class="el" href="input_8h_source.html">input.h</a>.</p>
</div>
</div>

View File

@ -1,6 +1,7 @@
var structgf__input__t =
[
[ "engine", "structgf__input__t.html#ad67369fac1e057907a6486d4619f2a4f", null ],
[ "mouse_flag", "structgf__input__t.html#a72fd9e5cdc44ca92b7846babcf2bfbb1", null ],
[ "mouse_x", "structgf__input__t.html#afbcc3c078ca608826acd824499a8b8b5", null ],
[ "mouse_y", "structgf__input__t.html#ac47540120552de68249a985e09d7bd9f", null ]
];

View File

@ -111,7 +111,7 @@ Data Fields</h2></td></tr>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Component union. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00073">73</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00067">67</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div><h2 class="groupheader">Field Documentation</h2>
<a id="a35c5cf94acf5b2158389f19578ee9ad7" name="a35c5cf94acf5b2158389f19578ee9ad7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35c5cf94acf5b2158389f19578ee9ad7">&#9670;&#160;</a></span>button</h2>
@ -127,7 +127,7 @@ Data Fields</h2></td></tr>
<p>Button component. </p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00074">74</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="gui_8h_source.html#l00068">68</a> of file <a class="el" href="gui_8h_source.html">gui.h</a>.</p>
</div>
</div>