Пример #1
0
Shader& Shader::load(QString shaderPrefix, QStringList attributes, QStringList uniforms)
{;
    vertex = Utils::getFileContent(shaderPrefix+".vs");
    fragment = Utils::getFileContent(shaderPrefix+".fs");

    setup();
    setupLocations(attributes, uniforms);

    return *this;
}
Пример #2
0
LnkProperties::LnkProperties( AppLnk* l, QWidget* parent )
    : QDialog( parent, 0, TRUE ), lnk(l), fileSize( 0 )
{
    setCaption( tr("Properties") );

    QVBoxLayout *vbox = new QVBoxLayout( this );
    d = new LnkPropertiesBase( this );
    vbox->add( d );

    // hide custom rotation feature for now, need a new implementation to fit quicklauch,
    // is confusing for the user and doubtable useful since life rotation
    d->rotate->hide();
    d->rotateButtons->hide();

    d->docname->setText(l->name());
    QString inf;
    if ( l->type().isEmpty() ) {
	d->type->hide();
	d->typeLabel->hide();
    } else {
	d->type->setText( l->type() );
    }

    if ( l->comment().isEmpty() ) {
	d->comment->hide();
	d->commentLabel->hide();
    } else {
	d->comment->setText( l->comment() );
    }

    connect(d->beam,SIGNAL(clicked()),this,SLOT(beamLnk()));
    if ( lnk->type().contains('/') ) { // A document? (#### better predicate needed)
	connect(d->unlink,SIGNAL(clicked()),this,SLOT(unlinkLnk()));
	connect(d->duplicate,SIGNAL(clicked()),this,SLOT(duplicateLnk()));

	d->docname->setReadOnly( FALSE );
	d->preload->hide();
	d->rotate->hide();
	d->rotateButtons->hide();
	d->labelspacer->hide();

	// ### THIS MUST GO, FIX WIERD BUG in QLAYOUT
	d->categoryEdit->kludge();

	d->categoryEdit->setCategories( lnk->categories(),
					"Document View",
					tr("Document View") );
	setupLocations();
    } else {
	d->unlink->hide();
	d->duplicate->hide();
	d->beam->hide();
	d->hline->hide();
 	d->locationLabel->hide();
	d->locationCombo->hide();

	// Can't edit categories, since the app .desktop files are global,
	// possibly read-only.
 	d->categoryEdit->hide();

	d->docname->setReadOnly( TRUE );

	if ( l->property("CanFastload") == "0" )
	    d->preload->hide();
	if ( !l->property("Rotation"). isEmpty ()) {
	    d->rotate->setChecked ( true );
            //don't use rotate buttons for now (see comment above)
	    //d->rotateButtons->setButton((l->rotation().toInt()%360)/90);
	}
	else {
	    d->rotateButtons->setEnabled(false);
	}

        if ( !l->property( "Arguments" ).isEmpty() )
            d->arguments->setText( l->property( "Arguments" ) );

	Config cfg("Launcher");
	cfg.setGroup("Preload");
	QStringList apps = cfg.readListEntry("Apps",',');
	d->preload->setChecked( apps.contains(l->exec()) );
	if ( Global::isBuiltinCommand(lnk->exec()) )
	    d->preload->hide(); // builtins are always fast

	currentLocation = 0; // apps not movable (yet)
    }
}