Re: [Interest] Qml via HTTP

2015-09-22 Thread Jason H

I assume you left out iOS because this kind of feature would violate the apple developer policy?

 

 

Sent: Tuesday, September 22, 2015 at 9:21 AM
From: "Alexey Godko" 
To: "B. B." 
Cc: interest@qt-project.org
Subject: Re: [Interest] Qml via HTTP


I've used this approach, and found many issues too (more related to QML, not to crashes), and finally got it working.
But now, I recommend you build resources using rcc tool and simple shell script, so you can update your QML software over http by downloading single file. This approach is much more simple in debug and deployment, works on PC and Android.


 
2015-09-22 14:59 GMT+03:00 B. B. :




Hello,

I found this presentation : http://pt.slideshare.net/jeremylaine/serving-qml-applications-over-the-network
made by Jeremy Lainé.

Its about serving qml to clients by http. Good idea, I tried to implement, but I could not make a stable case.
Seems to work fine - in better cases 5 out of 6 times, the 6th time, the client crashed with a errors like
- currupted memory ( raised in destructors )
- errors in double linked Lists
- crashes with no hint.
- etc.


I succeeded cut down to an example that always fails for me.
The example works fine, if the files are served from the disk.
( see switch in main.cpp )

I have tried with 2 QT sources : release Qt-5.5 prebuild,  and alpha Qt-5.6 compiled, the results are comparable.
This specific run is on alpha Qt-5.6.


Can anyone give me a hint to what I do wrong??
Have anyone successfully made this work for them??
if so, do you have any idea of what I could try next??
Maybe hints on how to debug further ??


A remark:
One can see below the "module header" of the qmldir files is missing
like :
--
module fofo.terminal.b    < missing in example

MyMain 1.0 MyMain.qml
--
If they are present, I get this error :
file:http:/127.0.0.1:/fofo/terminal/b.1.0/qmldir:1 only one module identifier directive may be defined in a qmldir file


Best Regards and thanks

Brian B



The example is as follows  :

1) the main.cpp file

2) a log from the webserver, shows status of requests ( FOUND vs. NOT FOUND,
( and if found the content of the file sent )

3) some logs copied from QtCreator.
 
4) and attached snapshot of QtCreator

 
===
1) main.cpp


#include 
#include 
#include 


#include 

#include 
#include 
#include 

using namespace std;

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QQmlApplicationEngine engine;

    bool serveByHttp = true;

    if ( serveByHttp ) {
    QString urlWhere = "http://127.0.0.1:";
    engine.addImportPath( urlWhere );

    QString startFile = QStringLiteral( "/fofo/terminal/a.1.0/Main.qml" );
    QString initialQmlFile = urlWhere + startFile;

    std::cout << "SYSSYS : Initial file : " << initialQmlFile.toStdString() << endl;
    engine.load(QUrl( initialQmlFile ));
    }else {

    QString path = "/home/bb/develop/fofo/fofo.terminal/fofo/terminal/a/Main.qml";
    engine.addImportPath( "/home/bb/develop/fofo/fofo.terminal/" );
    engine.load( path );
    }

    return app.exec();
}

-

==
2) webserver log :

qml webserver -> b'/fofo/terminal/a.1.0/Main.qml' FOUND
- b'/fofo/terminal/a.1.0/Main.qml' --
import QtQuick 2.5

import fofo.terminal.b 1.0

MyMain {
    id : mainWindow
}

-
qml webserver -> b'/fofo/terminal/a.1.0/qmldir' FOUND
- b'/fofo/terminal/a.1.0/qmldir' --
Main 1.0 Main.qml

-
qml webserver -> b'/fofo/terminal/b.1.0/qmldir' FOUND
- b'/fofo/terminal/b.1.0/qmldir' --
MyMain 1.0 MyMain.qml

-
qml webserver -> b'/fofo/terminal/b.1/qmldir' NOT found
qml webserver -> b'/fofo/terminal/b/qmldir' NOT found
qml webserver -> b'/fofo/terminal/b.1.0/MyMain.qml' FOUND
- b'/fofo/terminal/b.1.0/MyMain.qml' --

import QtQuick 2.4
import QtQuick.Controls 1.2


import fofo.terminal.c 1.0
// Left- and RightPanel


ApplicationWindow {
    id: mainWindow
    height: 700
    width: 1200
    title: "test.."


    visible: true

    toolBar: ToolBar{
    id: toolBar
    }

    statusBar: StatusBar {
    id: statusbar
    }

    Rectangle  {
    id: mainView
    anchors.fill: parent
    }

    RightPanel {
    id: rightPanel
    height: parent.height
    x: parent.x + parent.width - 1/3*width 
    width:  Math.min( 250 , parent.width / 2 )
    color: "pink"
    }

    LeftPanel {
    id: leftPanel
    height: mainView.height
    width:  Math.min( 250 , mainView.width / 2 )
    x:  mainView.x - 2 * width / 3
    color: "blue"
    }

}




