Remade Doxygen Docs

This commit is contained in:
2019-12-19 13:50:50 +01:00
parent a3c19e9851
commit ce32ea9a19
214 changed files with 4062 additions and 2226 deletions

View File

@@ -100,494 +100,486 @@ $(document).ready(function(){initNavTree('_intelli_photo_gui_8cpp_source.html','
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; </div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// IntelliPhotoGui constructor</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="class_intelli_photo_gui.html#ad2aaec3c1517a9aaa461b54e341b97e0"> 10</a></span>&#160;<a class="code" href="class_intelli_photo_gui.html#ad2aaec3c1517a9aaa461b54e341b97e0">IntelliPhotoGui::IntelliPhotoGui</a>(){</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; <span class="comment">//create Gui elements and lay them out</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; createGui();</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; <span class="comment">// Create actions</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; createActions();</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="comment">//create Menus</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; createMenus();</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; <span class="comment">//set style of the gui</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; setIntelliStyle();</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <span class="comment">// Size the app</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; showMaximized();</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;}</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; <span class="comment">// create Gui elements and lay them out</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; createGui();</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; <span class="comment">// Create actions</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; createActions();</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="comment">// create Menus</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; createMenus();</div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; <span class="comment">// set style of the gui</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; setIntelliStyle();</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <span class="comment">// Size the app</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; resize(600,600);</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; showMaximized();</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">// User tried to close the app</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13"> 24</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13">IntelliPhotoGui::closeEvent</a>(QCloseEvent *event){</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="comment">// If they try to close maybeSave() returns true</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="comment">// if no changes have been made and the app closes</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordflow">if</span> (maybeSave()) {</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keyword">event</span>-&gt;accept();</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="comment">// If there have been changes ignore the event</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keyword">event</span>-&gt;ignore();</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;}</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">// Check if the current image has been changed and then</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">// open a dialog to open a file</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotOpen(){</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="comment">// Check if changes have been made since last save</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="comment">// maybeSave() returns true if no changes have been made</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">if</span> (maybeSave()) {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="comment">// Get the file to open from a dialog</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="comment">// tr sets the window title to Open File</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">// QDir opens the current dirctory</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; QString fileName = QFileDialog::getOpenFileName(<span class="keyword">this</span>,</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; tr(<span class="stringliteral">&quot;Open File&quot;</span>), QDir::currentPath(), <span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>, QFileDialog::DontUseNativeDialog);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">// If we have a file name load the image and place</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">// it in the paintingArea</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">if</span> (!fileName.isEmpty())</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a1f597740b4d7b4bc2e24c51f8cb0b6eb">open</a>(fileName);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;}</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">// Called when the user clicks Save As in the menu</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSave(){</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">// A QAction represents the action of the user clicking</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; QAction *action = qobject_cast&lt;QAction *&gt;(sender());</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">// Stores the array of bytes of the users data</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; QByteArray fileFormat = action-&gt;data().toByteArray();</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">// Pass it to be saved</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; saveFile(fileFormat);</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment">// Opens a dialog that allows the user to create a New Layer</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreateNewLayer(){</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">bool</span> ok1, ok2;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// tr(&quot;New Layer&quot;) is the title</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">int</span> width = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Layer&quot;</span>),</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; tr(<span class="stringliteral">&quot;Width:&quot;</span>),</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; 200,1, 500, 1, &amp;ok1);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">int</span> height = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Layer&quot;</span>),</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; tr(<span class="stringliteral">&quot;Height:&quot;</span>),</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; 200,1, 500, 1, &amp;ok2);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">// Create New Layer</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2)</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; {</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">int</span> layer = paintingArea-&gt;<a class="code" href="class_painting_area.html#a39ad76e1319659bfa38eee88ef33d395">addLayer</a>(width,height,0,0);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a71ac281e0de263208d4a3b9de74258ec">slotActivateLayer</a>(layer);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment">// Opens a dialog that allows the user to delete a Layer</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotDeleteLayer(){</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">bool</span> ok;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// tr(&quot;delete Layer&quot;) is the title</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">int</span> layerNumber = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;delete Layer&quot;</span>),</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; tr(<span class="stringliteral">&quot;Number:&quot;</span>),</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; 1,0, 500, 1, &amp;ok);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Create New Layer</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (ok)</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a6efad6f8ea060674b157b42b431cd173">deleteLayer</a>(layerNumber);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="_intelli_photo_gui_8cpp.html#a30169da42b55e0339af0d28dfc8ccd40"> 105</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="_intelli_photo_gui_8cpp.html#a30169da42b55e0339af0d28dfc8ccd40">slotCreatePenTool</a>(){</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;}</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// User tried to close the app</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13"> 26</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13">IntelliPhotoGui::closeEvent</a>(QCloseEvent*event){</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="comment">// If they try to close maybeSave() returns true</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="comment">// if no changes have been made and the app closes</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">if</span> (maybeSave()) {</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">event</span>-&gt;accept();</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="comment">// If there have been changes ignore the event</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">event</span>-&gt;ignore();</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;}</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; </div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">// Check if the current image has been changed and then</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment">// open a dialog to open a file</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotOpen(){</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="comment">// Check if changes have been made since last save</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">// maybeSave() returns true if no changes have been made</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">if</span> (maybeSave()) {</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">// Get the file to open from a dialog</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="comment">// tr sets the window title to Open File</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// QDir opens the current dirctory</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; QString fileName = QFileDialog::getOpenFileName(<span class="keyword">this</span>,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; tr(<span class="stringliteral">&quot;Open File&quot;</span>), QDir::currentPath(), <span class="keyword">nullptr</span>, <span class="keyword">nullptr</span>, QFileDialog::DontUseNativeDialog);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="comment">// If we have a file name load the image and place</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">// it in the paintingArea</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">if</span> (!fileName.isEmpty())</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a1f597740b4d7b4bc2e24c51f8cb0b6eb">open</a>(fileName);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">// Called when the user clicks Save As in the menu</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSave(){</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">// A QAction represents the action of the user clicking</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; QAction*action = qobject_cast&lt;QAction*&gt;(sender());</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// Stores the array of bytes of the users data</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; QByteArray fileFormat = action-&gt;data().toByteArray();</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// Pass it to be saved</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; saveFile(fileFormat);</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;}</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">// Opens a dialog that allows the user to create a New Layer</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreateNewLayer(){</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">bool</span> ok1, ok2;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// &quot;New Layer&quot; is the title of the window</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">int</span> width = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Layer&quot;</span>),</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; tr(<span class="stringliteral">&quot;Width:&quot;</span>),</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; 200,1, 500, 1, &amp;ok1);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">int</span> height = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Layer&quot;</span>),</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; tr(<span class="stringliteral">&quot;Height:&quot;</span>),</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; 200,1, 500, 1, &amp;ok2);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// Create New Layer</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2)</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">int</span> layer = paintingArea-&gt;<a class="code" href="class_painting_area.html#a39ad76e1319659bfa38eee88ef33d395">addLayer</a>(width,height,0,0);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a71ac281e0de263208d4a3b9de74258ec">slotActivateLayer</a>(layer);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment">// Opens a dialog that allows the user to delete a Layer</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotDeleteLayer(){</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">bool</span> ok;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// &quot;delete Layer&quot; is the title of the window</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">int</span> layerNumber = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;delete Layer&quot;</span>),</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; tr(<span class="stringliteral">&quot;Number:&quot;</span>),</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; 1,0, 500, 1, &amp;ok);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// Create New Layer</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (ok)</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a6efad6f8ea060674b157b42b431cd173">deleteLayer</a>(layerNumber);</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="_intelli_photo_gui_8cpp.html#ac2f8320173dfaf943bb39e39cb1a23e5"> 109</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="_intelli_photo_gui_8cpp.html#ac2f8320173dfaf943bb39e39cb1a23e5">slotCreateFloodFillTool</a>(){</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetActiveAlpha(){</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordtype">bool</span> ok1, ok2;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;}</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetActiveAlpha(){</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">bool</span> ok1, ok2;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="comment">// tr(&quot;Layer to set on&quot;) is the title</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">int</span> layer = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Layer to set on&quot;</span>),</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; tr(<span class="stringliteral">&quot;Layer:&quot;</span>),</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; -1,-1,100,1, &amp;ok1);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="comment">// tr(&quot;New Alpha&quot;) is the title</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordtype">int</span> alpha = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Alpha&quot;</span>),</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; tr(<span class="stringliteral">&quot;Alpha:&quot;</span>),</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; 255,0, 255, 1, &amp;ok2);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2)</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#aec59be20f1c27135700754882dd6383d">setAlphaOfLayer</a>(layer,alpha);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveUp(){</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(0,-20);</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; update();</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;}</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveDown(){</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(0,20);</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; update();</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;}</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveLeft(){</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(-20,0);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; update();</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;}</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveRight(){</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(20,0);</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; update();</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;}</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotMoveLayerUp(){</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">moveActiveLayer</a>(1);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; update();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotMoveLayerDown(){</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">moveActiveLayer</a>(-1);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; update();</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;}</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotClearActiveLayer(){</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordtype">bool</span> ok1, ok2, ok3, ok4;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; </div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="comment">// tr(&quot;Red Input&quot;) is the title</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordtype">int</span> red = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Red Input&quot;</span>),</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; tr(<span class="stringliteral">&quot;Red:&quot;</span>),</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; 255,0, 255,1, &amp;ok1);</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="comment">// tr(&quot;Green Input&quot;) is the title</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordtype">int</span> green = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Green Input&quot;</span>),</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; tr(<span class="stringliteral">&quot;Green:&quot;</span>),</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; 255,0, 255, 1, &amp;ok2);</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">// tr(&quot;Blue Input&quot;) is the title</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordtype">int</span> blue = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Blue Input&quot;</span>),</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; tr(<span class="stringliteral">&quot;Blue:&quot;</span>),</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; 255,0, 255, 1, &amp;ok3);</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="comment">// tr(&quot;Alpha Input&quot;) is the title</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordtype">int</span> alpha = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Alpha Input&quot;</span>),</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; tr(<span class="stringliteral">&quot;Alpha:&quot;</span>),</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; 255,0, 255, 1, &amp;ok4);</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2&amp;&amp;ok3&amp;&amp;ok4)</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#aeb5eb394b979ea90f2be9849fdda1774">floodFill</a>(red, green, blue, alpha);</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;}</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; </div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetActiveLayer(){</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordtype">bool</span> ok1;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; </div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="comment">// tr(&quot;Layer to set on&quot;) is the title</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordtype">int</span> layer = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Layer to set on&quot;</span>),</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; tr(<span class="stringliteral">&quot;Layer:&quot;</span>),</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; -1,0,255,1, &amp;ok1);</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span> (ok1)</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; {</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a1d6d86c25efdce9fe9031a9cd01c74c8">setLayerToActive</a>(layer);</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;};</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetFirstColor(){</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a4735d4cf1dc58a9096d904e74c39c4df">colorPickerSetFirstColor</a>();</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;}</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; </div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetSecondColor(){</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae261acaaa346610dfed489dbac17e789">colorPickerSetSecondColor</a>();</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;}</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; </div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSwitchColor(){</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a66115307ff4a99cd7ca16423c5c8ecfb">colorPickerSwitchColor</a>();</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;}</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; </div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreatePenTool(){</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a96c6248e343e44b61cf2625cb6d21353">createPenTool</a>();</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;}</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; </div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreatePlainTool(){</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a3de83443d2d5cf460ff48d0602070938">createPlainTool</a>();</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;}</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; </div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreateLineTool(){</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a240c33a7875addac86080cdfb0db036a">createLineTool</a>();</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;}</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; </div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment">// Open an about dialog</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotAboutDialog(){</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="comment">// Window title and text to display</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; QMessageBox::about(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;About Painting&quot;</span>),</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; tr(<span class="stringliteral">&quot;&lt;p&gt;&lt;b&gt;IntelliPhoto&lt;/b&gt;Pretty basic editor.&lt;/p&gt;&quot;</span>));</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;}</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment">// Define menu actions that call functions</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createActions(){</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="comment">// Get a list of the supported file formats</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="comment">// QImageWriter is used to write images to files</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">foreach</span> (QByteArray format, QImageWriter::supportedImageFormats()) {</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; QString text = tr(<span class="stringliteral">&quot;%1...&quot;</span>).arg(QString(format).toUpper());</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">// &quot;Layer to set on&quot; is the title of the window</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">int</span> layer = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Layer to set on&quot;</span>),</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; tr(<span class="stringliteral">&quot;Layer:&quot;</span>),</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; -1,-1,100,1, &amp;ok1);</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="comment">// &quot;New Alpha&quot; is the title of the window</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">int</span> alpha = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;New Alpha&quot;</span>),</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; tr(<span class="stringliteral">&quot;Alpha:&quot;</span>),</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; 255,0, 255, 1, &amp;ok2);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2)</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#aec59be20f1c27135700754882dd6383d">setAlphaOfLayer</a>(layer,alpha);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;}</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveUp(){</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(0,-20);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; update();</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveDown(){</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(0,20);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; update();</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveLeft(){</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(-20,0);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; update();</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;}</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotPositionMoveRight(){</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">movePositionActive</a>(20,0);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; update();</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; </div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotMoveLayerUp(){</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">moveActiveLayer</a>(1);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; update();</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;}</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotMoveLayerDown(){</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">moveActiveLayer</a>(-1);</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; update();</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;}</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotClearActiveLayer(){</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordtype">bool</span> ok1, ok2, ok3, ok4;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="comment">// &quot;Red Input&quot; is the title of the window</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">int</span> red = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Red Input&quot;</span>),</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; tr(<span class="stringliteral">&quot;Red:&quot;</span>),</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; 255,0, 255,1, &amp;ok1);</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="comment">// &quot;Green Input&quot; is the title of the window</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordtype">int</span> green = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Green Input&quot;</span>),</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; tr(<span class="stringliteral">&quot;Green:&quot;</span>),</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; 255,0, 255, 1, &amp;ok2);</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">// &quot;Blue Input&quot; is the title of the window</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordtype">int</span> blue = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Blue Input&quot;</span>),</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; tr(<span class="stringliteral">&quot;Blue:&quot;</span>),</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; 255,0, 255, 1, &amp;ok3);</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="comment">// &quot;Alpha Input&quot; is the title of the window</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordtype">int</span> alpha = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Alpha Input&quot;</span>),</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; tr(<span class="stringliteral">&quot;Alpha:&quot;</span>),</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; 255,0, 255, 1, &amp;ok4);</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">if</span> (ok1&amp;&amp;ok2&amp;&amp;ok3&amp;&amp;ok4)</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; {</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#aeb5eb394b979ea90f2be9849fdda1774">floodFill</a>(red, green, blue, alpha);</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;}</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetActiveLayer(){</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="comment">// Stores button value</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordtype">bool</span> ok1;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; </div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="comment">// &quot;Layer to set on&quot; is the title of the window</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">// the next tr is the text to display</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">// Define the standard Value, min, max, step and ok button</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordtype">int</span> layer = QInputDialog::getInt(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Layer to set on&quot;</span>),</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; tr(<span class="stringliteral">&quot;Layer:&quot;</span>),</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; -1,0,255,1, &amp;ok1);</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">if</span> (ok1)</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; {</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a1d6d86c25efdce9fe9031a9cd01c74c8">setLayerToActive</a>(layer);</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;}</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetFirstColor(){</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a4735d4cf1dc58a9096d904e74c39c4df">colorPickerSetFirstColor</a>();</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;}</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; </div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSetSecondColor(){</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#ae261acaaa346610dfed489dbac17e789">colorPickerSetSecondColor</a>();</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;}</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; </div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotSwitchColor(){</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a66115307ff4a99cd7ca16423c5c8ecfb">colorPickerSwitchColor</a>();</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;}</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; </div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreatePenTool(){</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a96c6248e343e44b61cf2625cb6d21353">createPenTool</a>();</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;}</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; </div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreatePlainTool(){</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a3de83443d2d5cf460ff48d0602070938">createPlainTool</a>();</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; </div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotCreateLineTool(){</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; paintingArea-&gt;<a class="code" href="class_painting_area.html#a240c33a7875addac86080cdfb0db036a">createLineTool</a>();</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;}</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; </div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment">// Open an about dialog</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::slotAboutDialog(){</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="comment">// Window title and text to display</span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; QMessageBox::about(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;About Painting&quot;</span>),</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; tr(<span class="stringliteral">&quot;&lt;p&gt;&lt;b&gt;IntelliPhoto&lt;/b&gt;Pretty basic editor.&lt;/p&gt;&quot;</span>));</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;}</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; </div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment">// Define menu actions that call functions</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createActions(){</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="comment">// Get a list of the supported file formats</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="comment">// QImageWriter is used to write images to files</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">foreach</span> (QByteArray format, QImageWriter::supportedImageFormats()) {</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; QString text = tr(<span class="stringliteral">&quot;%1...&quot;</span>).arg(QString(format).toUpper());</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; </div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="comment">// Create an action for each file format</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; QAction*action = <span class="keyword">new</span> QAction(text, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="comment">// Set an action for each file format</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; action-&gt;setData(format);</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="comment">// Create an action for each file format</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; QAction *action = <span class="keyword">new</span> QAction(text, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="comment">// When clicked call IntelliPhotoGui::save()</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; connect(action, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSave()));</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; </div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="comment">// Set an action for each file format</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; action-&gt;setData(format);</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; </div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="comment">// When clicked call IntelliPhotoGui::save()</span></div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; connect(action, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSave()));</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; </div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="comment">// Attach each file format option menu item to Save As</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; actionSaveAs.append(action);</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; </div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="comment">//set exporter to actions</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; QAction *pngSaveAction = <span class="keyword">new</span> QAction(<span class="stringliteral">&quot;PNG-8&quot;</span>, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; pngSaveAction-&gt;setData(<span class="stringliteral">&quot;PNG&quot;</span>);</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="comment">// When clicked call IntelliPhotoGui::save()</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; connect(pngSaveAction, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSave()));</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="comment">// Attach each PNG in save Menu</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; actionSaveAs.append(pngSaveAction);</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; </div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="comment">// Create exit action and tie to IntelliPhotoGui::close()</span></div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; actionExit = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Exit&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; actionExit-&gt;setShortcuts(QKeySequence::Quit);</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; connect(actionExit, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(close()));</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; actionOpen = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Open&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; actionOpen-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_O));</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; connect(actionOpen, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotOpen()));</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; </div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="comment">// Create New Layer action and tie to IntelliPhotoGui::newLayer()</span></div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; actionCreateNewLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;New Layer...&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; actionCreateNewLayer-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_N));</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; connect(actionCreateNewLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreateNewLayer()));</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; </div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="comment">// Delete New Layer action and tie to IntelliPhotoGui::deleteLayer()</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; actionDeleteLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Delete Layer...&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; connect(actionDeleteLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotDeleteLayer()));</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="comment">// Attach each file format option menu item to Save As</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; actionSaveAs.append(action);</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; </div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="comment">//set exporter to actions</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; QAction*pngSaveAction = <span class="keyword">new</span> QAction(<span class="stringliteral">&quot;PNG-8&quot;</span>, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; pngSaveAction-&gt;setData(<span class="stringliteral">&quot;PNG&quot;</span>);</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">// When clicked call IntelliPhotoGui::save()</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; connect(pngSaveAction, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSave()));</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="comment">// Attach each PNG in save Menu</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; actionSaveAs.append(pngSaveAction);</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; </div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="comment">// Create exit action and tie to IntelliPhotoGui::close()</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; actionExit = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Exit&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; actionExit-&gt;setShortcuts(QKeySequence::Quit);</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; connect(actionExit, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(close()));</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; </div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; actionOpen = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Open&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; actionOpen-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_O));</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; connect(actionOpen, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotOpen()));</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; </div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="comment">// Create New Layer action and tie to IntelliPhotoGui::newLayer()</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; actionCreateNewLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;New Layer...&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; actionCreateNewLayer-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_N));</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; connect(actionCreateNewLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreateNewLayer()));</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; </div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="comment">// Delete New Layer action and tie to IntelliPhotoGui::deleteLayer()</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; actionDeleteLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Delete Layer...&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; connect(actionDeleteLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotDeleteLayer()));</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; </div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; actionSetActiveLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;set Active&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; connect(actionSetActiveLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetActiveLayer()));</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; </div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; actionSetActiveAlpha = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;set Alpha&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; connect(actionSetActiveAlpha, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetActiveAlpha()));</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; </div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; actionSetActiveLayer = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;set Active&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; connect(actionSetActiveLayer, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetActiveLayer()));</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; </div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; actionSetActiveAlpha = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;set Alpha&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; connect(actionSetActiveAlpha, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetActiveAlpha()));</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; </div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; actionMovePositionUp = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Up&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; actionMovePositionUp-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Up));</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; connect(actionMovePositionUp, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveUp()));</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; </div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; actionMovePositionDown = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Down&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; actionMovePositionDown-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Down));</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; connect(actionMovePositionDown, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveDown()));</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; </div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; actionMovePositionLeft = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Left&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; actionMovePositionLeft-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Left));</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; connect(actionMovePositionLeft, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveLeft()));</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; </div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; actionMovePositionRight = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Right&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; actionMovePositionRight-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Right));</div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; connect(actionMovePositionRight, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveRight()));</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; </div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; actionMoveLayerUp = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Layer Up&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; actionMoveLayerUp-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_Up));</div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; connect(actionMoveLayerUp, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotMoveLayerUp()));</div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; </div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; actionMoveLayerDown= <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Layer Down&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; actionMoveLayerDown-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_Down));</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; connect(actionMoveLayerDown, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotMoveLayerDown()));</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; </div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="comment">//Create Color Actions here</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; actionColorPickerFirstColor = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Main&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; connect(actionColorPickerFirstColor, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetFirstColor()));</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; </div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; actionColorPickerSecondColor = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Secondary&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; connect(actionColorPickerSecondColor, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetSecondColor()));</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; </div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; actionColorSwitch = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Switch&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; actionColorSwitch-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_S));</div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; connect(actionColorSwitch, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSwitchColor()));</div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; </div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="comment">//Create Tool actions down here</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; actionCreatePlainTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Plain&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; connect(actionCreatePlainTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreatePlainTool()));</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; actionMovePositionUp = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Up&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; actionMovePositionUp-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Up));</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; connect(actionMovePositionUp, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveUp()));</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; </div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; actionMovePositionDown = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Down&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; actionMovePositionDown-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Down));</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; connect(actionMovePositionDown, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveDown()));</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; </div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; actionMovePositionLeft = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Left&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; actionMovePositionLeft-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Left));</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; connect(actionMovePositionLeft, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveLeft()));</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; </div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; actionMovePositionRight = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Right&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; actionMovePositionRight-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Right));</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; connect(actionMovePositionRight, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotPositionMoveRight()));</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; </div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; actionMoveLayerUp = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Layer Up&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; actionMoveLayerUp-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_Up));</div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; connect(actionMoveLayerUp, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotMoveLayerUp()));</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; </div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; actionMoveLayerDown= <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;move Layer Down&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; actionMoveLayerDown-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_Down));</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; connect(actionMoveLayerDown, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotMoveLayerDown()));</div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; </div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="comment">//Create Color Actions here</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; actionColorPickerFirstColor = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Main&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; connect(actionColorPickerFirstColor, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetFirstColor()));</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; </div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; actionColorPickerSecondColor = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Secondary&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; connect(actionColorPickerSecondColor, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSetSecondColor()));</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; </div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; actionColorSwitch = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Switch&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; actionColorSwitch-&gt;setShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_S));</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; connect(actionColorSwitch, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotSwitchColor()));</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; </div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="comment">//Create Tool actions down here</span></div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; actionCreatePlainTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Plain&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; connect(actionCreatePlainTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreatePlainTool()));</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; </div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; actionCreatePenTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Pen&quot;</span>),<span class="keyword">this</span>);</div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; connect(actionCreatePenTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreatePenTool()));</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; </div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; actionCreateLineTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Line&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; connect(actionCreateLineTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreateLineTool()));</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; </div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; actionCreatePenTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Pen&quot;</span>),<span class="keyword">this</span>);</div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; connect(actionCreatePenTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreatePenTool()));</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; </div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; actionCreateLineTool = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;Line&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; connect(actionCreateLineTool, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotCreateLineTool()));</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="comment">// Create about action and tie to IntelliPhotoGui::about()</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; actionAboutDialog = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;About&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; connect(actionAboutDialog, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotAboutDialog()));</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; </div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="comment">// Create about Qt action and tie to IntelliPhotoGui::aboutQt()</span></div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; actionAboutQtDialog = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;About &amp;Qt&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; connect(actionAboutQtDialog, SIGNAL(triggered()), qApp, SLOT(aboutQt()));</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;}</div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; </div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment">// Create the menubar</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createMenus(){</div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="comment">// Create Save As option and the list of file types</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; saveAsMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Save As&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">foreach</span> (QAction *action, actionSaveAs)</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; saveAsMenu-&gt;addAction(action);</div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; </div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="comment">// Attach all actions to File</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; fileMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;File&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; fileMenu-&gt;addAction(actionOpen);</div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; fileMenu-&gt;addMenu(saveAsMenu);</div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; fileMenu-&gt;addSeparator();</div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; fileMenu-&gt;addAction(actionExit);</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; </div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="comment">// Attach all actions to Options</span></div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; optionMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Options&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; optionMenu-&gt;addAction(actionSetActiveLayer);</div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; optionMenu-&gt;addAction(actionSetActiveAlpha);</div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; optionMenu-&gt;addAction(actionMovePositionUp);</div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; optionMenu-&gt;addAction(actionMovePositionDown);</div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; optionMenu-&gt;addAction(actionMovePositionLeft);</div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; optionMenu-&gt;addAction(actionMovePositionRight);</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; optionMenu-&gt;addAction(actionMoveLayerUp);</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; optionMenu-&gt;addAction(actionMoveLayerDown);</div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; </div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="comment">// Attach all actions to Layer</span></div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; layerMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Layer&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; layerMenu-&gt;addAction(actionCreateNewLayer);</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; layerMenu-&gt;addAction(actionDeleteLayer);</div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="comment">// Create about action and tie to IntelliPhotoGui::about()</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; actionAboutDialog = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;&amp;About&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; connect(actionAboutDialog, SIGNAL(triggered()), <span class="keyword">this</span>, SLOT(slotAboutDialog()));</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; </div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="comment">// Create about Qt action and tie to IntelliPhotoGui::aboutQt()</span></div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; actionAboutQtDialog = <span class="keyword">new</span> QAction(tr(<span class="stringliteral">&quot;About &amp;Qt&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; connect(actionAboutQtDialog, SIGNAL(triggered()), qApp, SLOT(aboutQt()));</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;}</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; </div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="comment">// Create the menubar</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createMenus(){</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="comment">// Create Save As option and the list of file types</span></div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; saveAsMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Save As&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">foreach</span> (QAction *action, actionSaveAs)</div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; saveAsMenu-&gt;addAction(action);</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; </div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; </div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="comment">// Attach all actions to File</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; fileMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;File&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; fileMenu-&gt;addAction(actionOpen);</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; fileMenu-&gt;addMenu(saveAsMenu);</div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; fileMenu-&gt;addSeparator();</div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; fileMenu-&gt;addAction(actionExit);</div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; </div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="comment">// Attach all actions to Options</span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; optionMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Options&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; optionMenu-&gt;addAction(actionSetActiveLayer);</div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; optionMenu-&gt;addAction(actionSetActiveAlpha);</div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; optionMenu-&gt;addAction(actionMovePositionUp);</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; optionMenu-&gt;addAction(actionMovePositionDown);</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; optionMenu-&gt;addAction(actionMovePositionLeft);</div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; optionMenu-&gt;addAction(actionMovePositionRight);</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; optionMenu-&gt;addAction(actionMoveLayerUp);</div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; optionMenu-&gt;addAction(actionMoveLayerDown);</div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; </div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="comment">// Attach all actions to Layer</span></div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; layerMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Layer&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; layerMenu-&gt;addAction(actionCreateNewLayer);</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; layerMenu-&gt;addAction(actionDeleteLayer);</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; </div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="comment">//Attach all Color Options</span></div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; colorMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Color&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; colorMenu-&gt;addAction(actionColorPickerFirstColor);</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; colorMenu-&gt;addAction(actionColorPickerSecondColor);</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; colorMenu-&gt;addAction(actionColorSwitch);</div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; </div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="comment">//Attach all Color Options</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; colorMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Color&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; colorMenu-&gt;addAction(actionColorPickerFirstColor);</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; colorMenu-&gt;addAction(actionColorPickerSecondColor);</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; colorMenu-&gt;addAction(actionColorSwitch);</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; </div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="comment">//Attach all Tool Options</span></div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; toolMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Tools&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; toolMenu-&gt;addAction(actionCreatePenTool);</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; toolMenu-&gt;addAction(actionCreatePlainTool);</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; toolMenu-&gt;addAction(actionCreateLineTool);</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; toolMenu-&gt;addSeparator();</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; toolMenu-&gt;addMenu(colorMenu);</div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; </div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="comment">// Attach all actions to Help</span></div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; helpMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Help&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; helpMenu-&gt;addAction(actionAboutDialog);</div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; helpMenu-&gt;addAction(actionAboutQtDialog);</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; </div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="comment">// Add menu items to the menubar</span></div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; menuBar()-&gt;addMenu(fileMenu);</div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; menuBar()-&gt;addMenu(optionMenu);</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; menuBar()-&gt;addMenu(layerMenu);</div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; menuBar()-&gt;addMenu(toolMenu);</div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; menuBar()-&gt;addMenu(helpMenu);</div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;}</div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; </div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createGui(){</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="comment">//create a central widget to work on</span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; centralGuiWidget = <span class="keyword">new</span> QWidget(<span class="keyword">this</span>);</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; setCentralWidget(centralGuiWidget);</div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; </div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="comment">//create the grid for the layout</span></div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; mainLayout = <span class="keyword">new</span> QGridLayout(centralGuiWidget);</div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; centralGuiWidget-&gt;setLayout(mainLayout);</div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; </div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="comment">//create Gui elements</span></div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; paintingArea = <span class="keyword">new</span> <a class="code" href="class_painting_area.html">PaintingArea</a>();</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; </div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="comment">//set gui elements</span></div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; mainLayout-&gt;addWidget(paintingArea);</div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;}</div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; </div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::setIntelliStyle(){</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="comment">// Set the title</span></div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; setWindowTitle(<span class="stringliteral">&quot;IntelliPhoto Prototype&quot;</span>);</div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="comment">//set style sheet</span></div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; this-&gt;setStyleSheet(<span class="stringliteral">&quot;background-color:rgb(64,64,64)&quot;</span>);</div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; this-&gt;centralGuiWidget-&gt;setStyleSheet(<span class="stringliteral">&quot;color:rgb(255,255,255)&quot;</span>);</div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; this-&gt;menuBar()-&gt;setStyleSheet(<span class="stringliteral">&quot;color:rgb(255,255,255)&quot;</span>);</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;}</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;<span class="keywordtype">bool</span> IntelliPhotoGui::maybeSave(){</div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="comment">// Check for changes since last save</span></div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; </div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="comment">//TODO insert variable for modified status here to make an save exit message</span></div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">false</span>) {</div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; QMessageBox::StandardButton ret;</div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; </div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="comment">// Painting is the title</span></div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="comment">// Add text and the buttons</span></div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; ret = QMessageBox::warning(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Painting&quot;</span>),</div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; tr(<span class="stringliteral">&quot;The image has been modified.\n&quot;</span></div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="stringliteral">&quot;Do you want to save your changes?&quot;</span>),</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; QMessageBox::Save | QMessageBox::Discard</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; | QMessageBox::Cancel);</div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; </div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="comment">// If save button clicked call for file to be saved</span></div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (ret == QMessageBox::Save) {</div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">return</span> saveFile(<span class="stringliteral">&quot;png&quot;</span>);</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; </div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="comment">// If cancel do nothing</span></div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ret == QMessageBox::Cancel) {</div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;}</div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; </div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;<span class="keywordtype">bool</span> IntelliPhotoGui::saveFile(<span class="keyword">const</span> QByteArray &amp;fileFormat){</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="comment">// Define path, name and default file type</span></div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; QString initialPath = QDir::currentPath() + <span class="stringliteral">&quot;/untitled.&quot;</span> + fileFormat;</div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; </div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="comment">// Get selected file from dialog</span></div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="comment">// Add the proper file formats and extensions</span></div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; QString fileName = QFileDialog::getSaveFileName(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Save As&quot;</span>),</div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; initialPath,</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; tr(<span class="stringliteral">&quot;%1 Files (*.%2);;All Files (*)&quot;</span>)</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; .arg(QString::fromLatin1(fileFormat.toUpper()))</div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; .arg(QString::fromLatin1(fileFormat)), <span class="keyword">nullptr</span>, QFileDialog::DontUseNativeDialog);</div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; </div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="comment">// If no file do nothing</span></div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordflow">if</span> (fileName.isEmpty()) {</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="comment">// Call for the file to be saved</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">return</span> paintingArea-&gt;<a class="code" href="class_painting_area.html#a612176cc9d629d22fd3fe1a746cce564">save</a>(fileName, fileFormat.constData());</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;}</div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="comment">//Attach all Tool Options</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; toolMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Tools&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; toolMenu-&gt;addAction(actionCreatePenTool);</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; toolMenu-&gt;addAction(actionCreatePlainTool);</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; toolMenu-&gt;addAction(actionCreateLineTool);</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; toolMenu-&gt;addSeparator();</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; toolMenu-&gt;addMenu(colorMenu);</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; </div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="comment">// Attach all actions to Help</span></div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; helpMenu = <span class="keyword">new</span> QMenu(tr(<span class="stringliteral">&quot;&amp;Help&quot;</span>), <span class="keyword">this</span>);</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; helpMenu-&gt;addAction(actionAboutDialog);</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; helpMenu-&gt;addAction(actionAboutQtDialog);</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; </div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="comment">// Add menu items to the menubar</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; menuBar()-&gt;addMenu(fileMenu);</div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; menuBar()-&gt;addMenu(optionMenu);</div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; menuBar()-&gt;addMenu(layerMenu);</div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; menuBar()-&gt;addMenu(toolMenu);</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; menuBar()-&gt;addMenu(helpMenu);</div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;}</div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; </div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::createGui(){</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="comment">// create a central widget to work on</span></div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; centralGuiWidget = <span class="keyword">new</span> QWidget(<span class="keyword">this</span>);</div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; setCentralWidget(centralGuiWidget);</div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; </div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="comment">// create the grid for the layout</span></div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; mainLayout = <span class="keyword">new</span> QGridLayout(centralGuiWidget);</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; centralGuiWidget-&gt;setLayout(mainLayout);</div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; </div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="comment">// create Gui elements</span></div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; paintingArea = <span class="keyword">new</span> <a class="code" href="class_painting_area.html">PaintingArea</a>();</div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; </div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="comment">// set gui elements</span></div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; mainLayout-&gt;addWidget(paintingArea);</div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;}</div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; </div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="keywordtype">void</span> IntelliPhotoGui::setIntelliStyle(){</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="comment">// Set the title</span></div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; setWindowTitle(<span class="stringliteral">&quot;IntelliPhoto Prototype&quot;</span>);</div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="comment">// Set style sheet</span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; this-&gt;setStyleSheet(<span class="stringliteral">&quot;background-color:rgb(64,64,64)&quot;</span>);</div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; this-&gt;centralGuiWidget-&gt;setStyleSheet(<span class="stringliteral">&quot;color:rgb(255,255,255)&quot;</span>);</div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; this-&gt;menuBar()-&gt;setStyleSheet(<span class="stringliteral">&quot;color:rgb(255,255,255)&quot;</span>);</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;}</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; </div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="keywordtype">bool</span> IntelliPhotoGui::maybeSave(){</div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="comment">// Check for changes since last save</span></div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; </div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="comment">// TODO insert variable for modified status here to make an save exit message</span></div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">false</span>) {</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; QMessageBox::StandardButton ret;</div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; </div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="comment">// Painting is the title of the window</span></div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="comment">// Add text and the buttons</span></div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; ret = QMessageBox::warning(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Painting&quot;</span>),</div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; tr(<span class="stringliteral">&quot;The image has been modified.\n&quot;</span></div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="stringliteral">&quot;Do you want to save your changes?&quot;</span>),</div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; QMessageBox::Save | QMessageBox::Discard</div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; | QMessageBox::Cancel);</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; </div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="comment">// If save button clicked call for file to be saved</span></div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">if</span> (ret == QMessageBox::Save) {</div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">return</span> saveFile(<span class="stringliteral">&quot;png&quot;</span>);</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; </div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="comment">// If cancel do nothing</span></div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ret == QMessageBox::Cancel) {</div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;}</div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; </div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="keywordtype">bool</span> IntelliPhotoGui::saveFile(<span class="keyword">const</span> QByteArray &amp;fileFormat){</div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="comment">// Define path, name and default file type</span></div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; QString initialPath = QDir::currentPath() + <span class="stringliteral">&quot;/untitled.&quot;</span> + fileFormat;</div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; </div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="comment">// Get selected file from dialog</span></div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="comment">// Add the proper file formats and extensions</span></div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; QString fileName = QFileDialog::getSaveFileName(<span class="keyword">this</span>, tr(<span class="stringliteral">&quot;Save As&quot;</span>),</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; initialPath,</div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; tr(<span class="stringliteral">&quot;%1 Files (*.%2);;All Files (*)&quot;</span>)</div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; .arg(QString::fromLatin1(fileFormat.toUpper()))</div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; .arg(QString::fromLatin1(fileFormat)), <span class="keyword">nullptr</span>, QFileDialog::DontUseNativeDialog);</div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; </div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="comment">// If no file do nothing</span></div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">if</span> (fileName.isEmpty()) {</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="comment">// Call for the file to be saved</span></div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> paintingArea-&gt;<a class="code" href="class_painting_area.html#a612176cc9d629d22fd3fe1a746cce564">save</a>(fileName, fileFormat.constData());</div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclass_painting_area_html_a39ad76e1319659bfa38eee88ef33d395"><div class="ttname"><a href="class_painting_area.html#a39ad76e1319659bfa38eee88ef33d395">PaintingArea::addLayer</a></div><div class="ttdeci">int addLayer(int width, int height, int widthOffset=0, int heightOffset=0, ImageType type=ImageType::Raster_Image)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00057">PaintingArea.cpp:57</a></div></div>
<div class="ttc" id="a_intelli_photo_gui_8cpp_html_ac2f8320173dfaf943bb39e39cb1a23e5"><div class="ttname"><a href="_intelli_photo_gui_8cpp.html#ac2f8320173dfaf943bb39e39cb1a23e5">slotCreateFloodFillTool</a></div><div class="ttdeci">void slotCreateFloodFillTool()</div><div class="ttdef"><b>Definition:</b> <a href="_intelli_photo_gui_8cpp_source.html#l00109">IntelliPhotoGui.cpp:109</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a1f597740b4d7b4bc2e24c51f8cb0b6eb"><div class="ttname"><a href="class_painting_area.html#a1f597740b4d7b4bc2e24c51f8cb0b6eb">PaintingArea::open</a></div><div class="ttdeci">bool open(const QString &amp;fileName)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00103">PaintingArea.cpp:103</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a1d6d86c25efdce9fe9031a9cd01c74c8"><div class="ttname"><a href="class_painting_area.html#a1d6d86c25efdce9fe9031a9cd01c74c8">PaintingArea::setLayerToActive</a></div><div class="ttdeci">void setLayerToActive(int index)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00090">PaintingArea.cpp:90</a></div></div>
<div class="ttc" id="aclass_painting_area_html_aeb5eb394b979ea90f2be9849fdda1774"><div class="ttname"><a href="class_painting_area.html#aeb5eb394b979ea90f2be9849fdda1774">PaintingArea::floodFill</a></div><div class="ttdeci">void floodFill(int r, int g, int b, int a)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00139">PaintingArea.cpp:139</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a612176cc9d629d22fd3fe1a746cce564"><div class="ttname"><a href="class_painting_area.html#a612176cc9d629d22fd3fe1a746cce564">PaintingArea::save</a></div><div class="ttdeci">bool save(const QString &amp;fileName, const char *fileFormat)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00115">PaintingArea.cpp:115</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a3de83443d2d5cf460ff48d0602070938"><div class="ttname"><a href="class_painting_area.html#a3de83443d2d5cf460ff48d0602070938">PaintingArea::createPlainTool</a></div><div class="ttdeci">void createPlainTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00186">PaintingArea.cpp:186</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a39ad76e1319659bfa38eee88ef33d395"><div class="ttname"><a href="class_painting_area.html#a39ad76e1319659bfa38eee88ef33d395">PaintingArea::addLayer</a></div><div class="ttdeci">int addLayer(int width, int height, int widthOffset=0, int heightOffset=0, ImageType type=ImageType::Raster_Image)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00058">PaintingArea.cpp:58</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a1f597740b4d7b4bc2e24c51f8cb0b6eb"><div class="ttname"><a href="class_painting_area.html#a1f597740b4d7b4bc2e24c51f8cb0b6eb">PaintingArea::open</a></div><div class="ttdeci">bool open(const QString &amp;fileName)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00104">PaintingArea.cpp:104</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a1d6d86c25efdce9fe9031a9cd01c74c8"><div class="ttname"><a href="class_painting_area.html#a1d6d86c25efdce9fe9031a9cd01c74c8">PaintingArea::setLayerToActive</a></div><div class="ttdeci">void setLayerToActive(int index)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00091">PaintingArea.cpp:91</a></div></div>
<div class="ttc" id="aclass_painting_area_html_aeb5eb394b979ea90f2be9849fdda1774"><div class="ttname"><a href="class_painting_area.html#aeb5eb394b979ea90f2be9849fdda1774">PaintingArea::floodFill</a></div><div class="ttdeci">void floodFill(int r, int g, int b, int a)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00140">PaintingArea.cpp:140</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a612176cc9d629d22fd3fe1a746cce564"><div class="ttname"><a href="class_painting_area.html#a612176cc9d629d22fd3fe1a746cce564">PaintingArea::save</a></div><div class="ttdeci">bool save(const QString &amp;fileName, const char *fileFormat)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00116">PaintingArea.cpp:116</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a3de83443d2d5cf460ff48d0602070938"><div class="ttname"><a href="class_painting_area.html#a3de83443d2d5cf460ff48d0602070938">PaintingArea::createPlainTool</a></div><div class="ttdeci">void createPlainTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00187">PaintingArea.cpp:187</a></div></div>
<div class="ttc" id="aclass_intelli_photo_gui_html_ad2aaec3c1517a9aaa461b54e341b97e0"><div class="ttname"><a href="class_intelli_photo_gui.html#ad2aaec3c1517a9aaa461b54e341b97e0">IntelliPhotoGui::IntelliPhotoGui</a></div><div class="ttdeci">IntelliPhotoGui()</div><div class="ttdef"><b>Definition:</b> <a href="_intelli_photo_gui_8cpp_source.html#l00010">IntelliPhotoGui.cpp:10</a></div></div>
<div class="ttc" id="aclass_painting_area_html"><div class="ttname"><a href="class_painting_area.html">PaintingArea</a></div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8h_source.html#l00026">PaintingArea.h:26</a></div></div>
<div class="ttc" id="a_intelli_photo_gui_8cpp_html_a30169da42b55e0339af0d28dfc8ccd40"><div class="ttname"><a href="_intelli_photo_gui_8cpp.html#a30169da42b55e0339af0d28dfc8ccd40">slotCreatePenTool</a></div><div class="ttdeci">void slotCreatePenTool()</div><div class="ttdef"><b>Definition:</b> <a href="_intelli_photo_gui_8cpp_source.html#l00105">IntelliPhotoGui.cpp:105</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a6efad6f8ea060674b157b42b431cd173"><div class="ttname"><a href="class_painting_area.html#a6efad6f8ea060674b157b42b431cd173">PaintingArea::deleteLayer</a></div><div class="ttdeci">void deleteLayer(int index)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00074">PaintingArea.cpp:74</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a96c6248e343e44b61cf2625cb6d21353"><div class="ttname"><a href="class_painting_area.html#a96c6248e343e44b61cf2625cb6d21353">PaintingArea::createPenTool</a></div><div class="ttdeci">void createPenTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00181">PaintingArea.cpp:181</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a240c33a7875addac86080cdfb0db036a"><div class="ttname"><a href="class_painting_area.html#a240c33a7875addac86080cdfb0db036a">PaintingArea::createLineTool</a></div><div class="ttdeci">void createLineTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00191">PaintingArea.cpp:191</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ae261acaaa346610dfed489dbac17e789"><div class="ttname"><a href="class_painting_area.html#ae261acaaa346610dfed489dbac17e789">PaintingArea::colorPickerSetSecondColor</a></div><div class="ttdeci">void colorPickerSetSecondColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00172">PaintingArea.cpp:172</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a4735d4cf1dc58a9096d904e74c39c4df"><div class="ttname"><a href="class_painting_area.html#a4735d4cf1dc58a9096d904e74c39c4df">PaintingArea::colorPickerSetFirstColor</a></div><div class="ttdeci">void colorPickerSetFirstColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00167">PaintingArea.cpp:167</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a66115307ff4a99cd7ca16423c5c8ecfb"><div class="ttname"><a href="class_painting_area.html#a66115307ff4a99cd7ca16423c5c8ecfb">PaintingArea::colorPickerSwitchColor</a></div><div class="ttdeci">void colorPickerSwitchColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00177">PaintingArea.cpp:177</a></div></div>
<div class="ttc" id="aclass_painting_area_html"><div class="ttname"><a href="class_painting_area.html">PaintingArea</a></div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8h_source.html#l00025">PaintingArea.h:25</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a6efad6f8ea060674b157b42b431cd173"><div class="ttname"><a href="class_painting_area.html#a6efad6f8ea060674b157b42b431cd173">PaintingArea::deleteLayer</a></div><div class="ttdeci">void deleteLayer(int index)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00075">PaintingArea.cpp:75</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a96c6248e343e44b61cf2625cb6d21353"><div class="ttname"><a href="class_painting_area.html#a96c6248e343e44b61cf2625cb6d21353">PaintingArea::createPenTool</a></div><div class="ttdeci">void createPenTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00182">PaintingArea.cpp:182</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a240c33a7875addac86080cdfb0db036a"><div class="ttname"><a href="class_painting_area.html#a240c33a7875addac86080cdfb0db036a">PaintingArea::createLineTool</a></div><div class="ttdeci">void createLineTool()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00192">PaintingArea.cpp:192</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ae261acaaa346610dfed489dbac17e789"><div class="ttname"><a href="class_painting_area.html#ae261acaaa346610dfed489dbac17e789">PaintingArea::colorPickerSetSecondColor</a></div><div class="ttdeci">void colorPickerSetSecondColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00173">PaintingArea.cpp:173</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a4735d4cf1dc58a9096d904e74c39c4df"><div class="ttname"><a href="class_painting_area.html#a4735d4cf1dc58a9096d904e74c39c4df">PaintingArea::colorPickerSetFirstColor</a></div><div class="ttdeci">void colorPickerSetFirstColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00168">PaintingArea.cpp:168</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a66115307ff4a99cd7ca16423c5c8ecfb"><div class="ttname"><a href="class_painting_area.html#a66115307ff4a99cd7ca16423c5c8ecfb">PaintingArea::colorPickerSwitchColor</a></div><div class="ttdeci">void colorPickerSwitchColor()</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00178">PaintingArea.cpp:178</a></div></div>
<div class="ttc" id="a_intelli_photo_gui_8h_html"><div class="ttname"><a href="_intelli_photo_gui_8h.html">IntelliPhotoGui.h</a></div></div>
<div class="ttc" id="aclass_intelli_photo_gui_html_a2cf48070236ae8b35245e7f30482ef13"><div class="ttname"><a href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13">IntelliPhotoGui::closeEvent</a></div><div class="ttdeci">void closeEvent(QCloseEvent *event) override</div><div class="ttdef"><b>Definition:</b> <a href="_intelli_photo_gui_8cpp_source.html#l00024">IntelliPhotoGui.cpp:24</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ae05f6893fb44bfcb34018573a609cd1a"><div class="ttname"><a href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">PaintingArea::moveActiveLayer</a></div><div class="ttdeci">void moveActiveLayer(int idx)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00153">PaintingArea.cpp:153</a></div></div>
<div class="ttc" id="aclass_intelli_photo_gui_html_a2cf48070236ae8b35245e7f30482ef13"><div class="ttname"><a href="class_intelli_photo_gui.html#a2cf48070236ae8b35245e7f30482ef13">IntelliPhotoGui::closeEvent</a></div><div class="ttdeci">void closeEvent(QCloseEvent *event) override</div><div class="ttdef"><b>Definition:</b> <a href="_intelli_photo_gui_8cpp_source.html#l00026">IntelliPhotoGui.cpp:26</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ae05f6893fb44bfcb34018573a609cd1a"><div class="ttname"><a href="class_painting_area.html#ae05f6893fb44bfcb34018573a609cd1a">PaintingArea::moveActiveLayer</a></div><div class="ttdeci">void moveActiveLayer(int idx)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00154">PaintingArea.cpp:154</a></div></div>
<div class="ttc" id="a_painting_area_8h_html"><div class="ttname"><a href="_painting_area_8h.html">PaintingArea.h</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a71ac281e0de263208d4a3b9de74258ec"><div class="ttname"><a href="class_painting_area.html#a71ac281e0de263208d4a3b9de74258ec">PaintingArea::slotActivateLayer</a></div><div class="ttdeci">void slotActivateLayer(int a)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00161">PaintingArea.cpp:161</a></div></div>
<div class="ttc" id="aclass_painting_area_html_aec59be20f1c27135700754882dd6383d"><div class="ttname"><a href="class_painting_area.html#aec59be20f1c27135700754882dd6383d">PaintingArea::setAlphaOfLayer</a></div><div class="ttdeci">void setAlphaOfLayer(int index, int alpha)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00096">PaintingArea.cpp:96</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ac6d089f4357b22d9a9906fd4771de3e7"><div class="ttname"><a href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">PaintingArea::movePositionActive</a></div><div class="ttdeci">void movePositionActive(int x, int y)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00148">PaintingArea.cpp:148</a></div></div>
<div class="ttc" id="aclass_painting_area_html_a71ac281e0de263208d4a3b9de74258ec"><div class="ttname"><a href="class_painting_area.html#a71ac281e0de263208d4a3b9de74258ec">PaintingArea::slotActivateLayer</a></div><div class="ttdeci">void slotActivateLayer(int a)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00162">PaintingArea.cpp:162</a></div></div>
<div class="ttc" id="aclass_painting_area_html_aec59be20f1c27135700754882dd6383d"><div class="ttname"><a href="class_painting_area.html#aec59be20f1c27135700754882dd6383d">PaintingArea::setAlphaOfLayer</a></div><div class="ttdeci">void setAlphaOfLayer(int index, int alpha)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00097">PaintingArea.cpp:97</a></div></div>
<div class="ttc" id="aclass_painting_area_html_ac6d089f4357b22d9a9906fd4771de3e7"><div class="ttname"><a href="class_painting_area.html#ac6d089f4357b22d9a9906fd4771de3e7">PaintingArea::movePositionActive</a></div><div class="ttdeci">void movePositionActive(int x, int y)</div><div class="ttdef"><b>Definition:</b> <a href="_painting_area_8cpp_source.html#l00149">PaintingArea.cpp:149</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>