FlightGear Qt launcher: Difference between revisions

Jump to navigation Jump to search
m
de-quoting
m (→‎Background: more de-quoting)
m (de-quoting)
Line 6: Line 6:
James Turner is currently prototyping (at the suggestion / encouragement of Curt, Torsten D & others) a GUI integration for FlightGear based on Qt 5. This would overlap some areas other folks are working on, so we felt it best to make an announcement to avoid anyone expending their time on areas that might be affected<ref>http://sourceforge.net/p/flightgear/mailman/message/33245028/</ref>.
James Turner is currently prototyping (at the suggestion / encouragement of Curt, Torsten D & others) a GUI integration for FlightGear based on Qt 5. This would overlap some areas other folks are working on, so we felt it best to make an announcement to avoid anyone expending their time on areas that might be affected<ref>http://sourceforge.net/p/flightgear/mailman/message/33245028/</ref>.


This will be an in-app launcher for Mac initially, based on Qt5. Primarily, because the old Mac launcher doesn’t work on Yosemite, so we are adding a tiny Qt-based launcher inside the main process (no need to fork / exec) which runs before the OSG window is created, this will be merged for 3.4, hopefully with no impact on other platforms.<ref>https://gitorious.org/fg/flightgear/commit/78e8f533124ad38c414d10470abcd2149b6d01e8#src/Main/main.cxx</ref>
This will be an in-app launcher for Mac initially, based on Qt5. Primarily, because the old Mac launcher doesn’t work on Yosemite, so we are adding a tiny Qt-based launcher inside the main process (no need to fork / exec) which runs before the OSG window is created, this will be merged for 3.4, hopefully with no impact on other platforms.<ref>https://gitorious.org/fg/flightgear/commit/78e8f533124ad38c414d10470abcd2149b6d01e8#src/Main/main.cxx</ref>.


All of this would be a QtQuick 2 GUI, not a Qt widgets GUI. If you don’t know what that terminology means, don’t worry about it, the quick answer is it works the same ways as Canvas does at present (rendering to OpenGL).
All of this would be a QtQuick 2 GUI, not a Qt widgets GUI. If you don’t know what that terminology means, don’t worry about it, the quick answer is it works the same ways as Canvas does at present (rendering to OpenGL).
Line 19: Line 19:
There is currently heavy activity towards a new UI. There will be the HTML5 based version, TorstenD is currently working on and an internal implementation based on well supported libraries using Qt5 (which James Turner is working). The parallel development of HTML and Qt based UI happens by intention and is not the result of missing coordination<ref>http://forum.flightgear.org/viewtopic.php?p=229445#p229445</ref>. Most likely, both will use a common service layer to provide necessary data<ref>http://forum.flightgear.org/viewtopic.php?p=229303#p229303</ref>.
There is currently heavy activity towards a new UI. There will be the HTML5 based version, TorstenD is currently working on and an internal implementation based on well supported libraries using Qt5 (which James Turner is working). The parallel development of HTML and Qt based UI happens by intention and is not the result of missing coordination<ref>http://forum.flightgear.org/viewtopic.php?p=229445#p229445</ref>. Most likely, both will use a common service layer to provide necessary data<ref>http://forum.flightgear.org/viewtopic.php?p=229303#p229303</ref>.


The Qt5 stuff is currently only enabled for the Mac/OSX platforms because the corresponding launcher there had to be discontinued (well its dependencies got phased out by Apple) - and shouldn't be used anywhere else (yet)<ref>http://forum.flightgear.org/viewtopic.php?p=234090#p234090</ref>-
The Qt5 stuff is currently only enabled for the Mac/OSX platforms because the corresponding launcher there had to be discontinued (well its dependencies got phased out by Apple) - and shouldn't be used anywhere else (yet)<ref>http://forum.flightgear.org/viewtopic.php?p=234090#p234090</ref>.
 
For the time being, Qt is only needed for the launcher feature, which is automatically disabled if it is not found<ref>http://sourceforge.net/p/flightgear/mailman/message/33498614/</ref>.
If CMake does not find QT5 then it skips the QT launcher compilation<ref>http://sourceforge.net/p/flightgear/mailman/message/33498869/</ref>.
 
Related to Qt, up to now - only a simple replacement for the Mac Launcher has been introduced. This is not related to the internal user interface of FlightGear, at least for now. If, how and when the internal gui can leverage Qt is under investigation and in such an early state that those responsible preferred to not announce anything yet. If this ever happens, this will be discussed on the mailing list<ref>http://forum.flightgear.org/viewtopic.php?p=229563#p229563</ref>