[Interest] Caching Painter Rendering

2015-09-22 Thread Tim Hoffmann
Dear all,

we are currently using a QPixmap as a rendering cache for painting. I.e.
paint once to a QPixmap, cache it and paint the QPixmap when required
instead of performing the actual paint operations. In addition to the
cached images we paint some elements directly.

We have currently some issues with high-resolution displays and UI
scaling by the OS. Well, probably we can sort this out. However in that
context, the following question arose:

What is the correct caching strategy for painting? Caching the data as
QImage, QPixmap or QPicture? Additionally, are there any examples how to
correctly implement this with high-resolution displays / UI scaling by
the OS?

Thanks in advance,
Tim

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Qml via HTTP

2015-09-22 Thread Alexey Godko
Thanks for notice, Thiago. Of course.

2015-09-22 20:03 GMT+03:00 Thiago Macieira :

> On Tuesday 22 September 2015 16:21:44 Alexey Godko wrote:
> > so you can update your QML software over http by downloading single
> > file. This approach is much more simple in debug and deployment, works on
> > PC and Android.
>
> Make sure you're using https and that you check your server's identity
> before
> executing any such files.
>
> DO NOT use unencrypted, DO NOT ignore SSL errors.
> --
> Thiago Macieira - thiago.macieira (AT) intel.com
>   Software Architect - Intel Open Source Technology Center
>
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Qml via HTTP

2015-09-22 Thread Thiago Macieira
On Tuesday 22 September 2015 16:21:44 Alexey Godko wrote:
> so you can update your QML software over http by downloading single
> file. This approach is much more simple in debug and deployment, works on
> PC and Android.

Make sure you're using https and that you check your server's identity before 
executing any such files.

DO NOT use unencrypted, DO NOT ignore SSL errors.
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Compiling Qt 5.6.0 alpha with VS 2015 amd64

2015-09-22 Thread Thiago Macieira
On Tuesday 22 September 2015 11:32:02 Michael Sué wrote:
> error C2039: 'NaNEncodeMask': is not a member of 'QV4::Value' (compiling
> source file jit\qv4assembler.cpp)

NaNEncodeMask is a member of QV4::Value. The compiler is wrong.

You're probably mixing Qt 5.5 and 5.6 headers.

Another possibility is that your qconfig.h does not have:
#define QT_POINTER_SIZE 8

Please check. If it doesn't, rerun configure.
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] focus-follows-mouse

2015-09-22 Thread René J . V . Bertin
Is it possible to implement focus-follows-mouse behaviour (in a terminal 
emulator, for instance) that does *not* raise the focused window?

thanks,
René
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] geometry() for a widget that hasn't been shown

2015-09-22 Thread John Weeks
Thanks, Jan. I thought the same thing, but it didn't help. I even called 
EnsurePolished() first, having seen such things in the Qt source. But it 
appears that adjustSize() adjusts child widgets for the current window 
geometry, and doesn't try to determine an accurate window geometry first.

The fundamental problem is that Qt puts off creating the native window 
representation (NSWindow or NSView or HWND, etc.) until it is first shown. So 
until then, there is nothing to measure.

But it does seem as though the cached geometry could be used to return an 
accurate value. I guess its JIRA bug time...

-John Weeks


> On Sep 22, 2015, at 4:31 AM, Jan Dasselaar  wrote:
> 
> Maybe the QWidget::adjustSize() function is what you are looking for.
> I think after calling adjustSize() the geometry() function should give a 
> up to date result.

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] It is happening again.

2015-09-22 Thread Bill Crocker
Fellow Qt Enthusiasts:

It is happening again.

I have a client server/app which uses Qt for the socket communication.
Occasionally it gets sick. When it is sick:

1 - It takes multiple attempts for a client to connect to the server.
 The connection attempts fail with: *ERROR*, server communication error: 
RemoteHostClosedError.
 After several attempts it works. The sicker it gets the more attempts it 
takes
 to connect.

2 - During these periods, the invalid SYN cookies number on the server steadily 
rises:
 >netstat -ts | grep SYN
 302658 invalid SYN cookies received<---
 >netstat -ts | grep SYN
 302745 invalid SYN cookies received<---

3 - If I restart the server process, all is well for a while.

4 - This is not something which can be reproduced on demand.

5 - The server machine is not heavily loaded during these times.
 The server image size is 275 Mb.
 It has 61 files open.
 The 1-min load average is 0.32
 The server has been running for 11 days.

The system is built with Qt-4.8.6, but I have no
evidence that this problem is related to the use of Qt.

It is running on RHEL 6.6

Any suggestions would be greatly appreciated.
Thanks.

Bill
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Qml via HTTP

