From 5d81c475c85e8dfa2a0c59246073a09bc98f65e5 Mon Sep 17 00:00:00 2001 From: chfei Date: Tue, 27 Oct 2026 09:12:40 +0800 Subject: [PATCH] feat(skills): add HandyControl WPF component skills --- skills/README.md | 58 +++++ skills/catalog.json | 86 ++++++ .../handycontrol-wpf-animation-path/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 16 ++ skills/handycontrol-wpf-badge/SKILL.md | 43 +++ .../handycontrol-wpf-badge/agents/openai.yaml | 4 + .../handycontrol-wpf-badge/references/api.md | 19 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-blur-window/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 38 +++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-button-group/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 17 ++ .../SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 20 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-card/SKILL.md | 30 +++ .../handycontrol-wpf-card/agents/openai.yaml | 4 + .../handycontrol-wpf-card/references/api.md | 19 ++ .../handycontrol-wpf-card/references/usage.md | 17 ++ skills/handycontrol-wpf-carousel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 36 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-chat-bubble/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 28 ++ .../references/usage.md | 17 ++ .../handycontrol-wpf-check-combo-box/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-circle-panel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 14 + .../references/usage.md | 16 ++ .../SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 16 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-clock/SKILL.md | 38 +++ .../handycontrol-wpf-clock/agents/openai.yaml | 4 + .../handycontrol-wpf-clock/references/api.md | 29 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-color-picker/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 21 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-combo-box/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 17 ++ .../handycontrol-wpf-compare-slider/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 16 ++ .../SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 12 + .../references/usage.md | 15 ++ skills/handycontrol-wpf-cover-flow/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-cover-view/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 44 ++++ .../references/usage.md | 17 ++ .../handycontrol-wpf-dashed-border/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 20 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-date-picker/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 17 ++ .../references/usage.md | 17 ++ .../SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 27 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-dialog/SKILL.md | 44 ++++ .../agents/openai.yaml | 4 + .../handycontrol-wpf-dialog/references/api.md | 23 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-divider/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-drawer/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../handycontrol-wpf-drawer/references/api.md | 21 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-flip-clock/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 15 ++ .../references/usage.md | 17 ++ .../handycontrol-wpf-floating-block/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 27 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-gif-image/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 16 ++ .../references/usage.md | 16 ++ skills/handycontrol-wpf-glow-window/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 39 +++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-goto-top/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 18 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-gravatar/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 14 + .../references/usage.md | 17 ++ skills/handycontrol-wpf-grid/SKILL.md | 41 +++ .../handycontrol-wpf-grid/agents/openai.yaml | 4 + .../handycontrol-wpf-grid/references/api.md | 24 ++ .../handycontrol-wpf-grid/references/usage.md | 16 ++ skills/handycontrol-wpf-growl/SKILL.md | 39 +++ .../handycontrol-wpf-growl/agents/openai.yaml | 4 + .../handycontrol-wpf-growl/references/api.md | 56 ++++ .../references/usage.md | 17 ++ .../handycontrol-wpf-honeycomb-panel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 16 ++ skills/handycontrol-wpf-image-block/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 22 ++ .../references/usage.md | 16 ++ .../handycontrol-wpf-image-browser/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 41 +++ .../references/usage.md | 16 ++ .../handycontrol-wpf-image-selector/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 25 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-image-viewer/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 29 +++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-loading/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 38 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-magnifier/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 30 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-message-box/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 56 ++++ .../references/usage.md | 15 ++ .../handycontrol-wpf-native-styles/SKILL.md | 14 + .../agents/openai.yaml | 4 + .../references/usage.md | 217 +++++++++++++++ skills/handycontrol-wpf-notification/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 17 ++ skills/handycontrol-wpf-notify-icon/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 26 ++ .../references/usage.md | 16 ++ .../handycontrol-wpf-numeric-up-down/SKILL.md | 39 +++ .../agents/openai.yaml | 4 + .../references/api.md | 26 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-outline-text/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 24 ++ .../references/usage.md | 16 ++ skills/handycontrol-wpf-pagination/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 21 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-password-box/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 30 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-pin-box/SKILL.md | 41 +++ .../agents/openai.yaml | 4 + .../references/api.md | 26 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-pop-tip/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 48 ++++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-popup-window/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 24 ++ .../references/usage.md | 15 ++ .../handycontrol-wpf-preview-slider/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 18 ++ .../references/usage.md | 16 ++ .../handycontrol-wpf-progress-button/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 17 ++ .../handycontrol-wpf-property-grid/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 50 ++++ .../references/usage.md | 19 ++ skills/handycontrol-wpf-range-slider/SKILL.md | 51 ++++ .../agents/openai.yaml | 4 + .../references/api.md | 45 ++++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-rate/SKILL.md | 30 +++ .../handycontrol-wpf-rate/agents/openai.yaml | 4 + .../handycontrol-wpf-rate/references/api.md | 50 ++++ .../handycontrol-wpf-rate/references/usage.md | 20 ++ .../handycontrol-wpf-relative-panel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 74 ++++++ .../references/usage.md | 16 ++ .../handycontrol-wpf-running-block/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 20 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-screenshot/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 13 + .../references/usage.md | 17 ++ .../handycontrol-wpf-scroll-viewer/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 20 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-search-bar/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 26 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-shield/SKILL.md | 44 ++++ .../agents/openai.yaml | 4 + .../handycontrol-wpf-shield/references/api.md | 14 + .../references/usage.md | 17 ++ skills/handycontrol-wpf-side-menu/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 40 +++ .../references/usage.md | 20 ++ .../SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 18 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-simple-panel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 11 + .../references/usage.md | 15 ++ skills/handycontrol-wpf-simple-text/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 21 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-split-button/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 16 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-sprite/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../handycontrol-wpf-sprite/references/api.md | 12 + .../references/usage.md | 17 ++ skills/handycontrol-wpf-step-bar/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 19 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-tab-control/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 28 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-tag/SKILL.md | 30 +++ .../handycontrol-wpf-tag/agents/openai.yaml | 4 + skills/handycontrol-wpf-tag/references/api.md | 23 ++ .../handycontrol-wpf-tag/references/usage.md | 17 ++ skills/handycontrol-wpf-text-box/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 12 + .../references/usage.md | 17 ++ skills/handycontrol-wpf-theming/SKILL.md | 14 + .../agents/openai.yaml | 4 + .../references/usage.md | 41 +++ skills/handycontrol-wpf-time-bar/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 21 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-time-picker/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 27 ++ .../references/usage.md | 17 ++ skills/handycontrol-wpf-toggle-block/SKILL.md | 45 ++++ .../agents/openai.yaml | 4 + .../references/api.md | 17 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-transfer/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 30 +++ .../references/usage.md | 19 ++ .../SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 15 ++ .../references/usage.md | 17 ++ .../handycontrol-wpf-waterfall-panel/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 15 ++ .../references/usage.md | 16 ++ skills/handycontrol-wpf-watermark/SKILL.md | 38 +++ .../agents/openai.yaml | 4 + .../references/api.md | 20 ++ .../references/usage.md | 17 ++ .../SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../references/api.md | 17 ++ .../references/usage.md | 15 ++ skills/handycontrol-wpf-window/SKILL.md | 30 +++ .../agents/openai.yaml | 4 + .../handycontrol-wpf-window/references/api.md | 29 +++ .../references/usage.md | 17 ++ skills/handycontrol-wpf/SKILL.md | 18 ++ skills/handycontrol-wpf/agents/openai.yaml | 4 + .../handycontrol-wpf/references/controls.md | 85 ++++++ .../references/getting-started.md | 75 ++++++ skills/handycontrol-wpf/references/styling.md | 41 +++ skills/scripts/build_skills.py | 246 ++++++++++++++++++ skills/scripts/install_skills.py | 53 ++++ skills/scripts/validate_skills.py | 59 +++++ skills/templates/getting-started.md | 75 ++++++ skills/templates/native-styles.md | 19 ++ skills/templates/styling.md | 41 +++ 335 files changed, 7359 insertions(+) create mode 100644 skills/README.md create mode 100644 skills/catalog.json create mode 100644 skills/handycontrol-wpf-animation-path/SKILL.md create mode 100644 skills/handycontrol-wpf-animation-path/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-animation-path/references/api.md create mode 100644 skills/handycontrol-wpf-animation-path/references/usage.md create mode 100644 skills/handycontrol-wpf-badge/SKILL.md create mode 100644 skills/handycontrol-wpf-badge/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-badge/references/api.md create mode 100644 skills/handycontrol-wpf-badge/references/usage.md create mode 100644 skills/handycontrol-wpf-blur-window/SKILL.md create mode 100644 skills/handycontrol-wpf-blur-window/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-blur-window/references/api.md create mode 100644 skills/handycontrol-wpf-blur-window/references/usage.md create mode 100644 skills/handycontrol-wpf-button-group/SKILL.md create mode 100644 skills/handycontrol-wpf-button-group/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-button-group/references/api.md create mode 100644 skills/handycontrol-wpf-button-group/references/usage.md create mode 100644 skills/handycontrol-wpf-calendar-with-clock/SKILL.md create mode 100644 skills/handycontrol-wpf-calendar-with-clock/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-calendar-with-clock/references/api.md create mode 100644 skills/handycontrol-wpf-calendar-with-clock/references/usage.md create mode 100644 skills/handycontrol-wpf-card/SKILL.md create mode 100644 skills/handycontrol-wpf-card/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-card/references/api.md create mode 100644 skills/handycontrol-wpf-card/references/usage.md create mode 100644 skills/handycontrol-wpf-carousel/SKILL.md create mode 100644 skills/handycontrol-wpf-carousel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-carousel/references/api.md create mode 100644 skills/handycontrol-wpf-carousel/references/usage.md create mode 100644 skills/handycontrol-wpf-chat-bubble/SKILL.md create mode 100644 skills/handycontrol-wpf-chat-bubble/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-chat-bubble/references/api.md create mode 100644 skills/handycontrol-wpf-chat-bubble/references/usage.md create mode 100644 skills/handycontrol-wpf-check-combo-box/SKILL.md create mode 100644 skills/handycontrol-wpf-check-combo-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-check-combo-box/references/api.md create mode 100644 skills/handycontrol-wpf-check-combo-box/references/usage.md create mode 100644 skills/handycontrol-wpf-circle-panel/SKILL.md create mode 100644 skills/handycontrol-wpf-circle-panel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-circle-panel/references/api.md create mode 100644 skills/handycontrol-wpf-circle-panel/references/usage.md create mode 100644 skills/handycontrol-wpf-circle-progress-bar/SKILL.md create mode 100644 skills/handycontrol-wpf-circle-progress-bar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-circle-progress-bar/references/api.md create mode 100644 skills/handycontrol-wpf-circle-progress-bar/references/usage.md create mode 100644 skills/handycontrol-wpf-clock/SKILL.md create mode 100644 skills/handycontrol-wpf-clock/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-clock/references/api.md create mode 100644 skills/handycontrol-wpf-clock/references/usage.md create mode 100644 skills/handycontrol-wpf-color-picker/SKILL.md create mode 100644 skills/handycontrol-wpf-color-picker/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-color-picker/references/api.md create mode 100644 skills/handycontrol-wpf-color-picker/references/usage.md create mode 100644 skills/handycontrol-wpf-combo-box/SKILL.md create mode 100644 skills/handycontrol-wpf-combo-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-combo-box/references/api.md create mode 100644 skills/handycontrol-wpf-combo-box/references/usage.md create mode 100644 skills/handycontrol-wpf-compare-slider/SKILL.md create mode 100644 skills/handycontrol-wpf-compare-slider/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-compare-slider/references/api.md create mode 100644 skills/handycontrol-wpf-compare-slider/references/usage.md create mode 100644 skills/handycontrol-wpf-context-menu-button/SKILL.md create mode 100644 skills/handycontrol-wpf-context-menu-button/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-context-menu-button/references/api.md create mode 100644 skills/handycontrol-wpf-context-menu-button/references/usage.md create mode 100644 skills/handycontrol-wpf-cover-flow/SKILL.md create mode 100644 skills/handycontrol-wpf-cover-flow/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-cover-flow/references/api.md create mode 100644 skills/handycontrol-wpf-cover-flow/references/usage.md create mode 100644 skills/handycontrol-wpf-cover-view/SKILL.md create mode 100644 skills/handycontrol-wpf-cover-view/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-cover-view/references/api.md create mode 100644 skills/handycontrol-wpf-cover-view/references/usage.md create mode 100644 skills/handycontrol-wpf-dashed-border/SKILL.md create mode 100644 skills/handycontrol-wpf-dashed-border/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-dashed-border/references/api.md create mode 100644 skills/handycontrol-wpf-dashed-border/references/usage.md create mode 100644 skills/handycontrol-wpf-date-picker/SKILL.md create mode 100644 skills/handycontrol-wpf-date-picker/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-date-picker/references/api.md create mode 100644 skills/handycontrol-wpf-date-picker/references/usage.md create mode 100644 skills/handycontrol-wpf-date-time-picker/SKILL.md create mode 100644 skills/handycontrol-wpf-date-time-picker/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-date-time-picker/references/api.md create mode 100644 skills/handycontrol-wpf-date-time-picker/references/usage.md create mode 100644 skills/handycontrol-wpf-dialog/SKILL.md create mode 100644 skills/handycontrol-wpf-dialog/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-dialog/references/api.md create mode 100644 skills/handycontrol-wpf-dialog/references/usage.md create mode 100644 skills/handycontrol-wpf-divider/SKILL.md create mode 100644 skills/handycontrol-wpf-divider/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-divider/references/api.md create mode 100644 skills/handycontrol-wpf-divider/references/usage.md create mode 100644 skills/handycontrol-wpf-drawer/SKILL.md create mode 100644 skills/handycontrol-wpf-drawer/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-drawer/references/api.md create mode 100644 skills/handycontrol-wpf-drawer/references/usage.md create mode 100644 skills/handycontrol-wpf-flip-clock/SKILL.md create mode 100644 skills/handycontrol-wpf-flip-clock/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-flip-clock/references/api.md create mode 100644 skills/handycontrol-wpf-flip-clock/references/usage.md create mode 100644 skills/handycontrol-wpf-floating-block/SKILL.md create mode 100644 skills/handycontrol-wpf-floating-block/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-floating-block/references/api.md create mode 100644 skills/handycontrol-wpf-floating-block/references/usage.md create mode 100644 skills/handycontrol-wpf-gif-image/SKILL.md create mode 100644 skills/handycontrol-wpf-gif-image/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-gif-image/references/api.md create mode 100644 skills/handycontrol-wpf-gif-image/references/usage.md create mode 100644 skills/handycontrol-wpf-glow-window/SKILL.md create mode 100644 skills/handycontrol-wpf-glow-window/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-glow-window/references/api.md create mode 100644 skills/handycontrol-wpf-glow-window/references/usage.md create mode 100644 skills/handycontrol-wpf-goto-top/SKILL.md create mode 100644 skills/handycontrol-wpf-goto-top/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-goto-top/references/api.md create mode 100644 skills/handycontrol-wpf-goto-top/references/usage.md create mode 100644 skills/handycontrol-wpf-gravatar/SKILL.md create mode 100644 skills/handycontrol-wpf-gravatar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-gravatar/references/api.md create mode 100644 skills/handycontrol-wpf-gravatar/references/usage.md create mode 100644 skills/handycontrol-wpf-grid/SKILL.md create mode 100644 skills/handycontrol-wpf-grid/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-grid/references/api.md create mode 100644 skills/handycontrol-wpf-grid/references/usage.md create mode 100644 skills/handycontrol-wpf-growl/SKILL.md create mode 100644 skills/handycontrol-wpf-growl/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-growl/references/api.md create mode 100644 skills/handycontrol-wpf-growl/references/usage.md create mode 100644 skills/handycontrol-wpf-honeycomb-panel/SKILL.md create mode 100644 skills/handycontrol-wpf-honeycomb-panel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-honeycomb-panel/references/api.md create mode 100644 skills/handycontrol-wpf-honeycomb-panel/references/usage.md create mode 100644 skills/handycontrol-wpf-image-block/SKILL.md create mode 100644 skills/handycontrol-wpf-image-block/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-image-block/references/api.md create mode 100644 skills/handycontrol-wpf-image-block/references/usage.md create mode 100644 skills/handycontrol-wpf-image-browser/SKILL.md create mode 100644 skills/handycontrol-wpf-image-browser/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-image-browser/references/api.md create mode 100644 skills/handycontrol-wpf-image-browser/references/usage.md create mode 100644 skills/handycontrol-wpf-image-selector/SKILL.md create mode 100644 skills/handycontrol-wpf-image-selector/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-image-selector/references/api.md create mode 100644 skills/handycontrol-wpf-image-selector/references/usage.md create mode 100644 skills/handycontrol-wpf-image-viewer/SKILL.md create mode 100644 skills/handycontrol-wpf-image-viewer/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-image-viewer/references/api.md create mode 100644 skills/handycontrol-wpf-image-viewer/references/usage.md create mode 100644 skills/handycontrol-wpf-loading/SKILL.md create mode 100644 skills/handycontrol-wpf-loading/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-loading/references/api.md create mode 100644 skills/handycontrol-wpf-loading/references/usage.md create mode 100644 skills/handycontrol-wpf-magnifier/SKILL.md create mode 100644 skills/handycontrol-wpf-magnifier/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-magnifier/references/api.md create mode 100644 skills/handycontrol-wpf-magnifier/references/usage.md create mode 100644 skills/handycontrol-wpf-message-box/SKILL.md create mode 100644 skills/handycontrol-wpf-message-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-message-box/references/api.md create mode 100644 skills/handycontrol-wpf-message-box/references/usage.md create mode 100644 skills/handycontrol-wpf-native-styles/SKILL.md create mode 100644 skills/handycontrol-wpf-native-styles/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-native-styles/references/usage.md create mode 100644 skills/handycontrol-wpf-notification/SKILL.md create mode 100644 skills/handycontrol-wpf-notification/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-notification/references/api.md create mode 100644 skills/handycontrol-wpf-notification/references/usage.md create mode 100644 skills/handycontrol-wpf-notify-icon/SKILL.md create mode 100644 skills/handycontrol-wpf-notify-icon/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-notify-icon/references/api.md create mode 100644 skills/handycontrol-wpf-notify-icon/references/usage.md create mode 100644 skills/handycontrol-wpf-numeric-up-down/SKILL.md create mode 100644 skills/handycontrol-wpf-numeric-up-down/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-numeric-up-down/references/api.md create mode 100644 skills/handycontrol-wpf-numeric-up-down/references/usage.md create mode 100644 skills/handycontrol-wpf-outline-text/SKILL.md create mode 100644 skills/handycontrol-wpf-outline-text/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-outline-text/references/api.md create mode 100644 skills/handycontrol-wpf-outline-text/references/usage.md create mode 100644 skills/handycontrol-wpf-pagination/SKILL.md create mode 100644 skills/handycontrol-wpf-pagination/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-pagination/references/api.md create mode 100644 skills/handycontrol-wpf-pagination/references/usage.md create mode 100644 skills/handycontrol-wpf-password-box/SKILL.md create mode 100644 skills/handycontrol-wpf-password-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-password-box/references/api.md create mode 100644 skills/handycontrol-wpf-password-box/references/usage.md create mode 100644 skills/handycontrol-wpf-pin-box/SKILL.md create mode 100644 skills/handycontrol-wpf-pin-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-pin-box/references/api.md create mode 100644 skills/handycontrol-wpf-pin-box/references/usage.md create mode 100644 skills/handycontrol-wpf-pop-tip/SKILL.md create mode 100644 skills/handycontrol-wpf-pop-tip/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-pop-tip/references/api.md create mode 100644 skills/handycontrol-wpf-pop-tip/references/usage.md create mode 100644 skills/handycontrol-wpf-popup-window/SKILL.md create mode 100644 skills/handycontrol-wpf-popup-window/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-popup-window/references/api.md create mode 100644 skills/handycontrol-wpf-popup-window/references/usage.md create mode 100644 skills/handycontrol-wpf-preview-slider/SKILL.md create mode 100644 skills/handycontrol-wpf-preview-slider/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-preview-slider/references/api.md create mode 100644 skills/handycontrol-wpf-preview-slider/references/usage.md create mode 100644 skills/handycontrol-wpf-progress-button/SKILL.md create mode 100644 skills/handycontrol-wpf-progress-button/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-progress-button/references/api.md create mode 100644 skills/handycontrol-wpf-progress-button/references/usage.md create mode 100644 skills/handycontrol-wpf-property-grid/SKILL.md create mode 100644 skills/handycontrol-wpf-property-grid/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-property-grid/references/api.md create mode 100644 skills/handycontrol-wpf-property-grid/references/usage.md create mode 100644 skills/handycontrol-wpf-range-slider/SKILL.md create mode 100644 skills/handycontrol-wpf-range-slider/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-range-slider/references/api.md create mode 100644 skills/handycontrol-wpf-range-slider/references/usage.md create mode 100644 skills/handycontrol-wpf-rate/SKILL.md create mode 100644 skills/handycontrol-wpf-rate/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-rate/references/api.md create mode 100644 skills/handycontrol-wpf-rate/references/usage.md create mode 100644 skills/handycontrol-wpf-relative-panel/SKILL.md create mode 100644 skills/handycontrol-wpf-relative-panel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-relative-panel/references/api.md create mode 100644 skills/handycontrol-wpf-relative-panel/references/usage.md create mode 100644 skills/handycontrol-wpf-running-block/SKILL.md create mode 100644 skills/handycontrol-wpf-running-block/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-running-block/references/api.md create mode 100644 skills/handycontrol-wpf-running-block/references/usage.md create mode 100644 skills/handycontrol-wpf-screenshot/SKILL.md create mode 100644 skills/handycontrol-wpf-screenshot/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-screenshot/references/api.md create mode 100644 skills/handycontrol-wpf-screenshot/references/usage.md create mode 100644 skills/handycontrol-wpf-scroll-viewer/SKILL.md create mode 100644 skills/handycontrol-wpf-scroll-viewer/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-scroll-viewer/references/api.md create mode 100644 skills/handycontrol-wpf-scroll-viewer/references/usage.md create mode 100644 skills/handycontrol-wpf-search-bar/SKILL.md create mode 100644 skills/handycontrol-wpf-search-bar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-search-bar/references/api.md create mode 100644 skills/handycontrol-wpf-search-bar/references/usage.md create mode 100644 skills/handycontrol-wpf-shield/SKILL.md create mode 100644 skills/handycontrol-wpf-shield/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-shield/references/api.md create mode 100644 skills/handycontrol-wpf-shield/references/usage.md create mode 100644 skills/handycontrol-wpf-side-menu/SKILL.md create mode 100644 skills/handycontrol-wpf-side-menu/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-side-menu/references/api.md create mode 100644 skills/handycontrol-wpf-side-menu/references/usage.md create mode 100644 skills/handycontrol-wpf-simple-items-control/SKILL.md create mode 100644 skills/handycontrol-wpf-simple-items-control/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-simple-items-control/references/api.md create mode 100644 skills/handycontrol-wpf-simple-items-control/references/usage.md create mode 100644 skills/handycontrol-wpf-simple-panel/SKILL.md create mode 100644 skills/handycontrol-wpf-simple-panel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-simple-panel/references/api.md create mode 100644 skills/handycontrol-wpf-simple-panel/references/usage.md create mode 100644 skills/handycontrol-wpf-simple-text/SKILL.md create mode 100644 skills/handycontrol-wpf-simple-text/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-simple-text/references/api.md create mode 100644 skills/handycontrol-wpf-simple-text/references/usage.md create mode 100644 skills/handycontrol-wpf-split-button/SKILL.md create mode 100644 skills/handycontrol-wpf-split-button/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-split-button/references/api.md create mode 100644 skills/handycontrol-wpf-split-button/references/usage.md create mode 100644 skills/handycontrol-wpf-sprite/SKILL.md create mode 100644 skills/handycontrol-wpf-sprite/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-sprite/references/api.md create mode 100644 skills/handycontrol-wpf-sprite/references/usage.md create mode 100644 skills/handycontrol-wpf-step-bar/SKILL.md create mode 100644 skills/handycontrol-wpf-step-bar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-step-bar/references/api.md create mode 100644 skills/handycontrol-wpf-step-bar/references/usage.md create mode 100644 skills/handycontrol-wpf-tab-control/SKILL.md create mode 100644 skills/handycontrol-wpf-tab-control/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-tab-control/references/api.md create mode 100644 skills/handycontrol-wpf-tab-control/references/usage.md create mode 100644 skills/handycontrol-wpf-tag/SKILL.md create mode 100644 skills/handycontrol-wpf-tag/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-tag/references/api.md create mode 100644 skills/handycontrol-wpf-tag/references/usage.md create mode 100644 skills/handycontrol-wpf-text-box/SKILL.md create mode 100644 skills/handycontrol-wpf-text-box/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-text-box/references/api.md create mode 100644 skills/handycontrol-wpf-text-box/references/usage.md create mode 100644 skills/handycontrol-wpf-theming/SKILL.md create mode 100644 skills/handycontrol-wpf-theming/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-theming/references/usage.md create mode 100644 skills/handycontrol-wpf-time-bar/SKILL.md create mode 100644 skills/handycontrol-wpf-time-bar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-time-bar/references/api.md create mode 100644 skills/handycontrol-wpf-time-bar/references/usage.md create mode 100644 skills/handycontrol-wpf-time-picker/SKILL.md create mode 100644 skills/handycontrol-wpf-time-picker/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-time-picker/references/api.md create mode 100644 skills/handycontrol-wpf-time-picker/references/usage.md create mode 100644 skills/handycontrol-wpf-toggle-block/SKILL.md create mode 100644 skills/handycontrol-wpf-toggle-block/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-toggle-block/references/api.md create mode 100644 skills/handycontrol-wpf-toggle-block/references/usage.md create mode 100644 skills/handycontrol-wpf-transfer/SKILL.md create mode 100644 skills/handycontrol-wpf-transfer/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-transfer/references/api.md create mode 100644 skills/handycontrol-wpf-transfer/references/usage.md create mode 100644 skills/handycontrol-wpf-transitioning-content-control/SKILL.md create mode 100644 skills/handycontrol-wpf-transitioning-content-control/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-transitioning-content-control/references/api.md create mode 100644 skills/handycontrol-wpf-transitioning-content-control/references/usage.md create mode 100644 skills/handycontrol-wpf-waterfall-panel/SKILL.md create mode 100644 skills/handycontrol-wpf-waterfall-panel/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-waterfall-panel/references/api.md create mode 100644 skills/handycontrol-wpf-waterfall-panel/references/usage.md create mode 100644 skills/handycontrol-wpf-watermark/SKILL.md create mode 100644 skills/handycontrol-wpf-watermark/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-watermark/references/api.md create mode 100644 skills/handycontrol-wpf-watermark/references/usage.md create mode 100644 skills/handycontrol-wpf-wave-progress-bar/SKILL.md create mode 100644 skills/handycontrol-wpf-wave-progress-bar/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-wave-progress-bar/references/api.md create mode 100644 skills/handycontrol-wpf-wave-progress-bar/references/usage.md create mode 100644 skills/handycontrol-wpf-window/SKILL.md create mode 100644 skills/handycontrol-wpf-window/agents/openai.yaml create mode 100644 skills/handycontrol-wpf-window/references/api.md create mode 100644 skills/handycontrol-wpf-window/references/usage.md create mode 100644 skills/handycontrol-wpf/SKILL.md create mode 100644 skills/handycontrol-wpf/agents/openai.yaml create mode 100644 skills/handycontrol-wpf/references/controls.md create mode 100644 skills/handycontrol-wpf/references/getting-started.md create mode 100644 skills/handycontrol-wpf/references/styling.md create mode 100644 skills/scripts/build_skills.py create mode 100644 skills/scripts/install_skills.py create mode 100644 skills/scripts/validate_skills.py create mode 100644 skills/templates/getting-started.md create mode 100644 skills/templates/native-styles.md create mode 100644 skills/templates/styling.md diff --git a/skills/README.md b/skills/README.md new file mode 100644 index 00000000..c610c7ee --- /dev/null +++ b/skills/README.md @@ -0,0 +1,58 @@ +# HandyControl WPF 控件 Skills + +参照 [Syncfusion WPF skills](https://github.com/syncfusion/wpf-ui-components-skills/tree/master/skills) 的“每控件一个 Skill + 按需 references”组织方式,为当前 HandyControl WPF 实现编写。内容从本仓库源码、样式和中文文档生成,不包含 Syncfusion 的实现文档或 API。 + +共 82 个 Skill:79 个已文档化的扩展控件主题,以及接入入口、主题、原生控件样式。一个主题可能包含多个类型,例如 grid 对应 Row/Col,loading 对应 LoadingLine/LoadingCircle。范围为 `doc/source/handycontrol/extend_controls/*/index.md`;未文档化类型可通过入口 Skill 按源码查找,不代表已单独提供 Skill。Avalonia 不在此集合内。 + +## 安装与使用 + +需要 Python 3.9 或更新版本,无第三方依赖。在仓库根目录执行: + +```powershell +# 仅安装接入入口(默认安装到 CODEX_HOME/skills 或 ~/.codex/skills) +python skills/scripts/install_skills.py + +# 按需安装控件;每个控件 Skill 自带接入说明与 API 导航,可独立使用 +python skills/scripts/install_skills.py handycontrol-wpf-numeric-up-down handycontrol-wpf-dialog handycontrol-wpf-growl + +# 查看名称 / 安装全部 / 更新已安装文件 +python skills/scripts/install_skills.py --list +python skills/scripts/install_skills.py --all +python skills/scripts/install_skills.py --all --force + +# 项目内安装(Codex 可发现的项目技能目录);其他支持 SKILL.md 的工具也可指定目录 +python skills/scripts/install_skills.py --all --dest .agents/skills +``` + +默认不会覆盖已有同名目录;`--force` 更新文件但不删除额外文件。安装器先检查全部名称与目标目录,再复制;不修改业务工程、NuGet 引用或 AGENTS.md。不要把 skills/scripts 或 templates 当作独立 Skill 安装。 + +安装后在新会话中使用,例如: + +```text +使用 $handycontrol-wpf,在当前 WPF 工程接入 HandyControl。 +使用 $handycontrol-wpf-numeric-up-down,实现数量输入,范围 1–999,双向绑定到 Quantity。 +使用 $handycontrol-wpf-dialog,实现带关闭按钮的页面内对话框。 +使用 $handycontrol-wpf-native-styles,为现有原生 Button、TextBox 应用 HandyControl 样式。 +使用 $handycontrol-wpf-theming,为现有应用添加深色皮肤。 +``` + +## 文件与维护 + +- `handycontrol-wpf/SKILL.md`:统一入口,提供接入流程、排错及控件选择。 +- `handycontrol-wpf/references/controls.md`:完整控件索引。 +- `handycontrol-wpf-*/SKILL.md`:独立控件的使用约束、最小示例(适用时)。 +- `references/api.md`:公共声明和本库基类导航;仅声明摘录,不可当作完整代码编译。 +- `references/usage.md`:对应文档、样式和 Demo 源码位置。 +- `agents/openai.yaml`:Codex 展示信息和调用提示,保留默认自动发现行为。 +- `templates/`:维护接入、主题、原生样式手写内容的源文件。 +- `scripts/build_skills.py`:生成全部 Skill;特殊用法和精选示例在 NOTES / EXAMPLES 中维护。 +- `scripts/validate_skills.py`:检查生成一致性、元信息、引用、源码路径和 XML 语法。 + +```powershell +python skills/scripts/build_skills.py +python skills/scripts/validate_skills.py +``` + +修改生成文件后应同步修改模板或生成器,再重新生成。`build_skills.py --check` 只检查,不写入。删除控件主题时,生成器会报告遗留 Skill,由维护者确认后手动移除,避免自动删除用户内容。 + +API 摘录不含所有继承成员、访问器或条件编译分支。在线源码链接指向 master,使用旧 NuGet 包时需核对对应版本;优先以实际引用版本源码为准。XML 语法校验不等于 WPF 编译、资源解析或运行时验证。可继续使用“代码审查”检查使用这些 Skill 后生成的具体实现。 diff --git a/skills/catalog.json b/skills/catalog.json new file mode 100644 index 00000000..c9ae59c2 --- /dev/null +++ b/skills/catalog.json @@ -0,0 +1,86 @@ +{ + "skills": [ + "handycontrol-wpf", + "handycontrol-wpf-animation-path", + "handycontrol-wpf-badge", + "handycontrol-wpf-blur-window", + "handycontrol-wpf-button-group", + "handycontrol-wpf-calendar-with-clock", + "handycontrol-wpf-card", + "handycontrol-wpf-carousel", + "handycontrol-wpf-chat-bubble", + "handycontrol-wpf-check-combo-box", + "handycontrol-wpf-circle-panel", + "handycontrol-wpf-circle-progress-bar", + "handycontrol-wpf-clock", + "handycontrol-wpf-color-picker", + "handycontrol-wpf-combo-box", + "handycontrol-wpf-compare-slider", + "handycontrol-wpf-context-menu-button", + "handycontrol-wpf-cover-flow", + "handycontrol-wpf-cover-view", + "handycontrol-wpf-dashed-border", + "handycontrol-wpf-date-picker", + "handycontrol-wpf-date-time-picker", + "handycontrol-wpf-dialog", + "handycontrol-wpf-divider", + "handycontrol-wpf-drawer", + "handycontrol-wpf-flip-clock", + "handycontrol-wpf-floating-block", + "handycontrol-wpf-gif-image", + "handycontrol-wpf-glow-window", + "handycontrol-wpf-goto-top", + "handycontrol-wpf-gravatar", + "handycontrol-wpf-grid", + "handycontrol-wpf-growl", + "handycontrol-wpf-honeycomb-panel", + "handycontrol-wpf-image-block", + "handycontrol-wpf-image-browser", + "handycontrol-wpf-image-selector", + "handycontrol-wpf-image-viewer", + "handycontrol-wpf-loading", + "handycontrol-wpf-magnifier", + "handycontrol-wpf-message-box", + "handycontrol-wpf-native-styles", + "handycontrol-wpf-notification", + "handycontrol-wpf-notify-icon", + "handycontrol-wpf-numeric-up-down", + "handycontrol-wpf-outline-text", + "handycontrol-wpf-pagination", + "handycontrol-wpf-password-box", + "handycontrol-wpf-pin-box", + "handycontrol-wpf-pop-tip", + "handycontrol-wpf-popup-window", + "handycontrol-wpf-preview-slider", + "handycontrol-wpf-progress-button", + "handycontrol-wpf-property-grid", + "handycontrol-wpf-range-slider", + "handycontrol-wpf-rate", + "handycontrol-wpf-relative-panel", + "handycontrol-wpf-running-block", + "handycontrol-wpf-screenshot", + "handycontrol-wpf-scroll-viewer", + "handycontrol-wpf-search-bar", + "handycontrol-wpf-shield", + "handycontrol-wpf-side-menu", + "handycontrol-wpf-simple-items-control", + "handycontrol-wpf-simple-panel", + "handycontrol-wpf-simple-text", + "handycontrol-wpf-split-button", + "handycontrol-wpf-sprite", + "handycontrol-wpf-step-bar", + "handycontrol-wpf-tab-control", + "handycontrol-wpf-tag", + "handycontrol-wpf-text-box", + "handycontrol-wpf-theming", + "handycontrol-wpf-time-bar", + "handycontrol-wpf-time-picker", + "handycontrol-wpf-toggle-block", + "handycontrol-wpf-transfer", + "handycontrol-wpf-transitioning-content-control", + "handycontrol-wpf-waterfall-panel", + "handycontrol-wpf-watermark", + "handycontrol-wpf-wave-progress-bar", + "handycontrol-wpf-window" + ] +} diff --git a/skills/handycontrol-wpf-animation-path/SKILL.md b/skills/handycontrol-wpf-animation-path/SKILL.md new file mode 100644 index 00000000..b3a37a0b --- /dev/null +++ b/skills/handycontrol-wpf-animation-path/SKILL.md @@ -0,0 +1,30 @@ +--- +name: handycontrol-wpf-animation-path +description: "实现、配置或排查 HandyControl WPF 的 AnimationPath 动画路径(AnimationPath)。适用于该扩展控件的 XAML、绑定、事件和模板;不用于 Avalonia 或其他厂商控件。" +--- + +# HandyControl WPF AnimationPath 动画路径 + +实现或排查 **AnimationPath 动画路径**。相关类型:`AnimationPath`。 + +## 接入 + +程序集/NuGet 为 `HandyControl`,XAML 命名空间为 +`xmlns:hc="https://handyorg.github.io/handycontrol"`,C# 控件命名空间为 `HandyControl.Controls`。 +在 `App.xaml` 合并 `pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml`, +然后合并 `pack://application:,,,/HandyControl;component/Themes/Theme.xaml`。 +已有主题配置时先检查,避免重复合并。版本和目标框架以使用方项目为准。 + +## 实现 + +先读 [API 声明与继承关系](references/api.md),再按需求查看 +[文档、样式与示例导航](references/usage.md)。源码路径相对于 HandyControl 仓库根目录; +在本仓库优先读本地文件,安装到其他项目后使用内附声明与链接,遇到版本差异检查实际引用版本的源码。 +不要将 Demo 的 langs、ex:Lang、ViewModelLocator 或示例资源直接复制进使用方项目。 + +结合基类确认内容模型、绑定属性和事件参数;集合控件区分 ItemsSource、选中项与 ItemTemplate;修改样式前核对资源键和模板部件。 + +用目标项目现有的 MVVM 方式绑定;需要回写时明确 TwoWay 和更新时机, +不要假定所有依赖属性默认双向绑定。原生 WPF 与 HandyControl 同名类型使用命名空间区分。 +交付时运行目标框架的构建,并在窗口加载后检查模板、绑定错误、空值和相关输入边界; +无法运行 WPF 时明确说明尚未验证 UI 行为。 diff --git a/skills/handycontrol-wpf-animation-path/agents/openai.yaml b/skills/handycontrol-wpf-animation-path/agents/openai.yaml new file mode 100644 index 00000000..7657a288 --- /dev/null +++ b/skills/handycontrol-wpf-animation-path/agents/openai.yaml @@ -0,0 +1,4 @@ +interface: + display_name: "HandyControl WPF AnimationPath 动画路径" + short_description: "Implement HandyControl WPF controls from verified source guidance" + default_prompt: "Use $handycontrol-wpf-animation-path to implement the requested HandyControl WPF UI." diff --git a/skills/handycontrol-wpf-animation-path/references/api.md b/skills/handycontrol-wpf-animation-path/references/api.md new file mode 100644 index 00000000..282de9ea --- /dev/null +++ b/skills/handycontrol-wpf-animation-path/references/api.md @@ -0,0 +1,19 @@ +# 源码 API 导航 + +下面是当前工作区的声明摘录,不是完整 C# 文件,不包含全部继承成员、访问器和条件编译条件。属性是否可写、依赖属性默认值、枚举成员和目标框架限制,需打开对应源码核对。 + +## AnimationPath + +源码:[src/Shared/HandyControl_Shared/Controls/Other/AnimationPath.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControl_Shared/Controls/Other/AnimationPath.cs) + +```text +public class AnimationPath : Shape +public Geometry Data +public double PathLength +public Duration Duration +public bool IsPlaying +public RepeatBehavior RepeatBehavior +public FillBehavior FillBehavior +public AnimationPath() +public event EventHandler Completed +``` diff --git a/skills/handycontrol-wpf-animation-path/references/usage.md b/skills/handycontrol-wpf-animation-path/references/usage.md new file mode 100644 index 00000000..2bea82c8 --- /dev/null +++ b/skills/handycontrol-wpf-animation-path/references/usage.md @@ -0,0 +1,16 @@ +# AnimationPath 动画路径 使用导航 + +文档:[doc/source/handycontrol/extend_controls/animationPath/index.md](https://github.com/HandyOrg/HandyControl/blob/master/doc/source/handycontrol/extend_controls/animationPath/index.md) + +在线文档:[控件说明](https://handyorg.github.io/handycontrol/extend_controls/animationPath/) + +按任务阅读原文中的章节:属性、Data 数据、PathLength 路径长度、Duration 时间间隔、IsPlaying 是否正在播放动画、RepeatBehavior 重复行为、继承自Shape常用属性、相关事件、Completed。 + +## 当前源码 + +- [src/Shared/HandyControl_Shared/Controls/Other/AnimationPath.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControl_Shared/Controls/Other/AnimationPath.cs) + +## 样式及官方示例 + +- [src/Shared/HandyControlDemo_Shared/UserControl/Controls/AnimationPathDemo.xaml](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControlDemo_Shared/UserControl/Controls/AnimationPathDemo.xaml) +- [src/Shared/HandyControlDemo_Shared/UserControl/Controls/AnimationPathDemo.xaml.cs](https://github.com/HandyOrg/HandyControl/blob/master/src/Shared/HandyControlDemo_Shared/UserControl/Controls/AnimationPathDemo.xaml.cs) diff --git a/skills/handycontrol-wpf-badge/SKILL.md b/skills/handycontrol-wpf-badge/SKILL.md new file mode 100644 index 00000000..e9d90bde --- /dev/null +++ b/skills/handycontrol-wpf-badge/SKILL.md @@ -0,0 +1,43 @@ +--- +name: handycontrol-wpf-badge +description: "实现、配置或排查 HandyControl WPF 的 Badge 标记(Badge)。适用于该扩展控件的 XAML、绑定、事件和模板;不用于 Avalonia 或其他厂商控件。" +--- + +# HandyControl WPF Badge 标记 + +实现或排查 **Badge 标记**。相关类型:`Badge`。 + +## 接入 + +程序集/NuGet 为 `HandyControl`,XAML 命名空间为 +`xmlns:hc="https://handyorg.github.io/handycontrol"`,C# 控件命名空间为 `HandyControl.Controls`。 +在 `App.xaml` 合并 `pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml`, +然后合并 `pack://application:,,,/HandyControl;component/Themes/Theme.xaml`。 +已有主题配置时先检查,避免重复合并。版本和目标框架以使用方项目为准。 + +## 实现 + +先读 [API 声明与继承关系](references/api.md),再按需求查看 +[文档、样式与示例导航](references/usage.md)。源码路径相对于 HandyControl 仓库根目录; +在本仓库优先读本地文件,安装到其他项目后使用内附声明与链接,遇到版本差异检查实际引用版本的源码。 +不要将 Demo 的 langs、ex:Lang、ViewModelLocator 或示例资源直接复制进使用方项目。 + +结合基类确认内容模型、绑定属性和事件参数;集合控件区分 ItemsSource、选中项与 ItemTemplate;修改样式前核对资源键和模板部件。 + +用目标项目现有的 MVVM 方式绑定;需要回写时明确 TwoWay 和更新时机, +不要假定所有依赖属性默认双向绑定。原生 WPF 与 HandyControl 同名类型使用命名空间区分。 +交付时运行目标框架的构建,并在窗口加载后检查模板、绑定错误、空值和相关输入边界; +无法运行 WPF 时明确说明尚未验证 UI 行为。 + +## 最小片段 + +依赖上面的应用资源配置;Binding 路径由使用方 ViewModel 提供。 + +```xml + +