#include "Initialisierung.h" #include #include #include Knopf *initKnopf( int x, int y, int br, int hö, Schrift *zSchrift, int style, char *titel ) { Knopf *ret = new Knopf(); ret->addStyle( style ); ret->setPosition( x, y ); ret->setSize( br, hö ); if( zSchrift ) ret->setSchriftZ( zSchrift->getThis() ); if( titel ) ret->setText( titel ); return ret; } KontrollKnopf *initKontrollKnopf( int x, int y, int br, int hö, Schrift *zSchrift, int style, char *txt ) { KontrollKnopf *ret = new KontrollKnopf(); ret->setStyle( style ); if( zSchrift ) ret->setSchriftZ( zSchrift->getThis() ); if( txt ) { ret->setText( txt ); ret->setSText( txt ); } ret->setSFarbe( 0xFFFFFFFF ); ret->setSSize( 12 ); if( ret->hatStyle( TextFeld::Style::Buffered ) ) { ret->setAlphaFeldFarbe( 0x5500FF00 ); ret->setAlphaFeldStrength( -5 ); } if( ret->hatStyle( TextFeld::Style::Rahmen ) ) { ret->setRahmenBreite( 1 ); ret->setRahmenFarbe( 0xFF00FF00 ); } ret->setPosition( x, y ); ret->setSize( br, hö ); ret->loadData( "data/bilder/system.ltdb" ); return ret; } Fenster *initFenster( int x, int y, int br, int hö, Schrift *zSchrift, int style, char *titel ) { Fenster *ret = new Fenster(); ret->setStyle( style ); ret->setPosition( x, y ); ret->setSize( br, hö ); if( ret->hatStyle( Fenster::Style::Rahmen ) ) { ret->setRBreite( 1 ); ret->setRFarbe( 0xFFFFFFFF ); } if( ret->hatStyle( Fenster::Style::Titel ) ) { if( titel ) ret->setTitel( titel ); if( zSchrift ) ret->setTSchriftZ( zSchrift->getThis() ); ret->setTSFarbe( 0xFFFFFFFF ); ret->zTTextFeld()->setSize( 0, 20 ); ret->zTTextFeld()->addStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Center | TextFeld::Style::Rahmen ); ret->setTRFarbe( 0xFF00FF00 ); ret->setTRBreite( 1 ); if( ret->hatStyle( Fenster::Style::TitelBuffered ) ) { ret->setTAfFarbe( 0x1000FF00 ); ret->setTAfStrength( -15 ); } } return ret; } TextFeld *initTextFeld( int x, int y, int br, int hö, Schrift *zSchrift, int style, char *txt ) { TextFeld *ret = new TextFeld(); ret->setStyle( style ); if( zSchrift ) ret->setSchriftZ( zSchrift->getThis() ); if( txt ) ret->setText( txt ); ret->setSchriftFarbe( 0xFFFFFFFF ); ret->setSchriftSize( 12 ); if( ret->hatStyle( TextFeld::Style::Buffered ) ) { ret->setAlphaFeldFarbe( 0x5500FF00 ); ret->setAlphaFeldStrength( -5 ); } if( ret->hatStyle( TextFeld::Style::Rahmen ) ) { ret->setRahmenBreite( 1 ); ret->setRahmenFarbe( 0xFF00FF00 ); } ret->setPosition( x, y ); ret->setSize( br, hö ); return ret; } BildZ *initBildZ( int x, int y, int br, int hö, int style, Bild *b ) { BildZ *ret = new BildZ(); ret->setStyle( style ); ret->setPosition( x, y ); ret->setSize( br, hö ); if( b ) ret->setBildZ( b ); if( ( style | BildZ::Style::Rahmen ) == style ) { ret->setRahmenBreite( 1 ); ret->setRahmenFarbe( 0xFFFFFFFF ); } return ret; } AuswahlBox *initAuswahlBox( int x, int y, int br, int hö, Schrift *zSchrift, __int64 style, std::initializer_list< char * > values ) { AuswahlBox *ret = new AuswahlBox(); ret->setStyle( style ); ret->setPosition( x, y ); ret->setSize( br, hö ); if( ( style | AuswahlBox::Style::Hintergrund ) == style ) ret->setHintergrundFarbe( 0xFF000000 ); if( ( style | AuswahlBox::Style::Erlaubt ) == style ) ret->setMausEreignis( _ret1ME ); if( zSchrift ) ret->setSchriftZ( zSchrift->getThis() ); if( ( style | AuswahlBox::Style::Rahmen ) == style ) { ret->setRahmenBreite( 1 ); ret->setRahmenFarbe( 0xFFFFFFFF ); } if( ( style | AuswahlBox::Style::MaxHeight ) == style ) ret->setMaxAuskappHeight( 100 ); if( ( style | AuswahlBox::Style::MausRahmen ) == style ) { ret->setMausRahmenBreite( 1 ); ret->setMausRahmenFarbe( 0xFF005500 ); } if( ( style | AuswahlBox::Style::MausBuffer ) == style ) { ret->setMausAlphaFeldFarbe( 0x00008700 ); ret->setMausAlphaFeldStrength( -8 ); } if( ( style | AuswahlBox::Style::AuswahlRahmen ) == style ) { ret->setAuswRahmenBreite( 1 ); ret->setAuswRahmenFarbe( 0xFF00FF00 ); } if( ( style | AuswahlBox::Style::AuswahlBuffer ) == style ) { ret->setAuswAlphaFeldFarbe( 0x0000FF00 ); ret->setAuswAlphaFeldStrength( -8 ); } for( auto i = values.begin(); i != values.end(); i++ ) { ret->addEintrag( *i ); } return ret; } ObjTabelle *initObjTabelle( int x, int y, int br, int hö, Schrift *zSchrift, int style, std::initializer_list< OBJTabelleSpalteIni > spalten, int überschriftHöhe ) { ObjTabelle *ret = new ObjTabelle(); ret->setStyle( style ); ret->setPosition( x, y ); ret->setSize( br, hö ); if( ( style | ObjTabelle::Style::Erlaubt ) == style ) ret->setMausEreignis( _ret1ME ); if( ( style | ObjTabelle::Style::Rahmen ) == style ) { ret->setRahmenBreite( 1 ); ret->setRahmenFarbe( 0xFFFFFFFF ); } if( ( style | ObjTabelle::Style::Raster ) == style ) { ret->setRasterBreite( 1 ); ret->setRasterFarbe( 0xFFFFFFFF ); } if( ( style | ObjTabelle::Style::VScroll ) == style ) ret->setVertikalKlickScroll( 5 ); if( ( style | ObjTabelle::Style::HScroll ) == style ) ret->setHorizontalKlickScroll( 5 ); for( auto i = spalten.begin(); i != spalten.end(); i++ ) { ret->addSpalte( i->name ); ret->setSpaltenBreite( i->name, i->breite ); if( ( style | ObjTabelle::Style::SpaltenBreiteMin ) == style ) ret->setMinSpaltenBreite( i->name, i->minBreite ); if( ( style | ObjTabelle::Style::SpaltenBreiteMax ) == style ) ret->setMaxSpaltenBreite( i->name, i->maxBreite ); if( überschriftHöhe ) { if( ret->getZeilenNummer( "Überschrift" ) < 0 ) { ret->addZeile( 0, "Überschrift" ); ret->setZeilenHeight( 0, 20 ); } ret->setZeichnungZ( i->name, "Überschrift", initTextFeld( 0, 0, i->breite, 20, zSchrift, TextFeld::Style::Text, i->name ) ); } } return ret; } void initToolTip( Zeichnung *obj, const char *txt, Schrift *schrift, Bildschirm *zBs ) { obj->setToolTipText( txt, zBs ); if( schrift ) obj->zToolTip()->setSchriftZ( schrift ); obj->zToolTip()->addStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Rahmen | TextFeld::Style::Hintergrund | TextFeld::Style::HAlpha | TextFeld::Style::Mehrzeilig ); obj->zToolTip()->setHintergrundFarbe( 0xA0000000 ); obj->zToolTip()->setRahmenFarbe( 0xFFFFFFFF ); obj->zToolTip()->setSchriftFarbe( 0xFFFFFFFF ); }