示例#1
0
bool Chimera_X11::onWindowAttached( FB::AttachedEvent* evt, FB::PluginWindowX11* w )
{
    m_pluginWindow.reset( QWindow::fromWinId( (WId) w->getWindow() ) );

    vlcOpen();

    m_quickViewPtr.reset( new QQuickView( m_pluginWindow.data() ) );
    m_quickViewPtr->setTitle( QStringLiteral( "WebChimera" ) );
    m_quickViewPtr->setResizeMode( QQuickView::SizeRootObjectToView );
    m_quickViewPtr->setFlags( m_quickViewPtr->flags() | Qt::FramelessWindowHint );

    m_quickViewPtr->setColor( get_bgColor() );
    connect( this, &QmlChimera::bgcolorChanged,
             m_quickViewPtr.data(), &QQuickView::setColor );

    m_qmlVlcPlayer = new QmlVlcSurfacePlayerProxy( get_player_ptr(), m_quickViewPtr.data() );
    m_qmlVlcPlayer->classBegin();

    //have to call applyPlayerOptions()
    //after QmlVlcSurfacePlayerProxy::classBegin
    //to allow attach Proxy's vmem to plugin before play
    applyPlayerOptions();

    //simulate resize
    //onWindowResized( 0, w );

    setQml();

    return false;
}
示例#2
0
void Controller::setMainWindow()
{
    qmlviewer->setResizeMode(QQuickView::SizeRootObjectToView);
    app->setApplicationDisplayName("O2C");
    app->setApplicationName("O2C");
    qmlviewer->setTitle("O2C");
    app->setApplicationVersion("3.0.0");
    qmlviewer->setMaximumWidth(APP_WIDTH);
    qmlviewer->setMinimumHeight(APP_HEIGHT);
    qmlviewer->setMinimumWidth(APP_WIDTH);
    qmlviewer->setMaximumHeight(APP_HEIGHT);
    setQml("screens/phone.qml", "phone");
    qmlviewer->setGeometry(100,100,700,420);
    qmlviewer->show();
}