2015-09-22 Thread B. B.
Thanks all for all the input!

Especially thanks to Alexey, because I ended up using your recommendations.

Using the resource tool, I build resources of the qml-files - and send them
to the client.
The client then just install them.

Everything is exactly after the docs, and everything just works as expected
- no bad surprices...


Really nice, Thanks

Brian





On Tue, Sep 22, 2015 at 2:09 PM, Alexey Godko  wrote:

> Thanks for notice, Thiago. Of course.
>
> 2015-09-22 20:03 GMT+03:00 Thiago Macieira :
>
>> On Tuesday 22 September 2015 16:21:44 Alexey Godko wrote:
>> > so you can update your QML software over http by downloading single
>> > file. This approach is much more simple in debug and deployment, works
>> on
>> > PC and Android.
>>
>> Make sure you're using https and that you check your server's identity
>> before
>> executing any such files.
>>
>> DO NOT use unencrypted, DO NOT ignore SSL errors.
>> --
>> Thiago Macieira - thiago.macieira (AT) intel.com
>>   Software Architect - Intel Open Source Technology Center
>>
>> ___
>> Interest mailing list
>> Interest@qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>
>
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
>
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] High DPI support in QT (Windows)

2015-09-22 Thread Robert Iakobashvili
Hi Pavlo,

Some pointers that may be helpful:

Set in your Qt application: Qt::AA_UseHighDpiPixmaps

Further use a Poor Man's Test:
http://blog.davidedmundson.co.uk/blog/kde_apps_high_dpi

But keep in mind the below procedure,
To return back from Hi-DPI on a regular screen
where you cannot see the below part of the DPI Scaling Screen,

As long as you can get to the DPI Scaling Screen,
you can use TAB to navigate the selection.

First of all click on the “Default scale (96 DPI)”.

Here is the fun part. Press Shift key and then Tab key.
This would position you to the “How do I know which DPI to choose?” button.

Then you press Tab key 3 times. This would take you to the invisible
“OK” button.
Then a screen would pop up to ask you to restart your Windows.
Press Enter to reboot your Windows.

Take care.

Regards,
Robert


On Fri, Sep 18, 2015 at 11:38 AM, Pavlo Dyachenko  wrote:
> Hi QT team, I posted a question on the forum about high DPI support but then
> was recommended this mailing list instead:
> According to documentation here http://doc.qt.io/qt-5/highdpi.html QT 5.4+
> introduces high DPI support. However, either I’m missing something
> fundamental or the current support is still in very early stages. I’m
> writing a brand new application so I have a chance to do it right from the
> ground up. I understand that I would have to use layouts instead of fixed
> positioning etc, but there always going to be cases in which I would have to
> specify, for example a minimum/maximum size of a control. I can specify them
> in the editor, but these are device pixels. So if I change my Windows
> settings to use 150% DPI then min/max values in the editor would be too
> small. Of course I can obtain that ratio and adjust all the required values
> in code, but then what kind of high DPI support does QT give for me if I
> have to do everything by hand? I mean how is it different to pre QT 5.4?
>
> Then an interesting one is QT_DEVICE_PIXEL_RATIO environment variable. It
> does exactly what I need, it multiplies all pixels set in editor by a
> factor. But why is it an environment variable and not a per application
> setting? Why does it only support integer values of 2, 3 etc, since we know
> that Windows has settings like 125, 150% etc. and why couldn’t it
> automatically read the Windows setting and set itself to that value?
>
> Thanks in advance.
> Pavlo
>
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Compiling Qt 5.6.0 alpha with VS 2015 amd64

2015-09-22 Thread Michael Sué
Hi,

I get the following error:

c:\qt\qt-everywhere-enterprise-src-5.6.0-alpha\qtdeclarative\src\qml\jit\qv4assembler_p.h(561):
 error C2039: 'NaNEncodeMask': is not a member of 'QV4::Value' (compiling 
source file jit\qv4assembler.cpp)
c:\qt\qt-everywhere-enterprise-src-5.6.0-alpha\qtdeclarative\include\qtqml\5.6.0\qtqml\private\../../../../../src/qml/jsruntime/qv4value_p.h(61):
 note: see declaration of 'QV4::Value' (compiling source file 
jit\qv4assembler.cpp)
c:\qt\qt-everywhere-enterprise-src-5.6.0-alpha\qtdeclarative\src\qml\jit\qv4assembler_p.h(561):
 error C2065: 'NaNEncodeMask': undeclared identifier (compiling source file 
jit\qv4assembler.cpp)

I used: 
configure.bat -prefix C:\Qt\5.6.0.vs2015 -no-openssl -commercial -no-icu 
-opengl dynamic -platform win32-msvc2015 -mp -nomake tests -compile-examples

What can I do?

Best, Michael.


___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread m...@rpzdesign.com
If you are using a docker container, why use the installer at all.

