← 목록
기타 2026-05-19 2KB 읽기 2분

웹코드위젯.한선 — UI 확장 위젯 라이브러리

개요

웹코드.한선 기반 고수준 UI 컴포넌트 라이브러리. 네이티브(framebuffer)/웹(DOM) 동시 지원.

구현 내용

섹션 1: 프로그레스바 + 스피너 + 슬라이더

  • 웹코드_프로그레스(x, y, w, h, 퍼센트) — 수평 프로그레스바 (배경: 토큰_테두리, 채움: 토큰_골드)
  • 웹코드_프로그레스원형(x, y, 크기, 퍼센트) — 원형 프로그레스 (웹: SVG arc dasharray, 네이티브: 원환 근사)
  • 웹코드_스피너(x, y, 크기) — 로딩 스피너 (웹: CSS keyframe animation, 네이티브: 정적 골드점)
  • 웹코드_슬라이더(x, y, w, 최소, 최대, 현재) — 수평 슬라이더 (트랙 h=4px + 핸들 16px)

섹션 2: 아코디언 + 트리뷰

  • 웹코드_아코디언(x, y, w) — 아코디언 컨테이너
  • 웹코드_아코디언항목(x, y, w, 제목, 내용, 열림) — ▶/▼ 토글 + 내용 표시/숨김
  • 웹코드_트리(x, y, w) — 트리 컨테이너
  • 웹코드_트리노드(x, y, w, 라벨, 깊이, 열림, 자식있음) — 들여쓰기 20px/깊이, ▶/▼ 토글

섹션 3: 툴팁 + 팝오버

  • 웹코드_툴팁(x, y, 내용) — 어두운 배경 검정 툴팁 (y 위치 자동 반전)
  • 웹코드_팝오버(x, y, w, h, 제목, 내용) — 카드형 팝오버 (그림자 + 골드 상단 + 화살표)

유틸리티

  • 웹코드위젯_CSS초기화() — 스피너 keyframe CSS 주입 (웹 모드 초기화 시 1회)

컴파일 결과

  • 7287 토큰 파싱, 29380 큐브 생성
  • TOAU 바이너리: 803KB (/tmp/test_widget.toau)
  • 경고/오류 없음

관련 파일

  • 소스: /Users/ef/CrownyOS/crownyc/libs/웹코드위젯.한선
  • 의존: /Users/ef/CrownyOS/crownyc/libs/웹코드.한선

잔여 이슈

  • 원형 프로그레스 네이티브 모드는 SVG arc 불가로 원환 근사 사용 (정확도 낮음)
  • 슬라이더 핸들 드래그 이벤트는 DOM이벤트 연결 필요 (현재 정적 렌더만)
  • 트리 노드 세로 연결선은 네이티브 모드에서 미구현