summaryrefslogtreecommitdiffstats
path: root/docs/passworddialog_8cpp_source.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/passworddialog_8cpp_source.html')
-rw-r--r--docs/passworddialog_8cpp_source.html6
1 files changed, 3 insertions, 3 deletions
diff --git a/docs/passworddialog_8cpp_source.html b/docs/passworddialog_8cpp_source.html
index 256c72d3..7932f338 100644
--- a/docs/passworddialog_8cpp_source.html
+++ b/docs/passworddialog_8cpp_source.html
@@ -72,7 +72,7 @@ $(function() {
<div class="title">passworddialog.cpp</div> </div>
</div><!--header-->
<div class="contents">
-<a href="passworddialog_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="passworddialog_8h.html">passworddialog.h</a>&quot;</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="debughelper_8h.html">debughelper.h</a>&quot;</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="filecontent_8h.html">filecontent.h</a>&quot;</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="passwordconfiguration_8h.html">passwordconfiguration.h</a>&quot;</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="qtpasssettings_8h.html">qtpasssettings.h</a>&quot;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;ui_passworddialog.h&quot;</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;QLabel&gt;</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;QLineEdit&gt;</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6"> 16</a></span>&#160;<a class="code" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6">PasswordDialog::PasswordDialog</a>(<span class="keyword">const</span> <a class="code" href="struct_password_configuration.html">PasswordConfiguration</a> &amp;passConfig,</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; QWidget *parent)</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; : QDialog(parent), ui(new <a class="code" href="namespace_ui.html">Ui</a>::<a class="code" href="class_password_dialog.html">PasswordDialog</a>), m_passConfig(passConfig) {</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; m_templating = <span class="keyword">false</span>;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; m_allFields = <span class="keyword">false</span>;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; m_isNew = <span class="keyword">false</span>;</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; ui-&gt;setupUi(<span class="keyword">this</span>);</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <a class="code" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9">setLength</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#a1f0990ce1daaecb8852976eeb7df61bd">length</a>);</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a">setPasswordCharTemplate</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#ade2a70ca08bd832a7e16f8d775f01906">selected</a>);</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;}</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="class_password_dialog.html#ae306b9347e41c71d5099eb9fe76e35e2"> 35</a></span>&#160;<a class="code" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6">PasswordDialog::PasswordDialog</a>(<span class="keyword">const</span> QString &amp;file, <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;isNew,</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; QWidget *parent)</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; : QDialog(parent), ui(new <a class="code" href="namespace_ui.html">Ui</a>::<a class="code" href="class_password_dialog.html">PasswordDialog</a>), m_file(file),</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; m_isNew(isNew) {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">if</span> (!isNew)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a6520ffa669cd7934091934b24593d99c">Show</a>(m_file);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; ui-&gt;setupUi(<span class="keyword">this</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; setWindowTitle(this-&gt;windowTitle() + <span class="stringliteral">&quot; &quot;</span> + m_file);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; m_passConfig = <a class="code" href="class_qt_pass_settings.html#a9da7174babd2f5cc433505f0fec82efc">QtPassSettings::getPasswordConfiguration</a>();</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4">usePwgen</a>(<a class="code" href="class_qt_pass_settings.html#a67e0ba5d6606e73b979daa774ccc1f72">QtPassSettings::isUsePwgen</a>());</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="class_password_dialog.html#a522f673d65885edea46e3c514bb95f45">setTemplate</a>(<a class="code" href="class_qt_pass_settings.html#a3c0463005c07a4dc0384bf8e63696aa4">QtPassSettings::getPassTemplate</a>(),</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="class_qt_pass_settings.html#a106e2f75cc1dda481bdf253f640a9283">QtPassSettings::isUseTemplate</a>());</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="class_password_dialog.html#ac2af2ce4836edf9d5fda52d5ec66af82">templateAll</a>(<a class="code" href="class_qt_pass_settings.html#a1e65645c63846fcf2d51897e76e6d0c0">QtPassSettings::isTemplateAllFields</a>());</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9">setLength</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#a1f0990ce1daaecb8852976eeb7df61bd">length</a>);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a">setPasswordCharTemplate</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#ade2a70ca08bd832a7e16f8d775f01906">selected</a>);</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; connect(<a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>(), &amp;<a class="code" href="class_pass.html#a9bb040e1a33322a27cd85d8a367ef24f">Pass::processErrorExit</a>, <span class="keyword">this</span>,</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; &amp;PasswordDialog::close);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; connect(<span class="keyword">this</span>, &amp;PasswordDialog::accepted, <span class="keyword">this</span>, &amp;PasswordDialog::on_accepted);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; connect(<span class="keyword">this</span>, &amp;PasswordDialog::rejected, <span class="keyword">this</span>, &amp;PasswordDialog::on_rejected);</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;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="class_password_dialog.html#aa123158c0085b910ecf3bfdc9dae9e97"> 64</a></span>&#160;<a class="code" href="class_password_dialog.html#aa123158c0085b910ecf3bfdc9dae9e97">PasswordDialog::~PasswordDialog</a>() { <span class="keyword">delete</span> ui; }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_checkBoxShow_stateChanged(<span class="keywordtype">int</span> arg1) {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (arg1)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; ui-&gt;lineEditPassword-&gt;setEchoMode(QLineEdit::Normal);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; ui-&gt;lineEditPassword-&gt;setEchoMode(QLineEdit::Password);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_createPasswordButton_clicked() {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; ui-&gt;widget-&gt;setEnabled(<span class="keyword">false</span>);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; QString newPass = <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a9837e79dfc147d8710563a4a8a04bf3e">Generate_b</a>(</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; static_cast&lt;unsigned int&gt;(ui-&gt;spinBox_pwdLength-&gt;value()),</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; m_passConfig.<a class="code" href="struct_password_configuration.html#a6d50fde9d48abd59aba5ec545b49bfd0">Characters</a>[static_cast&lt;PasswordConfiguration::characterSet&gt;(</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; ui-&gt;passwordTemplateSwitch-&gt;currentIndex())]);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (newPass.length() &gt; 0)</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; ui-&gt;lineEditPassword-&gt;setText(newPass);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; ui-&gt;widget-&gt;setEnabled(<span class="keyword">true</span>);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_accepted() {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; QString newValue = <a class="code" href="class_password_dialog.html#ac8ca3222fc733429bc041af47411122e">getPassword</a>();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (newValue.isEmpty())</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (newValue.right(1) != <span class="stringliteral">&quot;\n&quot;</span>)</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; newValue += <span class="stringliteral">&quot;\n&quot;</span>;</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; <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a86ad2005a6517f9c304a9e156755778c">Insert</a>(m_file, newValue, !m_isNew);</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="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_rejected() { <a class="code" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623">setPassword</a>(QString()); }</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623"> 116</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623">PasswordDialog::setPassword</a>(QString password) {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="class_file_content.html">FileContent</a> fileContent = <a class="code" href="class_file_content.html#abef563f253a931af308232c66e032153">FileContent::parse</a>(</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; password, m_templating ? m_fields : QStringList(), m_allFields);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; ui-&gt;lineEditPassword-&gt;setText(fileContent.<a class="code" href="class_file_content.html#aab89c859cfde0d9d1ed8de89e07ca231">getPassword</a>());</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; QWidget *previous = ui-&gt;checkBoxShow;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// first set templated values</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="class_named_values.html">NamedValues</a> namedValues = fileContent.<a class="code" href="class_file_content.html#ab1a615b719c41f631821e06009c530a2">getNamedValues</a>();</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">for</span> (QLineEdit *line : templateLines) {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; line-&gt;setText(namedValues.<a class="code" href="class_named_values.html#a1108666ec11e20d62e0fe2a3f0f9d189">takeValue</a>(line-&gt;objectName()));</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; previous = line;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="comment">// show remaining values (if there are)</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; otherLines.clear();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="struct_named_value.html">NamedValue</a> &amp;nv : namedValues) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; QLineEdit *line = <span class="keyword">new</span> QLineEdit();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; line-&gt;setObjectName(nv.name);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; line-&gt;setText(nv.value);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; ui-&gt;formLayout-&gt;addRow(<span class="keyword">new</span> QLabel(nv.name), line);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; setTabOrder(previous, line);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; otherLines.append(line);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; previous = line;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; ui-&gt;plainTextEdit-&gt;insertPlainText(fileContent.<a class="code" href="class_file_content.html#a2f1cc35e14725e8f3f95dddf3afcc29a">getRemainingData</a>());</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="l00148"></a><span class="lineno"><a class="line" href="class_password_dialog.html#ac8ca3222fc733429bc041af47411122e"> 148</a></span>&#160;QString <a class="code" href="class_password_dialog.html#ac8ca3222fc733429bc041af47411122e">PasswordDialog::getPassword</a>() {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; QString passFile = ui-&gt;lineEditPassword-&gt;text() + <span class="stringliteral">&quot;\n&quot;</span>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; QList&lt;QLineEdit *&gt; allLines(templateLines);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; allLines.append(otherLines);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">for</span> (QLineEdit *line : allLines) {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; QString text = line-&gt;text();</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span> (text.isEmpty())</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; passFile += line-&gt;objectName() + <span class="stringliteral">&quot;: &quot;</span> + text + <span class="stringliteral">&quot;\n&quot;</span>;</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; passFile += ui-&gt;plainTextEdit-&gt;toPlainText();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> passFile;</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;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="class_password_dialog.html#a522f673d65885edea46e3c514bb95f45"> 166</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#a522f673d65885edea46e3c514bb95f45">PasswordDialog::setTemplate</a>(QString rawFields, <span class="keywordtype">bool</span> useTemplate) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; m_fields = rawFields.split(<span class="charliteral">&#39;\n&#39;</span>);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; m_templating = useTemplate;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; templateLines.clear();</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (m_templating) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; QWidget *previous = ui-&gt;checkBoxShow;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">foreach</span> (QString field, m_fields) {</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">if</span> (field.isEmpty())</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; QLineEdit *line = <span class="keyword">new</span> QLineEdit();</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; line-&gt;setObjectName(field);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; ui-&gt;formLayout-&gt;addRow(<span class="keyword">new</span> QLabel(field), line);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; setTabOrder(previous, line);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; templateLines.append(line);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; previous = line;</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;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="class_password_dialog.html#ac2af2ce4836edf9d5fda52d5ec66af82"> 191</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#ac2af2ce4836edf9d5fda52d5ec66af82">PasswordDialog::templateAll</a>(<span class="keywordtype">bool</span> templateAll) {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; m_allFields = <a class="code" href="class_password_dialog.html#ac2af2ce4836edf9d5fda52d5ec66af82">templateAll</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;}</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9"> 200</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9">PasswordDialog::setLength</a>(<span class="keywordtype">int</span> l) { ui-&gt;spinBox_pwdLength-&gt;setValue(l); }</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a"> 207</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a">PasswordDialog::setPasswordCharTemplate</a>(<span class="keywordtype">int</span> t) {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; ui-&gt;passwordTemplateSwitch-&gt;setCurrentIndex(t);</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="l00216"></a><span class="lineno"><a class="line" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4"> 216</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4">PasswordDialog::usePwgen</a>(<span class="keywordtype">bool</span> usePwgen) {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; ui-&gt;passwordTemplateSwitch-&gt;setDisabled(<a class="code" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4">usePwgen</a>);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; ui-&gt;label_characterset-&gt;setDisabled(<a class="code" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4">usePwgen</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"><a class="line" href="class_password_dialog.html#aca023385bb581500a1e4a880a6283ad8"> 221</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#aca023385bb581500a1e4a880a6283ad8">PasswordDialog::setPass</a>(<span class="keyword">const</span> QString &amp;output) {</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623">setPassword</a>(output);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="comment">// TODO(bezet): enable ui</span></div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;}</div><div class="ttc" id="class_named_values_html"><div class="ttname"><a href="class_named_values.html">NamedValues</a></div><div class="ttdoc">The NamedValues class is mostly a list of but also has a method to take a specific NamedValue pair ou...</div><div class="ttdef"><b>Definition:</b> <a href="filecontent_8h_source.html#l00016">filecontent.h:16</a></div></div>
+<a href="passworddialog_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="passworddialog_8h.html">passworddialog.h</a>&quot;</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="debughelper_8h.html">debughelper.h</a>&quot;</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="filecontent_8h.html">filecontent.h</a>&quot;</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="passwordconfiguration_8h.html">passwordconfiguration.h</a>&quot;</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="qtpasssettings_8h.html">qtpasssettings.h</a>&quot;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;ui_passworddialog.h&quot;</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;QLabel&gt;</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;QLineEdit&gt;</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"><a class="line" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6"> 16</a></span>&#160;<a class="code" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6">PasswordDialog::PasswordDialog</a>(<span class="keyword">const</span> <a class="code" href="struct_password_configuration.html">PasswordConfiguration</a> &amp;passConfig,</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; QWidget *parent)</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; : QDialog(parent), ui(new <a class="code" href="namespace_ui.html">Ui</a>::<a class="code" href="class_password_dialog.html">PasswordDialog</a>), m_passConfig(passConfig) {</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; m_templating = <span class="keyword">false</span>;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; m_allFields = <span class="keyword">false</span>;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; m_isNew = <span class="keyword">false</span>;</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; ui-&gt;setupUi(<span class="keyword">this</span>);</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <a class="code" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9">setLength</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#a1f0990ce1daaecb8852976eeb7df61bd">length</a>);</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a">setPasswordCharTemplate</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#ade2a70ca08bd832a7e16f8d775f01906">selected</a>);</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;}</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="class_password_dialog.html#ae306b9347e41c71d5099eb9fe76e35e2"> 35</a></span>&#160;<a class="code" href="class_password_dialog.html#affc061c81f0fddf0671e25282460a6e6">PasswordDialog::PasswordDialog</a>(<span class="keyword">const</span> QString &amp;file, <span class="keyword">const</span> <span class="keywordtype">bool</span> &amp;isNew,</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; QWidget *parent)</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; : QDialog(parent), ui(new <a class="code" href="namespace_ui.html">Ui</a>::<a class="code" href="class_password_dialog.html">PasswordDialog</a>), m_file(file),</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; m_isNew(isNew) {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">if</span> (!isNew)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a6520ffa669cd7934091934b24593d99c">Show</a>(m_file);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; ui-&gt;setupUi(<span class="keyword">this</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; setWindowTitle(this-&gt;windowTitle() + <span class="stringliteral">&quot; &quot;</span> + m_file);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; m_passConfig = <a class="code" href="class_qt_pass_settings.html#a9da7174babd2f5cc433505f0fec82efc">QtPassSettings::getPasswordConfiguration</a>();</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="class_password_dialog.html#abe02aee12f78e5914cf79162df9e77e4">usePwgen</a>(<a class="code" href="class_qt_pass_settings.html#a67e0ba5d6606e73b979daa774ccc1f72">QtPassSettings::isUsePwgen</a>());</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="class_password_dialog.html#a522f673d65885edea46e3c514bb95f45">setTemplate</a>(<a class="code" href="class_qt_pass_settings.html#a3c0463005c07a4dc0384bf8e63696aa4">QtPassSettings::getPassTemplate</a>(),</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="class_qt_pass_settings.html#a106e2f75cc1dda481bdf253f640a9283">QtPassSettings::isUseTemplate</a>());</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="class_password_dialog.html#ac2af2ce4836edf9d5fda52d5ec66af82">templateAll</a>(<a class="code" href="class_qt_pass_settings.html#a1e65645c63846fcf2d51897e76e6d0c0">QtPassSettings::isTemplateAllFields</a>());</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="class_password_dialog.html#ac865a161a2be2d4837761a1305a71db9">setLength</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#a1f0990ce1daaecb8852976eeb7df61bd">length</a>);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="class_password_dialog.html#a19369fdb18d5b280aeadcd91245d9f6a">setPasswordCharTemplate</a>(m_passConfig.<a class="code" href="struct_password_configuration.html#ade2a70ca08bd832a7e16f8d775f01906">selected</a>);</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; connect(<a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>(), &amp;<a class="code" href="class_pass.html#a9bb040e1a33322a27cd85d8a367ef24f">Pass::processErrorExit</a>, <span class="keyword">this</span>,</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; &amp;PasswordDialog::close);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; connect(<span class="keyword">this</span>, &amp;PasswordDialog::accepted, <span class="keyword">this</span>, &amp;PasswordDialog::on_accepted);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; connect(<span class="keyword">this</span>, &amp;PasswordDialog::rejected, <span class="keyword">this</span>, &amp;PasswordDialog::on_rejected);</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;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="class_password_dialog.html#aa123158c0085b910ecf3bfdc9dae9e97"> 64</a></span>&#160;<a class="code" href="class_password_dialog.html#aa123158c0085b910ecf3bfdc9dae9e97">PasswordDialog::~PasswordDialog</a>() { <span class="keyword">delete</span> ui; }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_checkBoxShow_stateChanged(<span class="keywordtype">int</span> arg1) {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (arg1)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; ui-&gt;lineEditPassword-&gt;setEchoMode(QLineEdit::Normal);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; ui-&gt;lineEditPassword-&gt;setEchoMode(QLineEdit::Password);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_createPasswordButton_clicked() {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; ui-&gt;widget-&gt;setEnabled(<span class="keyword">false</span>);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; QString newPass = <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a9837e79dfc147d8710563a4a8a04bf3e">Generate_b</a>(</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; static_cast&lt;unsigned int&gt;(ui-&gt;spinBox_pwdLength-&gt;value()),</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; m_passConfig.<a class="code" href="struct_password_configuration.html#a6d50fde9d48abd59aba5ec545b49bfd0">Characters</a>[static_cast&lt;PasswordConfiguration::characterSet&gt;(</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; ui-&gt;passwordTemplateSwitch-&gt;currentIndex())]);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (newPass.length() &gt; 0)</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; ui-&gt;lineEditPassword-&gt;setText(newPass);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; ui-&gt;widget-&gt;setEnabled(<span class="keyword">true</span>);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_accepted() {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; QString newValue = <a class="code" href="class_password_dialog.html#ac8ca3222fc733429bc041af47411122e">getPassword</a>();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (newValue.isEmpty())</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span> (newValue.right(1) != <span class="stringliteral">&quot;\n&quot;</span>)</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; newValue += <span class="stringliteral">&quot;\n&quot;</span>;</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; <a class="code" href="class_qt_pass_settings.html#a987e913eac7cd497e2fca27426494a64">QtPassSettings::getPass</a>()-&gt;<a class="code" href="class_pass.html#a86ad2005a6517f9c304a9e156755778c">Insert</a>(m_file, newValue, !m_isNew);</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="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> PasswordDialog::on_rejected() { <a class="code" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623">setPassword</a>(QString()); }</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623"> 116</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_password_dialog.html#a89b320eb34026b488c5c685ee6b16623">PasswordDialog::setPassword</a>(QString password) {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="class_file_content.html">FileContent</a> fileContent = <a class="code" href="class_file_content.html#abef563f253a931af308232c66e032153">FileContent::parse</a>(</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; password, m_templating ? m_fields : QStringList(), m_allFields);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; ui-&gt;lineEditPassword-&gt;setText(fileContent.<a class="code" href="class_file_content.html#aab89c859cfde0d9d1ed8de89e07ca231">getPassword</a>());</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; QWidget *previous = ui-&gt;checkBoxShow;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// first set templated values</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="class_named_values.html">NamedValues</a> namedValues = fileContent.<a class="code" href="class_file_content.html#ab1a615b719c41f631821e06009c530a2">getNamedValues</a>();</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">for</span> (QLineEdit *line : templateLines) {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; line-&gt;setText(namedValues.<a class="code" href="class_named_values.html#a1108666ec11e20d62e0fe2a3f0f9d189">takeValue</a>(line-&gt;objectName()));</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; previous = line;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="comment">// show remaining values (if there are)</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; otherLines.clear();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="struct_named_value.html">NamedValue</a> &amp;nv : namedValues) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; QLineEdit *line = <span class="keyword">new</span> QLineEdit();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; line-&gt;setObjectName(nv.name);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; line-&gt;setText(nv.value);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; ui-&gt;formLayout-&gt;addRow(<span class="keyword">new</span> QLabel(nv.name), line);</div><div class="line"><a name="l00135"></a><span class