void MainWindow::setupUI()
{
    ui->statusBar->addWidget(&statusLabel);

    ui->interestsListView->setModel( &interestsModel );
    //enum Interest { SIGHT, CULTURE, PARK, ENTERTAINMENT };
    interestsModel.appendRow(new SelectionItem("Достопримечательности"));
    interestsModel.appendRow(new SelectionItem("Культура"));
    interestsModel.appendRow(new SelectionItem("Парки"));
    interestsModel.appendRow(new SelectionItem("Развлечения"));

    ui->transportListView->setModel( &transportModel );
    //enum Transport {CAR, UNDERGROUND, BUS, TROLLEYBUS, TRAM, TAXI, FOOT};
    transportModel.appendRow(new SelectionItem("Автомобиль"));
    transportModel.appendRow(new SelectionItem("Метро"));
    transportModel.appendRow(new SelectionItem("Автобус"));
    transportModel.appendRow(new SelectionItem("Троллейбус"));
    transportModel.appendRow(new SelectionItem("Трамвай"));
    transportModel.appendRow(new SelectionItem("Маршрутка"));
    transportModel.appendRow(new SelectionItem("Пешком"));

    ui->sortTypeComboBox->addItem("По времени");
    ui->sortTypeComboBox->addItem("По стоимости");

    ui->createPlaceButton->setEnabled(false);
    ui->createRouteButton->setEnabled(false);
    ui->removeButton->setEnabled(false);

    ui->routesTableWidget->setColumnCount(5);

    QStringList horizontalLabels;
    horizontalLabels.append("Начало");
    horizontalLabels.append("Конец");
    horizontalLabels.append("Стоимость");
    horizontalLabels.append("Время");
    horizontalLabels.append("Действия");
    ui->routesTableWidget->setHorizontalHeaderLabels(horizontalLabels);

    fillPlaces(ui->startList);
    fillPlaces(ui->finishList);

    connect(&placeDialog,SIGNAL(accepted()),ui->mapWidget,SLOT(createPlace()));
    connect(&placeDialog,SIGNAL(rejected()), this, SLOT(cancelCreatingPlace()));
    connect(&placeDialog,SIGNAL(accepted()),this,SLOT(onPlaceDataEntered()));
    connect(&routeDialog,SIGNAL(accepted()),ui->mapWidget,SLOT(createRoute()));
    connect(&routeDialog,SIGNAL(rejected()), this, SLOT(cancelCreatingRoute()));
    connect(&routeDialog,SIGNAL(accepted()),this,SLOT(onRouteDataEntered()));
    connect(&saveDialog,SIGNAL(accepted()),this,SLOT(save()));
    connect(&saveDialog,SIGNAL(rejected()),this,SLOT(cancel()));
    connect(ui->mapWidget,SIGNAL(placeCreated(double,double)),this,SLOT(onPlaceCreated(double,double)));
    connect(ui->mapWidget,SIGNAL(routeCreated(int,int)),this,SLOT(onRouteCreated(int,int)));
    connect(ui->mapWidget,SIGNAL(firstPlaceSelected()),this,SLOT(onFirstPlaceSelected()));
    connect(ui->mapWidget,SIGNAL(secondPlaceSelected()),this,SLOT(onSecondPlaceSelected()));
    connect(ui->mapWidget, SIGNAL(mapReady()), this, SLOT(initMap()));
    connect(ui->mapWidget, SIGNAL(elementRemoved()), this, SLOT(onElementRemoved()));
    connect(ui->editMapButton, SIGNAL(clicked()), this, SLOT(editMode()));
    connect(ui->searchRoutesButton, SIGNAL(clicked()), this, SLOT(runRouteSearching()));

}
Exemple #2
0
Place::Place(const QString &id)
{
    this->id = id;
    name = id;
    tokens = 0;
    capacity = 0;

    createPlace();

    label->setPos(30, 30);
}
Exemple #3
0
/* From XML */
Place::Place(const PLACE_ATTR &place)
{
    id = place.id;

    if(place.name.isNull())
        name = id;
    else
        name = place.name;

    tokens = place.initmark;

    capacity = place.capacity;

    createPlace();

    label->setPos(place.offsetx, place.offsety);
}