UNPKG

@teachinglab/omd

Version:

omd

48 lines (41 loc) 1.73 kB
// Core canvas system export { omdCanvas } from './core/omdCanvas.js'; export { CanvasConfig as canvasConfig } from './core/canvasConfig.js'; // Event handling export { EventManager } from './events/eventManager.js'; export { pointerEventHandler } from './events/pointerEventHandler.js'; // Tool system export { ToolManager } from './tools/toolManager.js'; export { Tool } from './tools/tool.js'; export { PencilTool } from './tools/PencilTool.js'; export { EraserTool } from './tools/EraserTool.js'; export { SelectTool } from './tools/SelectTool.js'; // UI components export { Toolbar } from './ui/toolbar.js'; export { Cursor } from './ui/cursor.js'; // Drawing objects export { Stroke } from './drawing/stroke.js'; export { segment } from './drawing/segment.js'; // Utilities export { BoundingBox } from './utils/boundingBox.js'; export { mathUtils } from './utils/mathUtils.js'; // Focus frame system export { FocusFrameManager } from './features/focusFrameManager.js'; /** * Quick setup function for common use cases * @param {HTMLElement|string} container - Container element or selector * @param {Object} options - Configuration options * @returns {omdCanvas} Configured canvas instance */ export function createCanvas(container, options = {}) { const canvas = new omdCanvas(container, options); return canvas; } /** * Create multiple canvas instances for comparison or multi-canvas apps * @param {Array} configs - Array of {container, options} objects * @returns {Array<omdCanvas>} Array of canvas instances */ export function createMultipleCanvases(configs) { return configs.map(config => createCanvas(config.container, config.options)); }