openpencil/packages/docs/ru/programmable/sdk/api/composables/use-selection-capabilities.md
Danila Poyarkov 14325280d9 docs(i18n): translate all missing pages to 6 languages
- 78 SDK pages per language (components, composables, advanced API,
  guides, architecture, getting-started)
- vector-edit.md user guide page (5 languages)
- Update stale ru/programmable/cli/inspecting.md
- Fix YAML frontmatter quoting for colons in descriptions

474 files, 0 missing pages across de/es/fr/it/pl/ru.
VitePress build verified — all 546 SDK pages render.
2026-04-22 18:35:22 +03:00

1.7 KiB

title description
useSelectionCapabilities Реактивные булевы значения для UI и действий, зависящих от выделения.

useSelectionCapabilities

useSelectionCapabilities() предоставляет реактивные булевы значения, указывающие, разрешены ли сейчас распространённые действия редактора.

Используйте при создании:

  • меню
  • тулбаров
  • горячих клавиш
  • кнопок действий
  • контекстных панелей

Использование

import { useSelectionCapabilities } from '@open-pencil/vue'

const caps = useSelectionCapabilities()

Базовый пример

<script setup lang="ts">
import { useSelectionCapabilities } from '@open-pencil/vue'

const { canDelete, canDuplicate, canCreateComponent } = useSelectionCapabilities()
</script>

<template>
  <div class="flex gap-2">
    <button :disabled="!canDuplicate">Дублировать</button>
    <button :disabled="!canDelete">Удалить</button>
    <button :disabled="!canCreateComponent">Создать компонент</button>
  </div>
</template>

Практические примеры

Управление доступностью пунктов меню

const { canMoveToPage, canGoToMainComponent } = useSelectionCapabilities()

Включать команды зума только когда это имеет смысл

const { canZoomToSelection } = useSelectionCapabilities()

Связанные API