useAppearance
useAppearance() is the appearance-focused control composable for property panels.
It exposes selection-derived UI state for:
- visibility
- opacity
- corner radius
- corner smoothing as a normalized percentage
- independent corner radii, including imported unequal-corner state
- blend mode
Usage
ts
import { useAppearance } from '@open-pencil/vue'
const appearance = useAppearance()Basic example
ts
const {
visibilityState,
opacityPercent,
cornerRadiusValue,
cornerSmoothingPercent,
showIndependentCorners,
toggleVisibility,
toggleIndependentCorners,
} = useAppearance()Practical examples
Toggle selection visibility
ts
appearance.toggleVisibility()Edit per-corner radii
ts
appearance.updateCornerProp('topLeftRadius', 12)
appearance.commitCornerProp('topLeftRadius', 12, 8)Edit corner smoothing
ts
appearance.updateCornerProp('cornerSmoothing', 0.75)
appearance.commitCornerProp('cornerSmoothing', 0.75, 0)Render the per-corner editor from showIndependentCorners. It accounts for both the explicit scene-node flag and imported nodes whose corner values differ. Multi-selection toggles and commits are grouped into one undo entry.