WarehouseSpecialOrdersWindow::WarehouseSpecialOrdersWindow( Widget* parent, const Point& pos, WarehousePtr warehouse ) : BaseSpecialOrdersWindow( parent, pos, defaultHeight ), __INIT_IMPL(WarehouseSpecialOrdersWindow) { __D_IMPL(d, WarehouseSpecialOrdersWindow) setupUI( ":/gui/warehousespecial.gui"); setTitle( _("##warehouse_orders##") ); d->warehouse = warehouse; int index=0; for( int goodType=Good::wheat; goodType <= Good::marble; goodType++ ) { const GoodOrders::Order rule = d->warehouse->store().getOrder( (Good::Type)goodType ); if( rule != GoodOrders::none ) { addOrderWidget<WarehousePtr>( index, (Good::Type)goodType, _ordersArea(), d->warehouse ); index++; } } GET_DWIDGET_FROM_UI( d, btnToggleDevastation ) GET_DWIDGET_FROM_UI( d, btnTradeCenter ) CONNECT( d->btnToggleDevastation, onClicked(), this, WarehouseSpecialOrdersWindow::toggleDevastation ); _updateBtnDevastation(); }
Trade::Trade(PlayerCityPtr city, Widget* parent, int id ) : Base( parent, city, id ), _d( new Impl ) { setupUI( ":/gui/tradeadv.gui" ); _d->city = city; _d->allgoods = city->statistic().goods.details( false ); GET_DWIDGET_FROM_UI( _d, btnEmpireMap ) GET_DWIDGET_FROM_UI( _d, btnPrices ) GET_DWIDGET_FROM_UI( _d, gbInfo ) CONNECT( _d->btnEmpireMap, onClicked(), this, Trade::deleteLater ); CONNECT( _d->btnPrices, onClicked(), _d.data(), Impl::showGoodsPriceWindow ); _d->updateGoodsInfo(); TexturedButton* btnHelp = new TexturedButton( this, Point( 12, height() - 39), Size( 24 ), -1, ResourceMenu::helpInfBtnPicId ); CONNECT( btnHelp, onClicked(), this, Trade::_showHelp ); }
PackageOptions::PackageOptions( Widget* parent, const Rect& rectangle ) : Window( parent, rectangle, "" ), _d( new Impl ) { setupUI( ":/gui/packageopts.gui" ); setCenter( parent->center() ); GET_DWIDGET_FROM_UI(_d,edResourcesPath) GET_DWIDGET_FROM_UI(_d,btnApply) GET_DWIDGET_FROM_UI(_d,btnChangeCellw) GET_DWIDGET_FROM_UI(_d,edCaesar3Path) CONNECT( _d->btnApply, onClicked(), this, PackageOptions::deleteLater ); CONNECT( _d->btnApply, onClicked(), this, PackageOptions::_saveOptions ); CONNECT( _d->edResourcesPath, onTextChanged(), this, PackageOptions::_setResourcesPath ); CONNECT( _d->edCaesar3Path, onTextChanged(), this, PackageOptions::_setCaesar3Path ); CONNECT( _d->btnChangeCellw, onClicked(), this, PackageOptions::_changeCellw ); WidgetEscapeCloser::insertTo( this ); _update(); if( _d->btnApply ) _d->btnApply->setFocus(); }
FilmWidget::FilmWidget(Widget* parent, const vfs::Path& film ) : Window( parent, Rect( 0, 0, 1, 1 ), "" ), _d( new Impl ) { _d->locker.activate(); _d->lbMessage = 0; setupUI( ":/gui/filmwidget.gui" ); setCenter( parent->center() ); _d->smkViewer = new SmkViewer( this, Rect( 10, 10, width() - 10, 10 + 292 ) ); GET_DWIDGET_FROM_UI( _d, lbTitle ) GET_DWIDGET_FROM_UI( _d, btnExit ) GET_DWIDGET_FROM_UI( _d, lbTime ) GET_DWIDGET_FROM_UI( _d, lbReceiver ) GET_DWIDGET_FROM_UI( _d, lbMessage ) _d->videoFile = film; //"/smk/Emmigrate.smk" _d->smkViewer->setFilename( _d->videoFile ); CONNECT( _d->btnExit, onClicked(), &_d->onCloseSignal, Signal0<>::_emit ); CONNECT( _d->btnExit, onClicked(), this, FilmWidget::deleteLater ); }
LoadFileDialog::LoadFileDialog( Widget* parent, const Rect& rect, const vfs::Directory& dir, const std::string& ext, int id ) : Window( parent, rect, "", id ), _d( new Impl ) { Widget::setupUI( ":/gui/loadfile.gui" ); setCenter( parent->center() ); // create the title GET_DWIDGET_FROM_UI( _d, lbTitle ) _d->directory = dir; _d->fileExtension = ext; GET_DWIDGET_FROM_UI( _d, btnExit ) GET_DWIDGET_FROM_UI( _d, btnHelp ) GET_DWIDGET_FROM_UI( _d, btnLoad ) GET_DWIDGET_FROM_UI( _d, btnDelete ) GET_DWIDGET_FROM_UI( _d, lbxFiles ) CONNECT( _d->btnExit, onClicked(), this, LoadFileDialog::deleteLater ); CONNECT( _d->btnLoad, onClicked(), _d.data(), Impl::emitSelectFile ); CONNECT( _d->btnDelete, onClicked(), _d.data(), Impl::deleteFile ); if( _d->lbxFiles ) { _d->lbxFiles->setItemDefaultColor( ListBoxItem::simple, 0xffffffff ); _d->lbxFiles->setItemDefaultColor( ListBoxItem::hovered, 0xff000000 ); } CONNECT( _d->lbxFiles, onItemSelected(), _d.data(), Impl::resolveItemSelected ) CONNECT( _d->lbxFiles, onItemSelectedAgain(), _d.data(), Impl::resolveItemDblClick ); _d->fillFiles(); setMayDelete( false ); }