Les composants visuels sont implémentés dans FRE pour Windows.
Component Synchronizer est un composant spécial qui met en œuvre une réaction automatique à différents événements au niveau des composants visuels. Vous pouvez connecter plusieurs composants visuels à Component Synchronizer, et ils fonctionneront comme une seule application.
Vous n’avez pas besoin d’utiliser Component Synchronizer avec l’ensemble des composants connectés, mais uniquement avec ceux que vous utilisez. Par exemple, vous pouvez y connecter seulement Image Viewer via la propriété ImageViewer et Text Editor via la propriété TextEditor.
Component Synchronizer ne possède pas d’interface utilisateur. Il n’utilise aucune fonctionnalité interne des composants visuels ; il utilise uniquement l’API COM des composants. Component Synchronizer fonctionne comme décrit ci-dessous.
Lorsqu’un composant est connecté au Synchronizer via l’API
Si un composant ou un objet est connecté à Component Synchronizer via :
Dans ce cas, la propriété IComponentSynchronizer::ImageViewer est définie sur l’objet ImageViewer spécifié, puis les opérations suivantes sont effectuées :| La propriété | Est définie sur |
|---|
| True |
| |
| La page du IComponentSynchronizer::Document ayant pour indice IComponentSynchronizer::PageIndex |
Dans ce cas, la propriété IComponentSynchronizer::ZoomViewer est définie sur l’objet ZoomViewer spécifié, puis les opérations suivantes sont effectuées :| La propriété | Est définie sur |
|---|
| True |
| |
| La page du IComponentSynchronizer::Document ayant pour indice IComponentSynchronizer::PageIndex |
Dans ce cas, la propriété IComponentSynchronizer::TextEditor est définie sur l’objet TextEditor spécifié, puis les opérations suivantes sont effectuées :| La propriété | Est définie sur |
|---|
| La valeur de la propriété SynthesisParamsForDocument de l’objet IComponentSynchronizer::DocumentProcessingParams |
| La page du IComponentSynchronizer::Document ayant pour indice IComponentSynchronizer::PageIndex |
Dans ce cas, la propriété IComponentSynchronizer::TextValidator est définie sur l’objet TextValidator spécifié, puis les opérations suivantes sont effectuées :| La propriété | Est définie sur |
|---|
| La valeur de la propriété SynthesisParamsForDocument de l’objet IComponentSynchronizer::DocumentProcessingParams |
| |
Dans ce cas, la propriété IComponentSynchronizer::DocumentViewer est définie sur l’objet DocumentViewer spécifié, puis les opérations suivantes sont exécutées :| Propriété | Valeur définie |
|---|
| |
| |
| La page de IComponentSynchronizer::Document ayant pour indice IComponentSynchronizer::PageIndex |
Dans ce cas, la propriété IComponentSynchronizer::Document est définie sur l’objet FRDocument spécifié, puis les opérations suivantes sont exécutées :| Propriété | Valeur définie |
|---|
| La première page de IComponentSynchronizer::Document |
| 0 |
| |
Propriété DocumentProcessingParams
Dans ce cas, la propriété IComponentSynchronizer::DocumentProcessingParams est définie sur l’objet DocumentProcessingParams spécifié, puis les opérations suivantes sont exécutées :| Propriété | Valeur définie |
|---|
| |
| La valeur de la propriété SynthesisParamsForDocument de l’objet IComponentSynchronizer::DocumentProcessingParams |
Dans ce cas, la propriété IComponentSynchronizer::PageIndex est définie sur la valeur spécifiée, puis les opérations suivantes sont exécutées :| Propriété | Valeur définie |
|---|
| La page de IComponentSynchronizer::Document ayant pour indice IComponentSynchronizer::PageIndex |
Lorsqu’un composant connecté déclenche un événement
Événements de l’Image Viewer connecté :
Événement OnMouseButtonUp
Événement OnBlockSelectionChanged
Si Image Viewer déclenche l’événement OnBlockSelectionChanged, Component Synchronizer effectue les opérations suivantes :
Événement OnTableSelected
Si Image Viewer déclenche l’événement OnTableCellsSelected, Component Synchronizer appelle la méthode ShowBlock de l’objet TextEditor avec l’indice du bloc sélectionné et celui de la cellule en bas à droite.
Événement OnAfterDblClick
Si Image Viewer déclenche l’événement OnAfterDblClick, Component Synchronizer effectue les opérations suivantes :
Événement OnActivePageChanged
Si Image Viewer déclenche l’événement OnActivePageChanged et que les propriétés ZoomViewer, TextEditor et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies, la propriété FRPage ou ActivePage du composant correspondant est définie sur la page spécifiée du document.
Événement OnOptionsChanged
Si Image Viewer déclenche l’événement OnOptionsChanged et que les propriétés ZoomViewer, DocumentViewer, TextEditor et TextValidator de l’objet ComponentSynchronizer ont déjà été définies, la méthode UpdateOptions des objets ZoomViewer, DocumentViewer, TextEditor et TextValidator est appelée.
Événements du Zoom Viewer connecté :
Événement OnVisibleDocumentAreaChanged
Événement OnBlockSelectionChanged
Si Zoom Viewer déclenche l’événement OnBlockSelectionChanged, Component Synchronizer effectue les opérations suivantes :
Événement OnTableCellsSelected
Si Zoom Viewer déclenche l’événement OnTableCellsSelected, Component Synchronizer appelle la méthode ShowBlock de l’objet TextEditor avec l’indice du bloc sélectionné et celui de la cellule en bas à droite.
Événement OnAfterDblClick
Si Zoom Viewer génère l’événement OnAfterDblClick, Component Synchronizer effectue les opérations suivantes :
Événement OnActivePageChanged
Si Zoom Viewer génère l’événement OnActivePageChanged et que les propriétés ImageViewer, TextEditor et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies, la propriété FRPage ou ActivePage du composant correspondant est définie sur la page spécifiée du document.
Événement OnOptionsChanged
Si Zoom Viewer génère l’événement OnOptionsChanged et que les propriétés ImageViewer, DocumentViewer, TextEditor et TextValidator de l’objet ComponentSynchronizer ont déjà été définies, la méthode UpdateOptions des objets ImageViewer, DocumentViewer, TextEditor et TextValidator est appelée.
Événements du Document Viewer connecté :
Événement OnActivePageChanged
Si Document Viewer génère l’événement OnActivePageChanged et que les propriétés ImageViewer, ZoomViewer et TextEditor de l’objet ComponentSynchronizer ont déjà été définies, la propriété FRPage du composant correspondant est définie sur la page spécifiée du document.
Événement OnDocumentChanged
Si Document Viewer génère l’événement OnDocumentChanged et que les propriétés ImageViewer, ZoomViewer, TextEditor et TextValidator de l’objet ComponentSynchronizer ont déjà été définies :
- la propriété FRDocument de l’objet TextValidator est définie sur le nouveau document
- la propriété FRPage des objets ImageViewer, ZoomViewer et TextEditor, ainsi que la propriété ActivePage de l’objet DocumentViewer, sont définies sur la première page du nouveau document
Événement OnOptionsChanged
Si Document Viewer génère l’événement OnOptionsChanged et que les propriétés ImageViewer, ZoomViewer, TextEditor et TextValidator de l’objet ComponentSynchronizer ont déjà été définies, la méthode UpdateOptions des objets ImageViewer, ZoomViewer, TextEditor et TextValidator est appelée.
Événements du Text Editor connecté :
Événement OnEditorBlockChanged
Si Text Editor génère l’événement OnEditorBlockChanged, Component Synchronizer effectue les opérations suivantes :
- Si les propriétés ImageViewer et ZoomViewer de l’objet ComponentSynchronizer ont déjà été définies, la méthode SetSelectedBlocksIndices des objets ImageViewer et ZoomViewer est appelée pour le bloc spécifié.
- S’il s’agit d’un bloc de tableau, la méthode SetSelectedCells des objets ImageViewer et ZoomViewer est appelée pour la cellule sélectionnée.
- Ensuite, la méthode ShowDocumentArea des objets ImageViewer et ZoomViewer est appelée.
Événement OnSymbolSelected
Si Text Editor génère l’événement OnSymbolSelected, Component Synchronizer effectue les opérations suivantes :
Événement OnActivePageChanged
Si Text Editor génère l’événement OnActivePageChanged et que les propriétés ImageViewer, ZoomViewer et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies, la propriété FRPage ou ActivePage du composant correspondant est définie sur la page spécifiée du document.
Événement OnOptionsChanged
Si Text Editor génère l’événement OnOptionsChanged et que les propriétés ImageViewer, ZoomViewer, DocumentViewer et TextValidator de l’objet ComponentSynchronizer ont déjà été définies, la méthode UpdateOptions des objets ImageViewer, ZoomViewer, DocumentViewer et TextValidator est appelée.
Événements du Text Validator connecté :
Événement OnSymbolSelected
Si Text Validator génère l’événement OnSymbolSelected, Component Synchronizer effectue les opérations suivantes :
Événement OnSelectionChanged
Si Text Validator génère l’événement OnSelectionChanged, Component Synchronizer effectue les opérations suivantes :
Événement OnActivePageChanged
Si Text Validator génère l’événement OnActivePageChanged et que les propriétés ImageViewer, ZoomViewer, TextEditor et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies, la propriété FRPage ou ActivePage du composant correspondant est définie sur la page spécifiée du document.
Événement OnDocumentChanged
Si Text Validator génère l’événement OnDocumentChanged et que les propriétés ImageViewer, ZoomViewer, TextEditor et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies :
- la propriété FRDocument de l’objet DocumentViewer est définie sur le nouveau document
- les propriétés FRPage des objets ImageViewer, ZoomViewer et TextEditor, ainsi que la propriété ActivePage de l’objet DocumentViewer, sont définies sur la première page du nouveau document.
Événement OnOptionsChanged
Si Text Validator génère l’événement OnOptionsChanged et que les propriétés ImageViewer, ZoomViewer, TextEditor et DocumentViewer de l’objet ComponentSynchronizer ont déjà été définies, la méthode UpdateOptions des objets ImageViewer, ZoomViewer, TextEditor et DocumentViewer est appelée.
Voir aussi
ComponentSynchronizer