[PC-BSD Dev] Installer Upgrade

Kennedy Kasina kenkasina at gmail.com
Mon Jul 11 08:41:58 PDT 2011


Hello,

I have redesigned bits of the system installer targeted for release 9.1. Do
have a peep and tell me what you think about it. I have attached the source
code. Just compile and run.

Its not the complete thing - just a blueprint of the idea in mind.


Regards,
Kennedy




On Mon, Jul 11, 2011 at 6:36 PM, Yuri Momotiuk <yurkis at gmail.com> wrote:

>
>
> 2011/7/7 Yuri Momotiuk <yurkis at gmail.com>
>
>> Hello
>>
>> I trying to ctreate port for qsingleapplication library from qt solutions.
>> It may be useful for turning current pc-bsd tools to single instance
>> applications.
>> See port in attachment. This is early version, so it may contain bugs. Can
>> someone review that port? This is my first port creation expirience.
>> Thanks.
>>
>> --
>> Best regards, Yuri Momotyuk
>>
>
> I have just finished prototype of single application mechanism for
> pc-controlpanel. I use QtSingleApplication class from port above. You can
> try single instance pc-controlpanel from my assembla repo:
>
> svn co
> http://subversion.assembla.com/svn/pcbsd-extras/trunk/approved/src-qt4
>
> Don't forget to install qt4-qtsolutions-singleapplication port from
> previous message.
>
> QtSingleApplication has one issue. It can not show window which is
> displayed in another workspace. For example:
> 1. I launch pc-controlpanel on 1st workspace (desktop)
> 2. I switch to another workspace (for example to 2nd)
> 3. I launch pc-controlpanel again. Application can see another instance but
> window is not shown on 2nd workspace :(
>
> As workaround I hide window before show it again. Window is blink but seems
> it works :(
>
> To turn pc-controlpanel to single instance I did:
>
> *main.cpp:*
>
> *#include <qtsingleapplication.h>*
> *
> *
> *...**
> *
>
> int main(int argc, char *argv[])
> {
>     * // Turn application to single instance. Use QtSingleInstance class*
> *      QtSingleApplication* a(argc, argv);
>     *// Check for running instance*
>       *if (a.isRunning())
>       {
>         ** // If other instance is running- send message and exit *
> *          return !(a.sendMessage("show"));
>       }*
> *
> *
> *...
> *
> *
> *
> * *    MainWnd w;*
>     **// Use own function to show window on message.*
> *    QObject::connect( &a, SIGNAL( messageReceived( const QString & ) ),
>     &w, SLOT( on_SingleInstance( ) ) );
>
>    * w.show();
>
>    return a.exec();
> }*
> *
>
> *mainwnd.h*
> *...**
> *
> * public slots:**
> **      void on_SingleInstance();**
> *
> *
> *
> *mainwnd.cpp**
> *
> *
> *
> *void MainWnd::on_SingleInstance()
> {
>    **// Hide window first. This is workaround to show window if it on
> other workspace. Only hide-show sequence is working for me :(*
> *    this->hide();
>     this->showNormal();
>     this->activateWindow();
>     this->raise();
> }**
> *
> *
> *
> PS Sorry again for my english. I hope you can understand this.*
> *
>
> _______________________________________________
> Dev mailing list
> Dev at lists.pcbsd.org
> http://lists.pcbsd.org/mailman/listinfo/dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pcbsd.org/pipermail/dev/attachments/20110711/b4926e6a/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SysInstaller 2.zip
Type: application/zip
Size: 149654 bytes
Desc: not available
URL: <http://lists.pcbsd.org/pipermail/dev/attachments/20110711/b4926e6a/attachment-0001.zip>


More information about the Dev mailing list