Revert r3463, because it broke Linux.
Review URL: https://codereview.appspot.com/5876056
git-svn-id: http://skia.googlecode.com/svn/trunk@3465 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/unix_test_app/DrawBlueSample.cpp b/unix_test_app/DrawBlueSample.cpp
new file mode 100644
index 0000000..83e6fd5
--- /dev/null
+++ b/unix_test_app/DrawBlueSample.cpp
@@ -0,0 +1,34 @@
+
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+#include "SampleCode.h"
+#include "SkCanvas.h"
+#include "SkColor.h"
+#include "SkEvent.h"
+#include "SkView.h"
+
+class DrawBlue : public SkView {
+
+public:
+ DrawBlue() {}
+protected:
+ virtual void onDraw(SkCanvas* canvas) {
+ canvas->drawColor(SK_ColorBLUE);
+ }
+ virtual bool onQuery(SkEvent* evt) {
+ if (SampleCode::TitleQ(*evt)) {
+ SampleCode::TitleR(evt, "DrawBlue");
+ return true;
+ }
+ return this->INHERITED::onQuery(evt);
+ }
+private:
+ typedef SkView INHERITED;
+};
+
+static SkView* MyFactory() { return new DrawBlue; }
+static SkViewRegister reg(MyFactory);
diff --git a/unix_test_app/main.cpp b/unix_test_app/main.cpp
new file mode 100644
index 0000000..108e9ac
--- /dev/null
+++ b/unix_test_app/main.cpp
@@ -0,0 +1,62 @@
+
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+#include "X11/Xlib.h"
+#include "X11/keysym.h"
+
+#include "SkApplication.h"
+#include "SkEvent.h"
+#include "SkWindow.h"
+#include "SkTypes.h"
+
+#include <signal.h>
+#include <sys/time.h>
+
+SkOSWindow* gWindow;
+
+static void catch_alarm(int sig)
+{
+ SkEvent::ServiceQueueTimer();
+}
+
+int main(int argc, char** argv){
+ signal(SIGALRM, catch_alarm);
+
+ gWindow = create_sk_window(NULL, argc, argv);
+
+ // drain any events that occurred before gWindow was assigned.
+ while (SkEvent::ProcessEvent());
+
+ // Start normal Skia sequence
+ application_init();
+
+ gWindow->loop();
+
+ delete gWindow;
+ application_term();
+ return 0;
+}
+
+// SkEvent handlers
+
+void SkEvent::SignalNonEmptyQueue()
+{
+ if (gWindow) {
+ gWindow->post_linuxevent();
+ }
+}
+
+void SkEvent::SignalQueueTimer(SkMSec delay)
+{
+ itimerval newTimer;
+ newTimer.it_interval.tv_sec = 0;
+ newTimer.it_interval.tv_usec = 0;
+ newTimer.it_value.tv_sec = 0;
+ newTimer.it_value.tv_usec = delay * 1000;
+
+ setitimer(ITIMER_REAL, &newTimer, NULL);
+}
diff --git a/unix_test_app/makefile b/unix_test_app/makefile
new file mode 100644
index 0000000..7b28203
--- /dev/null
+++ b/unix_test_app/makefile
@@ -0,0 +1,48 @@
+# Build the unix test app
+
+C_INCLUDES := -I../include/core \
+ -I../include/config \
+ -I../include/effects \
+ -I../include/images \
+ -I../include/utils \
+ -I../include/views \
+ -I../include/xml \
+ -I../include/gpu \
+ -I../gpu/include \
+ -I../include/utils/unix \
+ -I../samplecode \
+ -I../src/core
+
+VPATH = libs:../src/ports:../samplecode:../src/core:../src/utils/unix
+
+#generate debugging info
+CFLAGS = -g
+
+SRC_LIST := main.cpp SkOSWindow_Unix.cpp SkXMLParser_empty.cpp SkDebug.cpp ../gpu/src/unix/GrGLDefaultInterface_unix.cpp
+
+#views files
+include ../src/views/views_files.mk
+SRC_LIST += $(addprefix ../src/views/, $(SOURCE))
+
+#xml
+include ../src/xml/xml_files.mk
+SRC_LIST += $(addprefix ../src/xml/, $(SOURCE))
+
+#include the samples
+include ../samplecode/samplecode_files.mk
+SRC_LIST += $(addprefix ../samplecode/, $(SOURCE))
+
+
+out/output: $(SRC_LIST) out/keysym2ucs.o ../out/libskia.a -lX11 -lpthread -lz -lfreetype -lGL -lpng
+ g++ $(C_INCLUDES) $(CFLAGS) $^ -o $@
+
+out/keysym2ucs.o: ../src/utils/unix/keysym2ucs.c
+ @mkdir -p $(dir $@)
+ @gcc -c $(C_INCLUDES) $(CFLAGS) $^ -o $@
+
+../out/libskia.a:
+ @$(MAKE) -C ../ SKIA_SAMPLES_FOR_X=true
+
+clean:
+ rm -rf ../out # Copied from ../Makefile
+ rm -rf out