#include #include #include #include "pandora.hpp" #include #include #include #include #include #include using namespace net::lliurex::lgi; using namespace net::lliurex::lgi::toolkit; using namespace std; bool quit_request=false; int mode = LGI_DISPATCH_EVENTS_FULL; int flow = 1; class SandBox : public Layer { public: pandora::Label * lbl; SandBox() : Layer("SandBox") { Add(new pandora::Button("Hello World",100,100)); lbl=new pandora::Label("LliureX 13.06 LGI test area",30.0,5.0); Add(lbl); Add(new pandora::CheckBox(false,420,40)); } }; int main(int argc,char * argv[]) { int last_time; int current_time; int fps=0; int fps_count=0; int delta; float y=0.0f; float dy=1.0f; fbWindow * window; cairo_t * cairo; cairo_pattern_t *pat; SandBox * sandbox; window = new fbWindow(800,600,"/dev/fb0",0); sandbox = new SandBox(); window->AddLayer(sandbox); last_time=window->GetTicks(); cout<<"* main loop"<DispatchEvents(mode); if(flow==1) { y+=dy; if(y<0.0f)dy=1.0f; if(y>window->GetHeight())dy=-1.0f; } cairo = window->cairo; cairo_set_source_rgb(cairo,0.1,0.37,0.80); cairo_paint(cairo); cairo_set_source_rgb(cairo,0.5,0.5,0.9); cairo_arc(cairo,320,y,20.0,0.0,2.0*3.1416); cairo_fill(cairo); stringstream ss; ss<<"Fps: "<lbl->text=ss.str(); window->Flip(); fps++; current_time=window->GetTicks(); delta= current_time-last_time; if(delta>=1000) { //cout<GetTicks(); } } cout<<"Bye"<Destroy(); delete window; return 0; }