aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--demos/CMakeLists.txt5
-rw-r--r--demos/dev/sdl-ime.c38
-rw-r--r--demos/dev/xcb-cairo.cpp (renamed from demos/xcb/cairo-start/main.cpp)1
-rw-r--r--demos/dev/xcb.cpp (renamed from demos/xcb/start/main.cpp)0
-rw-r--r--demos/xcb/CMakeLists.txt7
-rw-r--r--demos/xcb/cairo-start/CMakeLists.txt4
-rw-r--r--demos/xcb/start/CMakeLists.txt2
7 files changed, 38 insertions, 19 deletions
diff --git a/demos/CMakeLists.txt b/demos/CMakeLists.txt
index 516ef7ae..a14eee80 100644
--- a/demos/CMakeLists.txt
+++ b/demos/CMakeLists.txt
@@ -6,10 +6,5 @@ add_subdirectory(platform)
add_subdirectory(main)
add_subdirectory(ScrollView)
add_subdirectory(InputMethod)
-
-if(UNIX AND NOT APPLE AND NOT EMSCRIPTEN)
- add_subdirectory(xcb)
-endif()
-
add_subdirectory(parse)
diff --git a/demos/dev/sdl-ime.c b/demos/dev/sdl-ime.c
new file mode 100644
index 00000000..0eccfa00
--- /dev/null
+++ b/demos/dev/sdl-ime.c
@@ -0,0 +1,38 @@
+#include <SDL3/SDL_events.h>
+#include <SDL3/SDL_init.h>
+#include <SDL3/SDL_timer.h>
+#include <SDL3/SDL_video.h>
+#include <stdio.h>
+
+int main() {
+ SDL_Window* window;
+ SDL_Rect area = {0, 0, 1, 1};
+ int cursor = 0;
+
+ window = SDL_CreateWindow("", 400, 200, 0);
+ SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS);
+ SDL_SetTextInputArea(window, &area, cursor);
+ SDL_StartTextInput(window);
+
+ SDL_Event e;
+ while (SDL_WaitEvent(&e)) {
+ if (e.type == SDL_EVENT_TEXT_INPUT) {
+ printf("%s: %s\n", "SDL_EVENT_TEXT_INPUT", e.text.text);
+ fflush(stdout);
+ } else if (e.type == SDL_EVENT_TEXT_EDITING) {
+ printf("%s: %s, start %i, length %i\n", "SDL_EVENT_TEXT_EDITING",
+ e.edit.text, e.edit.start, e.edit.length);
+ fflush(stdout);
+ } else if (e.type == SDL_EVENT_TEXT_EDITING_CANDIDATES) {
+ printf("%s: num_candidates %i, selected %i\n",
+ "SDL_EVENT_TEXT_EDITING_CANDIDATES",
+ e.edit_candidates.num_candidates,
+ e.edit_candidates.selected_candidate);
+ fflush(stdout);
+ } else if (e.type == SDL_EVENT_QUIT) {
+ break;
+ }
+ }
+
+ SDL_Quit();
+}
diff --git a/demos/xcb/cairo-start/main.cpp b/demos/dev/xcb-cairo.cpp
index 331f90d7..97461cd8 100644
--- a/demos/xcb/cairo-start/main.cpp
+++ b/demos/dev/xcb-cairo.cpp
@@ -3,7 +3,6 @@
#include <unistd.h>
#include <xcb/xcb.h>
#include <cstdlib>
-#include <iostream>
int main() {
int screen_num;
diff --git a/demos/xcb/start/main.cpp b/demos/dev/xcb.cpp
index c4e3761e..c4e3761e 100644
--- a/demos/xcb/start/main.cpp
+++ b/demos/dev/xcb.cpp
diff --git a/demos/xcb/CMakeLists.txt b/demos/xcb/CMakeLists.txt
deleted file mode 100644
index 97292467..00000000
--- a/demos/xcb/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-find_library(LIBRARY_XCB xcb REQUIRED)
-
-add_library(demo-xcb-base INTERFACE)
-target_link_libraries(demo-xcb-base INTERFACE ${LIBRARY_XCB})
-
-add_subdirectory(start)
-add_subdirectory(cairo-start)
diff --git a/demos/xcb/cairo-start/CMakeLists.txt b/demos/xcb/cairo-start/CMakeLists.txt
deleted file mode 100644
index d08f2c96..00000000
--- a/demos/xcb/cairo-start/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-find_library(LIBRARY_CAIRO cairo REQUIRED)
-
-add_executable(demo-xcb-cairo-start main.cpp)
-target_link_libraries(demo-xcb-cairo-start PUBLIC demo-xcb-base ${LIBRARY_CAIRO})
diff --git a/demos/xcb/start/CMakeLists.txt b/demos/xcb/start/CMakeLists.txt
deleted file mode 100644
index 25e37be9..00000000
--- a/demos/xcb/start/CMakeLists.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-add_executable(demo-xcb-start main.cpp)
-target_link_libraries(demo-xcb-start PUBLIC demo-xcb-base)