blob: 057148559cbee27b3aff30b85b8472e19ed6faf3 [file] [log] [blame]
#include "SkCanvas.h"
#include "SkGraphics.h"
#include "SkWindow.h"
#include "ReaderView.h"
#include "SkGradientShader.h"
class SampleWindow : public SkOSWindow {
ReaderView fTest;
public:
SampleWindow(void* hwnd);
virtual void draw(SkCanvas* canvas);
protected:
virtual void onSizeChange();
private:
void loadView(SkView*);
void updateTitle();
typedef SkOSWindow INHERITED;
};
bool gNeverSetToTrueJustNeedToFoolLinker;
static void init_effects() {
if (gNeverSetToTrueJustNeedToFoolLinker) {
SkPoint p = SkPoint::Make(0,0);
SkPoint q = SkPoint::Make(100,100);
SkPoint pts[] = {p, q};
SkColor colors[] = { SK_ColorRED, SK_ColorGREEN };
SkScalar pos[] = { 0, 1.0};
SkGradientShader::CreateLinear(pts, colors, pos, 2,
SkShader::kMirror_TileMode);
}
}
SampleWindow::SampleWindow(void* hwnd) : INHERITED(hwnd) {
init_effects();
this->setConfig(SkBitmap::kARGB_8888_Config);
this->setVisibleP(true);
this->setClipToBounds(false);
this->loadView(&fTest);
this->setTitle("Reader App");
}
void SampleWindow::draw(SkCanvas* canvas) {
this->INHERITED::draw(canvas);
}
///////////////////////////////////////////////////////////////////////////////
void SampleWindow::loadView(SkView* view) {
view->setVisibleP(true);
view->setClipToBounds(false);
this->attachChildToFront(view)->unref();
view->setSize(this->width(), this->height());
}
void SampleWindow::onSizeChange() {
this->INHERITED::onSizeChange();
SkView::F2BIter iter(this);
SkView* view = iter.next();
view->setSize(this->width(), this->height());
}
///////////////////////////////////////////////////////////////////////////////
SkOSWindow* create_sk_window(void* hwnd) {
return new SampleWindow(hwnd);
}
void application_init() {
// setenv("ANDROID_ROOT", "../../../data", 0);
#ifdef SK_BUILD_FOR_MAC
setenv("ANDROID_ROOT", "/android/device/data", 0);
#endif
SkGraphics::Init();
SkEvent::Init();
}
void application_term() {
SkEvent::Term();
SkGraphics::Term();
}