Files
Upsilon/app/escher_demo.cpp
Romain Goyet cc6dcbb9f2 Add an Escher demo
Replace app.o by escher_demo.o in the Makefile to give it a run

Change-Id: Id5e81220db149b2f43f55be81559ecd252a01991
2016-04-12 18:48:28 +02:00

38 lines
721 B
C++

extern "C" {
#include <assert.h>
#include <escher.h>
#include <stdlib.h>
#include <ion.h>
}
class MyTextView : public View {
using View::View;
public:
void drawRect(KDRect frame) override;
};
void MyTextView::drawRect(KDRect frame) {
KDPoint zero = {0, 0};
KDDrawString("Hello, world!", zero, 0);
}
void ion_app() {
KDRect wholeScreen = {0, 0, 100, 100};
KDColor a = 0x55;
View * window = new SolidColorView(wholeScreen, a);
KDRect textRect = {0, 0, 50, 50};
MyTextView * textView = new MyTextView(textRect);
window->addSubview(textView);
window->draw();
while (1) {
ion_sleep();
textRect.y = textRect.y+1;
textView->setFrame(textRect);
}
delete textView;
delete window;
}