Create a docker image with the binaries already in the search path.

You can figure out the dependencies and paths using "nm" utility in linux.

So if you problem is docker image prep, that should be a no-brainer.

But if you want to somehow "install" to a docker image, they why use 
docker at all, just install to the native operating system and skip 
using the convenience of the docker isolated packaging.





On 9/22/2015 7:32 AM, Andreas Cord-Landwehr wrote:
> On Tuesday 22 September 2015 07:19:33 m...@rpzdesign.com wrote:
>> Yes, write a bash script.
>
> Sorry, but I do not get your point.
>
> Actually, I am already writing a bash script but the problem is that I do not
> see a way to extract the precompiled binaries from the Qt for Android
> installer without opening a GUI window. The problem is that there is no
> documented --no-gui option or similar.
>
> Cheers,
> Andreas
>

-- 
No spell checkers were harmed during the creation of this message.
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Andreas Cord-Landwehr
On Tuesday 22 September 2015 07:19:33 m...@rpzdesign.com wrote:
> Yes, write a bash script.

Sorry, but I do not get your point.

Actually, I am already writing a bash script but the problem is that I do not 
see a way to extract the precompiled binaries from the Qt for Android 
installer without opening a GUI window. The problem is that there is no 
documented --no-gui option or similar.

Cheers,
Andreas
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Elvis Stansvik
2015-09-22 15:32 GMT+02:00 Andreas Cord-Landwehr :
> On Tuesday 22 September 2015 07:19:33 m...@rpzdesign.com wrote:
>> Yes, write a bash script.
>
> Sorry, but I do not get your point.
>
> Actually, I am already writing a bash script but the problem is that I do not
> see a way to extract the precompiled binaries from the Qt for Android
> installer without opening a GUI window. The problem is that there is no
> documented --no-gui option or similar.

I don't know of such a switch either. Since the installer was produced
by QtIFW 2.x, I think you should be able to script it (using .qs
script and the installer framework scripting API), and also pass
-platform minimal to the installer to avoid requiring a GUI. I'm not
sure how to do that though, since the installer has some custom pages
that would need to be "clicked" past.

A switch that does all that for you would of course be best.

BTW, I can't find the QtIFW scripts that are used for the official Qt
installers, anyone know if they are hosted somewhere publicly?

Elvis

PS. To Andreas: Sorry for replying to you privately first. Was a mistake. DS.

>
> Cheers,
> Andreas
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Samuel Stirtzel
2015-09-22 14:38 GMT+02:00 Andreas Cord-Landwehr :
> Hi, I am searching for a way to install the Qt for Android binaries on a Linux
> host system without any GUI interaction. (use case: generation of a Docker
> image for a crossbuilder environment for Qt applications).
>
> For now, I looked into the Qt Installer (both offline and online installer),
> but both do not offer any option to change to a console-only mode. So, my
> question is: what is the recommended way to install these binaries in a
> console-only way?

Hi,

the Dockerfile on
https://github.com/rabits/dockerfiles/blob/qt-android/Dockerfile
should be a good start (disclaimer: I only tested the desktop variant
of this Dockerfile).
But it only works for Qt up to version 5.4 (see:
https://bugreports.qt.io/browse/QTIFW-734).


-- 
Regards
Samuel
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] QApplication fails to start on release mode when using Qt as a backend of a plugin (Windows)

2015-09-22 Thread Nuno Santos

Hi,

On QTBUG-48335 bug report Friedmann Kleint suggests to try with Qt 5.5.1 
or 5.6 beta. I decided to give it a try with Qt 5.6 Alpha


I have downloaded Qt 5.6 alpha and compiled it from source statically. 
Building the plugin gives me the followin errors. It used to compile on 
Qt 5.5.


Does anyone knows how to sort this ones out?

Qt5Guid.lib(qevent.obj) : error LNK2005: "public: virtual __thiscall 
QInputMethodEvent::~QInputMethodEvent(void)" 
(??1QInputMethodEvent@@UAE@XZ) already defined in 
qwindowsd.lib(qwindowsinputcontext.obj)


Creating library debug\drc.lib and object debug\drc.exp


qmldbg_tcpd.lib(qtcpserverconnection.obj) : error LNK2019: unresolved 
external symbol "public: void __thiscall 
QQmlDebugServer::receiveMessage(class QByteArray const &)" 
(?receiveMessage@QQmlDebugServer@@QAEXABVQByteArray@@@Z) referenced in 
function "private: void __thiscall 
QTcpServerConnection::readyRead(void)" 
(?readyRead@QTcpServerConnection@@AAEXXZ)



