<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Changing Window Size Mid-Game (Like in an options menu) Trouble</title>
		<link>http://www.allegro.cc/forums/view/590010</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 11 Feb 2007 06:22:09 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I am programming a tile map editor. It has two modes; Edit mode to edit the tile map and test mode to display it like it would be in a game. I want to have Edit mode windowed at 1300*800 and test mode full screen at 640*480 but I am having problems doing this. Here some code that demonstrates my problem that uses the classes and similar code in my editor.</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p">#include &lt;allegro.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;iostream&gt;</span></td></tr><tr><td class="number">3</td><td>&#160;</td></tr><tr><td class="number">4</td><td><span class="p">#define WINDOWED    0</span></td></tr><tr><td class="number">5</td><td><span class="p">#define FULLSCREEN  1</span></td></tr><tr><td class="number">6</td><td>&#160;</td></tr><tr><td class="number">7</td><td><span class="p">#define MODE_ONE    1</span></td></tr><tr><td class="number">8</td><td><span class="p">#define MODE_TWO    2</span></td></tr><tr><td class="number">9</td><td>&#160;</td></tr><tr><td class="number">10</td><td><span class="k1">class</span> Window</td></tr><tr><td class="number">11</td><td><span class="k2">{</span></td></tr><tr><td class="number">12</td><td>    public:</td></tr><tr><td class="number">13</td><td>        Window<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>        Window<span class="k2">(</span><span class="k1">int</span> m, <span class="k1">int</span> w, <span class="k1">int</span> h, <span class="k1">int</span> d<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>        ~Window<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>&#160;</td></tr><tr><td class="number">17</td><td>        <span class="k1">int</span> ApplySettings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>        <span class="k1">int</span> SetParameters<span class="k2">(</span><span class="k1">int</span> m, <span class="k1">int</span> w, <span class="k1">int</span> h, <span class="k1">int</span> d<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>        <span class="k1">void</span> Deinitialize<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>&#160;</td></tr><tr><td class="number">21</td><td>        <span class="k1">int</span> SetTitle<span class="k2">(</span>std::string t<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td>        <span class="k1">void</span> Flip<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>        <span class="k1">void</span> Clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td>&#160;</td></tr><tr><td class="number">26</td><td>        <span class="k1">void</span> ShowMouse<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">27</td><td>        <span class="k1">void</span> HideMouse<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">28</td><td>&#160;</td></tr><tr><td class="number">29</td><td>        <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> buffer<span class="k2">;</span></td></tr><tr><td class="number">30</td><td>&#160;</td></tr><tr><td class="number">31</td><td>    private:</td></tr><tr><td class="number">32</td><td>        <span class="k1">int</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a><span class="k2">;</span></td></tr><tr><td class="number">33</td><td>        <span class="k1">int</span> width, height<span class="k2">;</span></td></tr><tr><td class="number">34</td><td>        <span class="k1">int</span> depth<span class="k2">;</span></td></tr><tr><td class="number">35</td><td>        std::string title<span class="k2">;</span></td></tr><tr><td class="number">36</td><td>&#160;</td></tr><tr><td class="number">37</td><td>        <span class="k1">int</span> activePage<span class="k2">;</span></td></tr><tr><td class="number">38</td><td>        <a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> page<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>&#160;</td></tr><tr><td class="number">41</td><td>Window::Window<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">42</td><td><span class="k2">{</span></td></tr><tr><td class="number">43</td><td>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a> <span class="k3">=</span> GFX_AUTODETECT_WINDOWED<span class="k2">;</span></td></tr><tr><td class="number">44</td><td>&#160;</td></tr><tr><td class="number">45</td><td>    width <span class="k3">=</span> <span class="n">640</span><span class="k2">;</span></td></tr><tr><td class="number">46</td><td>    height <span class="k3">=</span> <span class="n">480</span><span class="k2">;</span></td></tr><tr><td class="number">47</td><td>    depth <span class="k3">=</span> <span class="n">16</span><span class="k2">;</span></td></tr><tr><td class="number">48</td><td>&#160;</td></tr><tr><td class="number">49</td><td>    title <span class="k3">=</span> <span class="s">"Allegro Window"</span><span class="k2">;</span></td></tr><tr><td class="number">50</td><td>&#160;</td></tr><tr><td class="number">51</td><td>    page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">52</td><td>    page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">53</td><td>    activePage <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">54</td><td>&#160;</td></tr><tr><td class="number">55</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">56</td><td>&#160;</td></tr><tr><td class="number">57</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">58</td><td>    <a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">59</td><td>&#160;</td></tr><tr><td class="number">60</td><td><span class="k2">}</span></td></tr><tr><td class="number">61</td><td>&#160;</td></tr><tr><td class="number">62</td><td>Window::Window<span class="k2">(</span><span class="k1">int</span> m, <span class="k1">int</span> w, <span class="k1">int</span> h, <span class="k1">int</span> d<span class="k2">)</span></td></tr><tr><td class="number">63</td><td><span class="k2">{</span></td></tr><tr><td class="number">64</td><td>    <span class="k1">if</span> <span class="k2">(</span>m <span class="k3">=</span><span class="k3">=</span> FULLSCREEN<span class="k2">)</span></td></tr><tr><td class="number">65</td><td>        <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a> <span class="k3">=</span> GFX_AUTODETECT_FULLSCREEN<span class="k2">;</span></td></tr><tr><td class="number">66</td><td>    <span class="k1">else</span></td></tr><tr><td class="number">67</td><td>        <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a> <span class="k3">=</span> GFX_AUTODETECT_WINDOWED<span class="k2">;</span></td></tr><tr><td class="number">68</td><td>&#160;</td></tr><tr><td class="number">69</td><td>    width <span class="k3">=</span> w<span class="k2">;</span></td></tr><tr><td class="number">70</td><td>    height <span class="k3">=</span> h<span class="k2">;</span></td></tr><tr><td class="number">71</td><td>    depth <span class="k3">=</span> d<span class="k2">;</span></td></tr><tr><td class="number">72</td><td>&#160;</td></tr><tr><td class="number">73</td><td>    title <span class="k3">=</span> <span class="s">"Allegro Window"</span><span class="k2">;</span></td></tr><tr><td class="number">74</td><td>&#160;</td></tr><tr><td class="number">75</td><td>    page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">76</td><td>    page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">77</td><td>    activePage <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">78</td><td>&#160;</td></tr><tr><td class="number">79</td><td>    <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">80</td><td>&#160;</td></tr><tr><td class="number">81</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">82</td><td>    <a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">83</td><td>&#160;</td></tr><tr><td class="number">84</td><td><span class="k2">}</span></td></tr><tr><td class="number">85</td><td>&#160;</td></tr><tr><td class="number">86</td><td>Window::~Window<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span><span class="k2">}</span></td></tr><tr><td class="number">87</td><td>&#160;</td></tr><tr><td class="number">88</td><td><span class="k1">int</span> Window::ApplySettings<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">89</td><td><span class="k2">{</span></td></tr><tr><td class="number">90</td><td>    <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span>depth<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">91</td><td>&#160;</td></tr><tr><td class="number">92</td><td>    <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a>, width, height, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span> <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">93</td><td>        <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">94</td><td>&#160;</td></tr><tr><td class="number">95</td><td>    <span class="k1">if</span> <span class="k2">(</span>page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">!</span><span class="k3">=</span> NULL<span class="k2">)</span></td></tr><tr><td class="number">96</td><td>        <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">97</td><td>    <span class="k1">if</span> <span class="k2">(</span>page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">!</span><span class="k3">=</span> NULL<span class="k2">)</span></td></tr><tr><td class="number">98</td><td>        <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">99</td><td>&#160;</td></tr><tr><td class="number">100</td><td>    page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">101</td><td>    page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">102</td><td>&#160;</td></tr><tr><td class="number">103</td><td>    page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_video_bitmap" target="_blank"><span class="a">create_video_bitmap</span></a><span class="k2">(</span>width, height<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">104</td><td>    page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/create_video_bitmap" target="_blank"><span class="a">create_video_bitmap</span></a><span class="k2">(</span>width, height<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">105</td><td>&#160;</td></tr><tr><td class="number">106</td><td>    buffer <span class="k3">=</span> page<span class="k2">[</span>activePage<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>&#160;</td></tr><tr><td class="number">108</td><td>    <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">109</td><td><span class="k2">}</span></td></tr><tr><td class="number">110</td><td>&#160;</td></tr><tr><td class="number">111</td><td><span class="k1">int</span> Window::SetParameters<span class="k2">(</span><span class="k1">int</span> m, <span class="k1">int</span> w, <span class="k1">int</span> h, <span class="k1">int</span> d<span class="k2">)</span></td></tr><tr><td class="number">112</td><td><span class="k2">{</span></td></tr><tr><td class="number">113</td><td>    <span class="k1">if</span> <span class="k2">(</span>m <span class="k3">=</span><span class="k3">=</span> FULLSCREEN<span class="k2">)</span></td></tr><tr><td class="number">114</td><td>        <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a> <span class="k3">=</span> GFX_AUTODETECT_FULLSCREEN<span class="k2">;</span></td></tr><tr><td class="number">115</td><td>    <span class="k1">else</span></td></tr><tr><td class="number">116</td><td>        <a href="http://www.delorie.com/djgpp/doc/libc/libc_865.html" target="_blank">window</a> <span class="k3">=</span> GFX_AUTODETECT_WINDOWED<span class="k2">;</span></td></tr><tr><td class="number">117</td><td>&#160;</td></tr><tr><td class="number">118</td><td>    width <span class="k3">=</span> w<span class="k2">;</span></td></tr><tr><td class="number">119</td><td>    height <span class="k3">=</span> h<span class="k2">;</span></td></tr><tr><td class="number">120</td><td>    depth <span class="k3">=</span> d<span class="k2">;</span></td></tr><tr><td class="number">121</td><td><span class="k2">}</span></td></tr><tr><td class="number">122</td><td>&#160;</td></tr><tr><td class="number">123</td><td><span class="k1">int</span> Window::SetTitle<span class="k2">(</span>std::string t<span class="k2">)</span></td></tr><tr><td class="number">124</td><td><span class="k2">{</span></td></tr><tr><td class="number">125</td><td>    title <span class="k3">=</span> t<span class="k2">;</span></td></tr><tr><td class="number">126</td><td>    <a href="http://www.allegro.cc/manual/set_window_title" target="_blank"><span class="a">set_window_title</span></a><span class="k2">(</span>title.c_str<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">127</td><td>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">128</td><td><span class="k2">}</span></td></tr><tr><td class="number">129</td><td>&#160;</td></tr><tr><td class="number">130</td><td><span class="k1">void</span> Window::Deinitialize<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">131</td><td><span class="k2">{</span></td></tr><tr><td class="number">132</td><td>    <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>page<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">133</td><td>    <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>page<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">134</td><td><span class="k2">}</span></td></tr><tr><td class="number">135</td><td>&#160;</td></tr><tr><td class="number">136</td><td><span class="k1">void</span> Window::Flip<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">137</td><td><span class="k2">{</span></td></tr><tr><td class="number">138</td><td>    <a href="http://www.allegro.cc/manual/show_video_bitmap" target="_blank"><span class="a">show_video_bitmap</span></a><span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">139</td><td>&#160;</td></tr><tr><td class="number">140</td><td>    activePage <span class="k3">=</span> <span class="n">1</span> <span class="k3">-</span> activePage<span class="k2">;</span></td></tr><tr><td class="number">141</td><td>&#160;</td></tr><tr><td class="number">142</td><td>    buffer <span class="k3">=</span> page<span class="k2">[</span>activePage<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">143</td><td><span class="k2">}</span></td></tr><tr><td class="number">144</td><td>&#160;</td></tr><tr><td class="number">145</td><td><span class="k1">void</span> Window::Clear<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">146</td><td><span class="k2">{</span></td></tr><tr><td class="number">147</td><td>    clear<span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">148</td><td><span class="k2">}</span></td></tr><tr><td class="number">149</td><td>&#160;</td></tr><tr><td class="number">150</td><td><span class="k1">void</span> Window::ShowMouse<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">151</td><td><span class="k2">{</span></td></tr><tr><td class="number">152</td><td>    <a href="http://www.allegro.cc/manual/show_os_cursor" target="_blank"><span class="a">show_os_cursor</span></a><span class="k2">(</span>MOUSE_CURSOR_ARROW<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">153</td><td><span class="k2">}</span></td></tr><tr><td class="number">154</td><td>&#160;</td></tr><tr><td class="number">155</td><td><span class="k1">void</span> Window::HideMouse<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">156</td><td><span class="k2">{</span></td></tr><tr><td class="number">157</td><td>    <a href="http://www.allegro.cc/manual/show_os_cursor" target="_blank"><span class="a">show_os_cursor</span></a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">158</td><td><span class="k2">}</span></td></tr><tr><td class="number">159</td><td>&#160;</td></tr><tr><td class="number">160</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">161</td><td><span class="k2">{</span></td></tr><tr><td class="number">162</td><td>&#160;</td></tr><tr><td class="number">163</td><td>    Window Screen<span class="k2">(</span>WINDOWED, <span class="n">640</span>, <span class="n">480</span>, <span class="n">16</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">164</td><td>    Screen.ApplySettings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">165</td><td>    Screen.ShowMouse<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">166</td><td>&#160;</td></tr><tr><td class="number">167</td><td>    <span class="k1">int</span> quit <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">168</td><td>    <span class="k1">int</span> mode <span class="k3">=</span> MODE_ONE<span class="k2">;</span></td></tr><tr><td class="number">169</td><td>&#160;</td></tr><tr><td class="number">170</td><td>    <span class="k1">int</span> x <span class="k3">=</span> <span class="n">200</span><span class="k2">;</span></td></tr><tr><td class="number">171</td><td>&#160;</td></tr><tr><td class="number">172</td><td>    <span class="k1">while</span> <span class="k2">(</span><span class="k3">!</span>quit<span class="k2">)</span></td></tr><tr><td class="number">173</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">174</td><td>        Screen.Clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">175</td><td>&#160;</td></tr><tr><td class="number">176</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">177</td><td>            quit <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">178</td><td>&#160;</td></tr><tr><td class="number">179</td><td>        <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">180</td><td>            x--<span class="k2">;</span></td></tr><tr><td class="number">181</td><td>        <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_RIGHT<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">182</td><td>            x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">183</td><td>&#160;</td></tr><tr><td class="number">184</td><td>        <span class="k1">if</span> <span class="k2">(</span>mode <span class="k3">=</span><span class="k3">=</span> MODE_ONE<span class="k2">)</span></td></tr><tr><td class="number">185</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">186</td><td>            <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_F2<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">187</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">188</td><td>                mode <span class="k3">=</span> MODE_TWO<span class="k2">;</span></td></tr><tr><td class="number">189</td><td>                Screen.SetParameters<span class="k2">(</span>WINDOWED, <span class="n">800</span>, <span class="n">600</span>, <span class="n">16</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">190</td><td>                Screen.ApplySettings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">191</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">192</td><td>&#160;</td></tr><tr><td class="number">193</td><td>            <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>Screen.buffer, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, x, <span class="n">200</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"MODE 1"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">194</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">195</td><td>&#160;</td></tr><tr><td class="number">196</td><td>        <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mode <span class="k3">=</span><span class="k3">=</span> MODE_TWO<span class="k2">)</span></td></tr><tr><td class="number">197</td><td>        <span class="k2">{</span></td></tr><tr><td class="number">198</td><td>            <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_F1<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">199</td><td>            <span class="k2">{</span></td></tr><tr><td class="number">200</td><td>                mode <span class="k3">=</span> MODE_ONE<span class="k2">;</span></td></tr><tr><td class="number">201</td><td>                Screen.SetParameters<span class="k2">(</span>WINDOWED, <span class="n">640</span>, <span class="n">480</span>, <span class="n">16</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">202</td><td>                Screen.ApplySettings<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">203</td><td>            <span class="k2">}</span></td></tr><tr><td class="number">204</td><td>            <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>Screen.buffer, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, x, <span class="n">100</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>, <span class="k3">-</span><span class="n">1</span>, <span class="s">"MODE 2"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">205</td><td>        <span class="k2">}</span></td></tr><tr><td class="number">206</td><td>&#160;</td></tr><tr><td class="number">207</td><td>        Screen.Flip<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">208</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">209</td><td>&#160;</td></tr><tr><td class="number">210</td><td>    Screen.Deinitialize<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">211</td><td>&#160;</td></tr><tr><td class="number">212</td><td>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">213</td><td>&#160;</td></tr><tr><td class="number">214</td><td><span class="k2">}</span><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span></td></tr></tbody></table></div></div><p>

Upon switching to MODE_TWO the first time by pressing F2 all is fine. Then I switch back to MODE_ONE by pressing F1 and it is fine again. When I switch back to MODE_TWO, it doesn&#39;t display the text. MODE_ONE still works fine though.</p><p>All I can think of, since I am using page flipping, is that the clear buffer command becomes out of sync.</p><p>How do you suggest I change this code or is there an alternative way of doing this?</p><p>Thank you for your time.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (KnightWhoSaysNi)</author>
		<pubDate>Sun, 11 Feb 2007 06:22:09 +0000</pubDate>
	</item>
</rss>
