xuk 0576c0e3a1 i18n: add Simplified Chinese translation for imgui_demo + Apple Metal example
- imgui_demo.cpp: wrap all user-visible string literals with Tr(); add
  Language menu in DemoWindowMenuBar (guarded by IMGUI_DEMO_ENABLE_I18N);
  guard extern g_need_font_rebuild with IMGUI_DEMO_ENABLE_I18N + __APPLE__
- examples/example_apple_metal/main.mm: CJK font loading via RebuildFonts()
  (always loads 2-glyph stub in English, full range in zh_CN); Language menu
  triggers font atlas rebuild before next NewFrame(); wrap demo window strings
  with Tr(); fix v1.92 ImplicitRefSize assertion by passing explicit SizePixels
  to AddFontDefault()
- examples/example_apple_metal/Makefile: add i18n sources and
  -DIMGUI_DEMO_ENABLE_I18N flag
2026-06-08 11:22:24 +08:00

24 lines
854 B
Makefile

# Makefile for example_apple_metal, for macOS only (**not iOS**)
CXX = clang++
EXE = example_apple_metal
IMGUI_DIR = ../../
SOURCES = main.mm
SOURCES += $(IMGUI_DIR)/imgui.cpp $(IMGUI_DIR)/imgui_demo.cpp $(IMGUI_DIR)/imgui_draw.cpp $(IMGUI_DIR)/imgui_tables.cpp $(IMGUI_DIR)/imgui_widgets.cpp
SOURCES += $(IMGUI_DIR)/backends/imgui_impl_osx.mm $(IMGUI_DIR)/backends/imgui_impl_metal.mm
SOURCES += $(IMGUI_DIR)/i18n/imgui_i18n.cpp
SOURCES += $(IMGUI_DIR)/i18n/locale/zh_CN.cpp
CXXFLAGS = -std=c++11 -ObjC++ -fobjc-arc -Wall -Wextra -I$(IMGUI_DIR) -I$(IMGUI_DIR)/backends -I$(IMGUI_DIR)/i18n -DIMGUI_DEMO_ENABLE_I18N
FRAMEWORKS = -framework AppKit -framework Metal -framework MetalKit -framework QuartzCore -framework GameController
all: $(EXE)
$(EXE): $(SOURCES)
$(CXX) $(CXXFLAGS) $^ $(FRAMEWORKS) -o $@
run: all
./$(EXE)
clean:
rm -f $(EXE) *.o