<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace;font-size:small"><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 3 April 2017 at 14:18, Adam Pigg <span dir="ltr"><<a href="mailto:adam@piggz.co.uk" target="_blank">adam@piggz.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">My use case is in a mobile app without a Kexi main window ;)... Just wondering what is the best approach. At the moment I'm not sure i can create a qml component that is also a keximainwindowiface....I need to look into this.</p></blockquote><div><br><div style="font-family:monospace,monospace;font-size:small" class="gmail_default">Yes, the classes needs refactoring to have non-QWidget use possible. Please let me see there this week. It's best if you add a task on Phab.<br></div><br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">
<br><div class="gmail_quote"><div dir="ltr">On Mon, 3 Apr 2017, 13:14 Jaroslaw Staniek, <<a href="mailto:staniek@kde.org" target="_blank">staniek@kde.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_7030661538159782885gmail_msg"><div style="font-family:monospace,monospace;font-size:small"><br class="m_7030661538159782885gmail_msg">Adam,<br class="m_7030661538159782885gmail_msg">Sorry for delay, I was a bit outside this weekend.<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg">There's KexiMainWindow::openProject() and then as you supposed:<br class="m_7030661538159782885gmail_msg">-> createKexiProjectObject(<wbr>projectData)<br class="m_7030661538159782885gmail_msg">  -> new KexiProject(data, this)<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg">- then KexiProject::open()<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">and <br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">-> call KexiDBPasswordDialog::<wbr>getPasswordIfNeeded()<br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">-> (async) KexiMainWindow::<wbr>slotAutoOpenObjectsLater()<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">There's no single atomic method because we're have potentially interactive tasks to do: 1. get the password before connecting 2. auto-opening startup objects<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">If this helps, KexiMainWindow::create is the top level function and is made for use outside of the regular kexi binary -- it's used in GlobalSearchTest::<wbr>testGlobalSearch() too.<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">Maybe step-by-step in debugger would help you to understand the call hierarchy.<br class="m_7030661538159782885gmail_msg"></div><div style="font-family:monospace,monospace;font-size:small">It's not too easy because we're dynamically deciding what to do (opening a project or migrate or do something else).<br class="m_7030661538159782885gmail_msg"></div><div class="gmail_extra m_7030661538159782885gmail_msg"></div></div><div dir="ltr" class="m_7030661538159782885gmail_msg"><div class="gmail_extra m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"><div class="gmail_quote m_7030661538159782885gmail_msg">On 2 April 2017 at 21:28, Adam Pigg <span dir="ltr" class="m_7030661538159782885gmail_msg"><<a href="mailto:adam@piggz.co.uk" class="m_7030661538159782885gmail_msg" target="_blank">adam@piggz.co.uk</a>></span> wrote:<br class="m_7030661538159782885gmail_msg"><blockquote class="gmail_quote m_7030661538159782885gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_7030661538159782885gmail_msg">Jaroslaw,<div class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg"></div><div class="m_7030661538159782885gmail_msg">Are there any helper methods to get a KexiProject object from just a .kexi file?  If not, is the procedure to create:</div><div class="m_7030661538159782885gmail_msg">a driver</div><div class="m_7030661538159782885gmail_msg">a kdbconnectiondata</div><div class="m_7030661538159782885gmail_msg">a kdbconnection</div><div class="m_7030661538159782885gmail_msg">a kexiprojectdata</div><div class="m_7030661538159782885gmail_msg">a kexiproject</div><div class="m_7030661538159782885gmail_msg">?</div></div>
</blockquote></div><br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg" clear="all"><br class="m_7030661538159782885gmail_msg"></div></div><div dir="ltr" class="m_7030661538159782885gmail_msg"><div class="gmail_extra m_7030661538159782885gmail_msg">-- <br class="m_7030661538159782885gmail_msg"><div class="m_7030661538159782885m_4049619234502773703m_2783287064152008370gmail_signature m_7030661538159782885gmail_msg" data-smartmail="gmail_signature">regards, Jaroslaw Staniek<br class="m_7030661538159782885gmail_msg"><br class="m_7030661538159782885gmail_msg">KDE:<br class="m_7030661538159782885gmail_msg">: A world-wide network of software engineers, artists, writers, translators<br class="m_7030661538159782885gmail_msg">: and facilitators committed to Free Software development - <a href="http://kde.org" class="m_7030661538159782885gmail_msg" target="_blank">http://kde.org</a><br class="m_7030661538159782885gmail_msg">Calligra Suite:<br class="m_7030661538159782885gmail_msg">: A graphic art and office suite - <a href="http://calligra.org" class="m_7030661538159782885gmail_msg" target="_blank">http://calligra.org</a><br class="m_7030661538159782885gmail_msg">Kexi:<br class="m_7030661538159782885gmail_msg">: A visual database apps builder - <a href="http://calligra.org/kexi" class="m_7030661538159782885gmail_msg" target="_blank">http://calligra.org/kexi</a><br class="m_7030661538159782885gmail_msg">Qt Certified Specialist:<br class="m_7030661538159782885gmail_msg">: <a href="http://www.linkedin.com/in/jstaniek" class="m_7030661538159782885gmail_msg" target="_blank">http://www.linkedin.com/in/<wbr>jstaniek</a></div>
</div></div></blockquote></div>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">regards, Jaroslaw Staniek<br><br>KDE:<br>: A world-wide network of software engineers, artists, writers, translators<br>: and facilitators committed to Free Software development - <a href="http://kde.org" target="_blank">http://kde.org</a><br>Calligra Suite:<br>: A graphic art and office suite - <a href="http://calligra.org" target="_blank">http://calligra.org</a><br>Kexi:<br>: A visual database apps builder - <a href="http://calligra.org/kexi" target="_blank">http://calligra.org/kexi</a><br>Qt Certified Specialist:<br>: <a href="http://www.linkedin.com/in/jstaniek" target="_blank">http://www.linkedin.com/in/jstaniek</a></div>
</div></div>