qwindowsd.lib(qwindowsintegration.obj) : error LNK2001: unresolved 
external symbol "public: virtual class QStringList __thiscall 
QBasicFontDatabase::fallbacksForFamily(class QString const &,enum 
QFont::Style,enum QFont::StyleHint,enum QChar::Script)const " 
(?fallbacksForFamily@QBasicFontDatabase@@UBE?AVQStringList@@ABVQString@@W4Style@QFont@@W4StyleHint@5@W4Script@QChar@@@Z)



qwindowsd.lib(qwindowswindow.obj) : error LNK2019: unresolved external 
symbol "public: static void __cdecl 
QWindowSystemInterface::flushWindowSystemEvents(class QFlagsQEventLoop::ProcessEventsFlag>)" 
(?flushWindowSystemEvents@QWindowSystemInterface@@SAXV?$QFlags@W4ProcessEventsFlag@QEventLoop@Z) 
referenced in function "public: bool __thiscall 
QWindowsWindow::handleWmPaint(struct HWND__ *,unsigned int,unsigned 
int,long)" (?handleWmPaint@QWindowsWindow@@QAE_NPAUHWND__@@IIJ@Z)



qwindowsd.lib(qwindowsscreen.obj) : error LNK2001: unresolved external 
symbol "public: static void __cdecl 
QWindowSystemInterface::flushWindowSystemEvents(class QFlagsQEventLoop::ProcessEventsFlag>)" 
(?flushWindowSystemEvents@QWindowSystemInterface@@SAXV?$QFlags@W4ProcessEventsFlag@QEventLoop@Z)



