diff --git a/markitect/clean_document_manager.py b/markitect/clean_document_manager.py index d9b71ad9..975bde44 100644 --- a/markitect/clean_document_manager.py +++ b/markitect/clean_document_manager.py @@ -1177,268 +1177,412 @@ class CleanDocumentManager: console.error("Scroll indicators failed to initialize:", error); }} - // Step 4: Initialize DocumentNavigator (lazy loading for all modes) - try {{ - const documentNavigator = {{ - navElement: null, - isExpanded: false, - isDragging: false, - dragOffset: {{ x: 0, y: 0 }}, - originalPosition: {{ top: '80px', left: '20px' }}, + // Step 4: Define abstract Control class for UI controls + const Control = {{ + // Abstract control properties + element: null, + isExpanded: false, + isDragging: false, + dragOffset: {{ x: 0, y: 0 }}, + originalPosition: {{ top: '80px', left: '20px' }}, - createControl: function() {{ - console.log("📋 Creating DocumentNavigator control for view mode..."); + // Configuration properties (to be overridden by subclasses) + config: {{ + icon: '?', + title: 'Control', + className: 'control', + defaultContent: 'Template only', + ariaLabel: 'Control', + position: 'w' // Default compass position: west (middle-left) + }}, - this.navElement = document.createElement('nav'); - this.navElement.className = 'document-navigator'; - this.navElement.innerHTML = ` - -