Skip to content

Commit be9eb55

Browse files
committed
Update demo to showcase translation
1 parent a346f1e commit be9eb55

File tree

12 files changed

+85
-58
lines changed

12 files changed

+85
-58
lines changed

vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/view/HomeView.java renamed to vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/ui/HomeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package software.xdev.vaadin.view;
1+
package software.xdev.vaadin.ui;
22

33
import com.vaadin.flow.component.UI;
44
import com.vaadin.flow.component.button.Button;

vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/view/MainLayout.java renamed to vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/ui/MainLayout.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package software.xdev.vaadin.view;
1+
package software.xdev.vaadin.ui;
22

33
import java.util.Objects;
44

@@ -13,41 +13,41 @@
1313
import com.vaadin.flow.router.PageTitle;
1414

1515
import software.xdev.vaadin.breadcrumbs.Breadcrumbs;
16-
import software.xdev.vaadin.view.cars.CarsView;
17-
import software.xdev.vaadin.view.cars.brand.ElectricView;
18-
import software.xdev.vaadin.view.cars.brand.GasolineView;
19-
import software.xdev.vaadin.view.cars.brand.HybridView;
16+
import software.xdev.vaadin.ui.cars.CarsView;
17+
import software.xdev.vaadin.ui.cars.brand.ElectricView;
18+
import software.xdev.vaadin.ui.cars.brand.GasolineView;
19+
import software.xdev.vaadin.ui.cars.brand.HybridView;
2020

2121