qwindowsd.lib(qwindowsfontengine.obj) : error LNK2019: unresolved 
external symbol "public: static unsigned int __cdecl 
QFontEngine::getTrueTypeGlyphIndex(unsigned char const *,unsigned int)" 
(?getTrueTypeGlyphIndex@QFontEngine@@SAIPBEI@Z) referenced in function 
"public: virtual unsigned int __thiscall 
QWindowsFontEngine::glyphIndex(unsigned int)const " 
(?glyphIndex@QWindowsFontEngine@@UBEII@Z)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved external 
symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlDebugServerFactory(void)" 
(?qt_static_plugin_QQmlDebugServerFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlDebugServerFactoryPluginInstance::StaticQQmlDebugServerFactoryPluginInstance(void)" 
(??0StaticQQmlDebugServerFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved external 
symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlInspectorServiceFactory(void)" 
(?qt_static_plugin_QQmlInspectorServiceFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlInspectorServiceFactoryPluginInstance::StaticQQmlInspectorServiceFactoryPluginInstance(void)" 
(??0StaticQQmlInspectorServiceFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved external 
symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlProfilerServiceFactory(void)" 
(?qt_static_plugin_QQmlProfilerServiceFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlProfilerServiceFactoryPluginInstance::StaticQQmlProfilerServiceFactoryPluginInstance(void)" 
(??0StaticQQmlProfilerServiceFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved external 
symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlDebuggerServiceFactory(void)" 
(?qt_static_plugin_QQmlDebuggerServiceFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlDebuggerServiceFactoryPluginInstance::StaticQQmlDebuggerServiceFactoryPluginInstance(void)" 
(??0StaticQQmlDebuggerServiceFactoryPluginInstance@@QAE@XZ)


debug\drc.dll : fatal error LNK1120: 8 unresolved externals


Thx,

Nuno

On 17/09/2015 19:44, Nuno Santos wrote:

Thiago,

I tried to describe it the best I could:

https://bugreports.qt.io/browse/QTBUG-48335

Thanks,

Regards,

Nuno

On 17/09/2015 17:24, Thiago Macieira wrote:

On Thursday 17 September 2015 13:42:41 Nuno Santos wrote:

Hi,

I have seen this bug report. The funny thing is that it says it is resolved
on Qt 5.5.0

I'm using Qt 5.5.0

What am I missing?

Some detail.

Apparently the bug fix was not enough for your case. The fix assumed that qtmain
was used, but the main() function fiddled with the arguments.

Your case 

Re: [Interest] geometry() for a widget that hasn't been shown

2015-09-22 Thread Jan Dasselaar
Hello John,

Maybe the QWidget::adjustSize() function is what you are looking for.
I think after calling adjustSize() the geometry() function should give a 
up to date result.

Hth,
Jan

On 21-9-2015 19:33, John Weeks wrote:
> If this is a repeat, my apologies. I can't tell if I saw this arrive on the 
> list!
>
>
>
> In general a QWidget that hasn't been made visible yet gives bogus results 
> for QWidget::geometry(). Qt only guarantees that a call to setGeometry() will 
> result in a Resize event when the window is made visible. But we often need 
> to ask a window or child widget how big it is before it is made visible in 
> order to do various kinds of calculations. These calculations are sometimes 
> used for things that preclude waiting for the window to become visible.
>
> Is there a way to force the Resize events (and all the layout calculation 
> machinery that goes with it) before it is visible? Using Qt 5.5, I see that 
> if you call QWidget::grab(), it will call a static function 
> sendResizeEvents() that does exactly what I want:
>
> QPixmap QWidget::grab(const QRect )
> {
> Q_D(QWidget);
> if (testAttribute(Qt::WA_PendingResizeEvent) || 
> !testAttribute(Qt::WA_WState_Created))
> sendResizeEvents(this);
>
> Is there some other way to get this to happen? I suppose I could just call 
> grab() and throw away the QPixmap, but that seems like an awful kludge...
>
> -John Weeks
>
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Elvis Stansvik
2015-09-22 16:08 GMT+02:00 Andreas Cord-Landwehr :
> On Tuesday 22 September 2015 15:58:42 Elvis Stansvik wrote:
>> If I understood him right, he wants to make a Dockerfile that creates
>> a Docker image from scratch (i.e. something that anyone could use, and
>> which could be automated), not just create an image (in which case he
>> could of course do as you suggest, manually click through the
>> installer inside the running image).
>
> Yes, that exactly is the intent. An automated and reproducible way to build an
> image. Sorry for maybe mixing the "build" and "create" Docker vocabulary.

Okay. Then if we could just find the .ui and QtIFW scripts for the
official installer (to see the names of the custom pages and UI
elements), I think it should be possible to script an unattended
installation in a .qs controller script (and pass --script to the
installer). Anyone know where the code for the official Qt installers
are hosted?

Elvis

>
> Cheers,
> Andreas
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Qt 5.6 Alpha (static build) - ButtonStyle is not a type

2015-09-22 Thread Nuno Santos
Hi,

Today I have given a try to Qt 5.6 Alpha. So far so good.

I was having two major issues:

QTBUG-48335 - QApplication fails to start on release mode when using Qt 
as a backend of a plugin (Windows)
QTBUG-35754 - QtQuick and QtQuick.Controls modules are not available at 
runtime static

Both seem to be fixed on Qt 5.6 Alpha which is awesome! However, my 
worries aren't finished yet. It is still complaining about not finding 
ButtonStyle type.

I'm manually registering the plugins with the following code:

qobject_cast(qt_static_plugin_QtQuick2Plugin().instance())->registerTypes("QtQuick");
qobject_cast(qt_static_plugin_QtQuick2WindowPlugin().instance())->registerTypes("QtQuick.Window");
qobject_cast(qt_static_plugin_QtQuickControlsPlugin().instance())->registerTypes("QtQuick.Controls");
qobject_cast(qt_static_plugin_QtQuickExtrasPlugin().instance())->registerTypes("QtQuick.Extras");
qobject_cast(qt_static_plugin_QtQuickControlsPlugin().instance())->registerTypes("QtQuick.Controls.Styles");
qobject_cast(qt_static_plugin_QtQuickControlsPlugin().instance())->registerTypes("QtQuick.Controls.Private");

ButtonStyle is included in QtQuick/Controls/Styles/Base/ButtonStyle.qml 
isn't the 
qobject_cast(qt_static_plugin_QtQuickControlsPlugin().instance())->registerTypes("QtQuick.Controls.Styles");
 
call enough?

Am I missing some particular initialization or is this still a bug? Any 
ideas?

Thanks,

Regards,

Nuno
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread m...@rpzdesign.com
Yes, write a bash script.

On 9/22/2015 6:38 AM, Andreas Cord-Landwehr wrote:
> Hi, I am searching for a way to install the Qt for Android binaries on a Linux
> host system without any GUI interaction. (use case: generation of a Docker
> image for a crossbuilder environment for Qt applications).
>
> For now, I looked into the Qt Installer (both offline and online installer),
> but both do not offer any option to change to a console-only mode. So, my
> question is: what is the recommended way to install these binaries in a
> console-only way?
>
> Cheers,
> Andreas
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>

-- 
No spell checkers were harmed during the creation of this message.
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Andreas Cord-Landwehr
Hi, I am searching for a way to install the Qt for Android binaries on a Linux 
host system without any GUI interaction. (use case: generation of a Docker 
image for a crossbuilder environment for Qt applications).

For now, I looked into the Qt Installer (both offline and online installer), 
but both do not offer any option to change to a console-only mode. So, my 
question is: what is the recommended way to install these binaries in a 
console-only way?

Cheers,
Andreas
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] QApplication fails to start on release mode when using Qt as a backend of a plugin (Windows)

2015-09-22 Thread Nuno Santos

Forget my last email. I was trying to link with 5.5 libs.

This problem is solved on 5.6 alpha!

On 22/09/2015 14:52, Nuno Santos wrote:

Hi,

On QTBUG-48335 bug report Friedmann Kleint suggests to try with Qt 
5.5.1 or 5.6 beta. I decided to give it a try with Qt 5.6 Alpha


I have downloaded Qt 5.6 alpha and compiled it from source statically. 
Building the plugin gives me the followin errors. It used to compile 
on Qt 5.5.


Does anyone knows how to sort this ones out?

Qt5Guid.lib(qevent.obj) : error LNK2005: "public: virtual __thiscall 
QInputMethodEvent::~QInputMethodEvent(void)" 
(??1QInputMethodEvent@@UAE@XZ) already defined in 
qwindowsd.lib(qwindowsinputcontext.obj)


Creating library debug\drc.lib and object debug\drc.exp


qmldbg_tcpd.lib(qtcpserverconnection.obj) : error LNK2019: unresolved 
external symbol "public: void __thiscall 
QQmlDebugServer::receiveMessage(class QByteArray const &)" 
(?receiveMessage@QQmlDebugServer@@QAEXABVQByteArray@@@Z) referenced in 
function "private: void __thiscall 
QTcpServerConnection::readyRead(void)" 
(?readyRead@QTcpServerConnection@@AAEXXZ)



qwindowsd.lib(qwindowsintegration.obj) : error LNK2001: unresolved 
external symbol "public: virtual class QStringList __thiscall 
QBasicFontDatabase::fallbacksForFamily(class QString const &,enum 
QFont::Style,enum QFont::StyleHint,enum QChar::Script)const " 
(?fallbacksForFamily@QBasicFontDatabase@@UBE?AVQStringList@@ABVQString@@W4Style@QFont@@W4StyleHint@5@W4Script@QChar@@@Z)



qwindowsd.lib(qwindowswindow.obj) : error LNK2019: unresolved external 
symbol "public: static void __cdecl 
QWindowSystemInterface::flushWindowSystemEvents(class QFlagsQEventLoop::ProcessEventsFlag>)" 
(?flushWindowSystemEvents@QWindowSystemInterface@@SAXV?$QFlags@W4ProcessEventsFlag@QEventLoop@Z) 
referenced in function "public: bool __thiscall 
QWindowsWindow::handleWmPaint(struct HWND__ *,unsigned int,unsigned 
int,long)" (?handleWmPaint@QWindowsWindow@@QAE_NPAUHWND__@@IIJ@Z)



qwindowsd.lib(qwindowsscreen.obj) : error LNK2001: unresolved external 
symbol "public: static void __cdecl 
QWindowSystemInterface::flushWindowSystemEvents(class QFlagsQEventLoop::ProcessEventsFlag>)" 
(?flushWindowSystemEvents@QWindowSystemInterface@@SAXV?$QFlags@W4ProcessEventsFlag@QEventLoop@Z)



qwindowsd.lib(qwindowsfontengine.obj) : error LNK2019: unresolved 
external symbol "public: static unsigned int __cdecl 
QFontEngine::getTrueTypeGlyphIndex(unsigned char const *,unsigned 
int)" (?getTrueTypeGlyphIndex@QFontEngine@@SAIPBEI@Z) referenced in 
function "public: virtual unsigned int __thiscall 
QWindowsFontEngine::glyphIndex(unsigned int)const " 
(?glyphIndex@QWindowsFontEngine@@UBEII@Z)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved 
external symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlDebugServerFactory(void)" 
(?qt_static_plugin_QQmlDebugServerFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlDebugServerFactoryPluginInstance::StaticQQmlDebugServerFactoryPluginInstance(void)" 
(??0StaticQQmlDebugServerFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved 
external symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlInspectorServiceFactory(void)" 
(?qt_static_plugin_QQmlInspectorServiceFactory@@YA?BUQStaticPlugin@@XZ) referenced 
in function "public: __thiscall 
StaticQQmlInspectorServiceFactoryPluginInstance::StaticQQmlInspectorServiceFactoryPluginInstance(void)" 
(??0StaticQQmlInspectorServiceFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved 
external symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlProfilerServiceFactory(void)" 
(?qt_static_plugin_QQmlProfilerServiceFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlProfilerServiceFactoryPluginInstance::StaticQQmlProfilerServiceFactoryPluginInstance(void)" 
(??0StaticQQmlProfilerServiceFactoryPluginInstance@@QAE@XZ)



Qt5Qmld.lib(qqmldebugconnector.obj) : error LNK2019: unresolved 
external symbol "struct QStaticPlugin const __cdecl 
qt_static_plugin_QQmlDebuggerServiceFactory(void)" 
(?qt_static_plugin_QQmlDebuggerServiceFactory@@YA?BUQStaticPlugin@@XZ) 
referenced in function "public: __thiscall 
StaticQQmlDebuggerServiceFactoryPluginInstance::StaticQQmlDebuggerServiceFactoryPluginInstance(void)" 
(??0StaticQQmlDebuggerServiceFactoryPluginInstance@@QAE@XZ)


debug\drc.dll : fatal error LNK1120: 8 unresolved externals


Thx,

Nuno

On 17/09/2015 19:44, Nuno Santos wrote:

Thiago,

I tried to describe it the best I could:

https://bugreports.qt.io/browse/QTBUG-48335

Thanks,

Regards,

Nuno

On 17/09/2015 17:24, Thiago Macieira wrote:

On Thursday 17 September 2015 13:42:41 Nuno Santos wrote:

Hi,

I have seen this bug report. The funny thing is that it says it is resolved
on Qt 5.5.0

I'm using Qt 5.5.0

What am I missing?

Some detail.

Apparently the 

Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Elvis Stansvik
2015-09-22 15:43 GMT+02:00 m...@rpzdesign.com :
> If you are using a docker container, why use the installer at all.
>
> Create a docker image with the binaries already in the search path.
>
> You can figure out the dependencies and paths using "nm" utility in linux.
>
> So if you problem is docker image prep, that should be a no-brainer.
>
> But if you want to somehow "install" to a docker image, they why use
> docker at all, just install to the native operating system and skip
> using the convenience of the docker isolated packaging.

If I understood him right, he wants to make a Dockerfile that creates
a Docker image from scratch (i.e. something that anyone could use, and
which could be automated), not just create an image (in which case he
could of course do as you suggest, manually click through the
installer inside the running image).

Elvis

>
>
>
>
>
> On 9/22/2015 7:32 AM, Andreas Cord-Landwehr wrote:
>> On Tuesday 22 September 2015 07:19:33 m...@rpzdesign.com wrote:
>>> Yes, write a bash script.
>>
>> Sorry, but I do not get your point.
>>
>> Actually, I am already writing a bash script but the problem is that I do not
>> see a way to extract the precompiled binaries from the Qt for Android
>> installer without opening a GUI window. The problem is that there is no
>> documented --no-gui option or similar.
>>
>> Cheers,
>> Andreas
>>
>
> --
> No spell checkers were harmed during the creation of this message.
> ___
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


Re: [Interest] Installing Qt for Android Binaries without GUI

2015-09-22 Thread Andreas Cord-Landwehr
On Tuesday 22 September 2015 15:58:42 Elvis Stansvik wrote:
> If I understood him right, he wants to make a Dockerfile that creates
> a Docker image from scratch (i.e. something that anyone could use, and
> which could be automated), not just create an image (in which case he
> could of course do as you suggest, manually click through the
> installer inside the running image).

Yes, that exactly is the intent. An automated and reproducible way to build an 
image. Sorry for maybe mixing the "build" and "create" Docker vocabulary.

Cheers,
Andreas
___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Qt qml plugins don't have .pri under mkspecs/modules while other plugins have (static build of Qt)

2015-09-22 Thread Nuno Santos

Hi,

I wonder why there are no .pri for the qml related plugins under 
mkspecs/modules.  For examples, every lib created under plugins has the 
respective .pri:


qwindows
qmldbg_debugger
qmldbg_inspector
qmldbg_profiler
qmldbg_server
qmldbg_local
qmldbg_tcp

And so on...

And you can simply write on your .pro:

QTPLUGIN += qmldbg_debugger qmldbg_inspector qmldbg_profiler 
qmldbg_server qmldbg_local qmldbg_tcp


It will link with the respective lib.

However, it doesn't possible to follow the same strategy with qml plugins.

To link with qml plugins I need to explicit refer the library name and path:

CONFIG(debug, debug|release) {
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick.2 
qtquick2plugind.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Window.2 
windowplugind.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Controls 
qtquickcontrolsplugind.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Layouts 
qquicklayoutsplugind.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Extras 
qtquickextrasplugind.lib

} else {
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick.2 
qtquick2plugin.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Window.2 
windowplugin.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Controls 
qtquickcontrolsplugin.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Layouts 
qquicklayoutsplugin.lib
LIBS += -LC:\Qt\5.6\msvc2013_opengl_x86_static\qml\QtQuick\Extras 
qtquickextrasplugin.lib

}

My environment is a static build of Qt. Is this normal or is a bug?

Regards,

Nuno

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest


[Interest] Menu in Mac

2015-09-22 Thread Rollastre Prostrit
Hi.

I have an application that when run in Linux and Windows shows the main
window with all the menus correctly on startup. However, in Mac, the main
window shows up and grabs the desktop focus as normal, but the menu bar
(mac's menu bar) is not changed and remains the previous one until I focus
(e.g., Cmd+Tab) on other application and go back (e.g., again Cmd+Tab). Then
everything behaves normal.

I have tried a ton of things without success and still I don't manage to
understand what the problem is. I have tried to force all sorts of refresh
events I have been able to imagine without success. Is there any dark trick
to be applied here?

Qt version is currently 5.5. But I have seen it in all the previous ones
I've tried. So, the problem is in my code but... where or what is it?

Thanks!

___
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest