Appearance
Book #
This example shows how to create an app that functions as a book, where the user can go to different pages in the book by clicking on buttons.
js
class MyApp extends App{
createStartPage(){
return new CoverPage()
}
}
js
class CoverPage extends Page{
createGui(){
return Rows(
Space,
Text(`A short story`),
Text(`by Peppe L-G`),
Space,
Space,
Cols(
Space,
Button(`Start Reading`).page(Page1),
Space,
),
Space,
)
}
}
js
class Page1 extends Page{
createGui(){
return Rows(
Text(`Once upon a time, there was a programmer who thought creating small useful apps was too hard for beginners.`),
Space,
Cols(
Button(`←`).page(CoverPage),
Space,
Text(`1`),
Space,
Button(`→`).page(Page2),
),
)
}
}
js
class Page2 extends Page{
createGui(){
return Rows(
Text(`So he created his own little framework that made it easier. He called that framework for Bagatell.`),
Space,
Cols(
Button(`←`).page(Page1),
Space,
Text(`2`),
Space,
Button(`→`).page(Page3),
),
)
}
}
js
class Page3 extends Page{
createGui(){
return Rows(
Text(`And that's the framework you are using now!`),
Space,
Cols(
Button(`←`).page(Page2),
Space,
Text(`3`),
Space,
Button(`→`).page(Page4),
),
)
}
}
js
class Page4 extends Page{
createGui(){
return Rows(
Space,
Text(`The end!`),
Space,
Space,
Cols(
Space,
Button(`Read again`).page(CoverPage),
Space,
),
Space,
)
}
}