2222
@PageTitle("Breadcrumb Demo")
2323
public class MainLayout extends AppLayout
2424
{
25-
private static final String SIDE_NAV_I18N_PREFIX = "sidenav_";
26-
27-
private final Breadcrumbs breadcrumbs = new Breadcrumbs();
25+
private final Breadcrumbs breadcrumbs = new Breadcrumbs()
26+
.withHomeBreadcrumbName(this.getTranslation(TranslationKeys.HOME))
27+
.withBreadcrumbNameResolver((full, part) -> this.getTranslation(part));
2828

2929
public MainLayout()
3030
{
3131
final SideNav sideNav = new SideNav();
3232
sideNav.addItem(new SideNavItem(
33-
this.getTranslation(SIDE_NAV_I18N_PREFIX + "home"),
33+
this.getTranslation(TranslationKeys.HOME),
3434
"",
3535
VaadinIcon.HOME_O.create()));
3636

3737
final SideNavItem carsItem = new SideNavItem(
38-
this.getTranslation(SIDE_NAV_I18N_PREFIX + "cars"),
38+
this.getTranslation(TranslationKeys.CARS),
3939
CarsView.class,
4040
VaadinIcon.CAR.create());
4141
carsItem.addItem(new SideNavItem(
42-
this.getTranslation(SIDE_NAV_I18N_PREFIX + "electric"),
42+
this.getTranslation(TranslationKeys.ELECTRIC),
4343
ElectricView.class,
4444
VaadinIcon.BOLT.create()));
4545
carsItem.addItem(new SideNavItem(
46-
this.getTranslation(SIDE_NAV_I18N_PREFIX + "hybrid"),
46+
this.getTranslation(TranslationKeys.HYBRID),
4747
HybridView.class,
4848
VaadinIcon.GLOBE.create()));
4949
carsItem.addItem(new SideNavItem(
50-
this.getTranslation(SIDE_NAV_I18N_PREFIX + "gasoline"),
50+
this.getTranslation(TranslationKeys.GASOLINE),
5151
GasolineView.class,
5252
VaadinIcon.FIRE.create()));
5353

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package software.xdev.vaadin.ui;
2+
3+
public final class TranslationKeys
4+
{
5+
public static final String HOME = "home";
6+
7+
public static final String CARS = "cars";
8+
public static final String ELECTRIC = "electric";
9+
public static final String HYBRID = "hybrid";
10+
public static final String GASOLINE = "gasoline";
11+
12+
public static final String FUEL = "fuel";
13+
public static final String MODEL = "model";
14+
public static final String HP = "hp";
15+
16+
private TranslationKeys()
17+
{
18+
}
19+
}
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
package software.xdev.vaadin.view.cars;
1+
package software.xdev.vaadin.ui.cars;
2+
3+
import static software.xdev.vaadin.ui.TranslationKeys.ELECTRIC;
4+
import static software.xdev.vaadin.ui.TranslationKeys.GASOLINE;
5+
import static software.xdev.vaadin.ui.TranslationKeys.HYBRID;
26

37
import java.util.List;
48

@@ -7,9 +11,6 @@
711

812
public abstract class AbstractCarView extends VerticalLayout
913
{
10-
protected static final String ELECTRIC = "electric";
11-
protected static final String HYBRID = "hybrid";
12-
protected static final String GASOLINE = "gasoline";
1314

1415
protected AbstractCarView()
1516
{
@@ -23,7 +24,7 @@ protected AbstractCarView()
2324
protected static List<Car> getCarsByFuel(final String fuel)
2425
{
2526
return getAllCars().stream()
26-
.filter(c -> fuel.equals(c.fuel()))
27+
.filter(c -> fuel.equals(c.fuelI18N()))
2728
.toList();
2829
}
2930

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package software.xdev.vaadin.ui.cars;
2+
3+
public record Car(String fuelI18N, String name, int hp)
4+
{
5+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package software.xdev.vaadin.ui.cars;
2+
3+
import java.util.List;
4+
5+
import com.vaadin.flow.component.grid.Grid;
6+
7+
import software.xdev.vaadin.ui.TranslationKeys;
8+
9+
10+
public class CarGrid extends Grid<Car>
11+
{
12+
13+
public CarGrid(final List<Car> cars)
14+
{
15+
this.setItems(cars);
16+
this.addColumn(car -> this.getTranslation(car.fuelI18N()))
17+
.setHeader(this.getTranslation(TranslationKeys.FUEL));
18+
this.addColumn(Car::name).setHeader(this.getTranslation(TranslationKeys.MODEL));
19+
this.addColumn(Car::hp).setHeader(this.getTranslation(TranslationKeys.HP));
20+
}
21+
}

vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/view/cars/CarsView.java renamed to vaadin-breadcrumbs-demo/src/main/java/software/xdev/vaadin/ui/cars/CarsView.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
package software.xdev.vaadin.view.cars;
1+
package software.xdev.vaadin.ui.cars;
22

33
import java.util.List;
44

55
import com.vaadin.flow.router.Route;
66

7-
import software.xdev.vaadin.view.MainLayout;
7+
import software.xdev.vaadin.ui.MainLayout;
88

99

1010
@Route(value = "cars", layout = MainLayout.class)
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
package software.xdev.vaadin.view.cars.brand;
1+
package software.xdev.vaadin.ui.cars.brand;
2+
3+
import static software.xdev.vaadin.ui.TranslationKeys.ELECTRIC;
24

35
import java.util.List;
46

57
import com.vaadin.flow.router.Route;
68

7-
import software.xdev.vaadin.view.MainLayout;
8-
import software.xdev.vaadin.view.cars.AbstractCarView;
9-
import software.xdev.vaadin.view.cars.Car;
9+
import software.xdev.vaadin.ui.MainLayout;
10+
import software.xdev.vaadin.ui.cars.AbstractCarView;
11+
import software.xdev.vaadin.ui.cars.Car;
1012

1113

1214
@Route(value = "cars/electric", layout = MainLayout.class)
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
package software.xdev.vaadin.view.cars.brand;
1+
package software.xdev.vaadin.ui.cars.brand;
2+
3+
import static software.xdev.vaadin.ui.TranslationKeys.GASOLINE;
24

35
import java.util.List;
46

57
import com.vaadin.flow.router.Route;
68

7-
import software.xdev.vaadin.view.MainLayout;
8-
import software.xdev.vaadin.view.cars.AbstractCarView;
9-
import software.xdev.vaadin.view.cars.Car;
9+
import software.xdev.vaadin.ui.MainLayout;
10+
import software.xdev.vaadin.ui.cars.AbstractCarView;
11+
import software.xdev.vaadin.ui.cars.Car;
1012

1113

1214
@Route(value = "cars/gasoline", layout = MainLayout.class)
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
package software.xdev.vaadin.view.cars.brand;
1+
package software.xdev.vaadin.ui.cars.brand;
2+
3+
import static software.xdev.vaadin.ui.TranslationKeys.HYBRID;
24

35
import java.util.List;
46

57
import com.vaadin.flow.router.Route;
68

7-
import software.xdev.vaadin.view.MainLayout;
8-
import software.xdev.vaadin.view.cars.AbstractCarView;
9-
import software.xdev.vaadin.view.cars.Car;
9+
import software.xdev.vaadin.ui.MainLayout;
10+
import software.xdev.vaadin.ui.cars.AbstractCarView;
11+
import software.xdev.vaadin.ui.cars.Car;
1012

1113

1214
@Route(value = "cars/hybrid", layout = MainLayout.class)

0 commit comments

Comments
 (0)