The launcher is not run by default, this is because it was created as a Mac only solution. We need to have the discussion if it should become the default launcher for Windows (Linux and other Unixes are less relevant, it’s up to the distribution packagers).
The launcher is not run by default, this is because it was created as a Mac only solution. We need to have the discussion if it should become the default launcher for Windows (Linux and other Unixes are less relevant, it’s up to the distribution packagers).
Line 31: Line 36:
However, the upcoming FlightGear 3.6 release is likely to contain an integrated, hard-coded, launcher based on Qt5 to work around this issue (of the mac launcher no longer working)<ref>http://forum.flightgear.org/viewtopic.php?p=228961#p228961</ref>, because James Turner is prototyping a Qt5 cross-platform GUI <ref>http://forum.flightgear.org/viewtopic.php?p=232593#p232593</ref>.
However, the upcoming FlightGear 3.6 release is likely to contain an integrated, hard-coded, launcher based on Qt5 to work around this issue (of the mac launcher no longer working)<ref>http://forum.flightgear.org/viewtopic.php?p=228961#p228961</ref>, because James Turner is prototyping a Qt5 cross-platform GUI <ref>http://forum.flightgear.org/viewtopic.php?p=232593#p232593</ref>.


== Status ==
Once we have a built-in Qt launcher that&#39;s shipped by default on Mac it will probably be used on other OS in the coming release. FGRun will be gone by then, therefore I&#39;m closing this issue. [...] FGRun will be gone with the next release of FlightGear, in favour of a built-in launcher. Therefore, I&#39;m closing this issue to prevent anyone from spending a lot of time on fixing things in FGRun <ref>http://code.google.com/p/flightgear-bugs/issues/detail?id=1591#c2</ref>.
{{FGCquote
  |Related to Qt, I can say that up to now - as far as I can tell - only a simple replacement for the Mac Launcher has been introduced. This is not related to the internal user interface of FlightGear, at least for now. If, how and when the internal gui can leverage Qt is under investigation and in such an early state that those responsible preferred to not announce anything yet. If this ever happens, this will be discussed on the mailing list
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=229563#p229563
    |title=<nowiki>Re: FlightGear GUI hell: PUI, Canvas GUI, Mongoose, </nowiki>
    |author=<nowiki>Torsten</nowiki>
    |date=<nowiki>Sun Jan 11</nowiki>
  }}
}}
 
{{FGCquote
  |We now have a built-in Qt launcher that&#39;s shipped by default on Mac and will be used on other OS in the coming release. FGRun will be gone by then, therefore I&#39;m closing this issue. [...] FGRun will be gone with the next release of FlightGear, in favour of a built-in launcher. Therefore, I&#39;m closing this issue to prevent anyone from spending a lot of time on fixing things in FGRun.
  |{{cite web |url=http://code.google.com/p/flightgear-bugs/issues/detail?id=1591#c2
    |title=<nowiki>Issues #1591, #1529, #1295, #1003, #911, #1348</nowiki>
    |author=<nowiki>Gijs</nowiki>
    |date=<nowiki>Sun Jan 11</nowiki>
  }}
}}
 


https://gitorious.org/fg/fgmeta/commit/aed93a226761b985008132f66af73eac261db26c
https://gitorious.org/fg/fgmeta/commit/aed93a226761b985008132f66af73eac261db26c


== Dependencies ==
{{FGCquote
  |Qt is only needed for the launcher feature, which is automatically disabled if it is not found.
  |{{cite web |url=http://sourceforge.net/p/flightgear/mailman/message/33498614/
    |title=<nowiki>Re: [Flightgear-devel] FGData splitting / assembling the base
package</nowiki>
    |author=<nowiki>Rebecca N. Palmer</nowiki>
    |date=<nowiki>2015-02-26</nowiki>
  }}
}}


{{FGCquote
  |If CMake does not find QT5 then it skips the QT launcher compilation
  |{{cite web |url=http://sourceforge.net/p/flightgear/mailman/message/33498869/
    |title=<nowiki>Re: [Flightgear-devel] Qt launcher requirement bump in Flightgear
git</nowiki>
    |author=<nowiki>Bertrand Coconnier</nowiki>
    |date=<nowiki>2015-02-26</nowiki>
  }}
}}


== Variants ==
== Variants ==

Navigation menu