Task #1471
RCP: improve the editors linkage system and the views/editors synchronization
Status: | New | Start date: | 09/30/2015 | ||
---|---|---|---|---|---|
Priority: | Normal | Due date: | |||
Assignee: | - | % Done: | 57% |
||
Category: | Development | Spent time: | - | ||
Target version: | TXM X.X |
Description
The current Concordance/Edition and other editor communications is hard coded which makes it not really easy to add links.
This ticket is a proposal to implement a global interfaces system for editors communications and updating data/state of an editor from another one.
First ideas:
- define an interface ILinkableEditor
- store a list of linked editors in the source editors (e.g.: getLinkedEditor(int i), setLinkedEditor(ILinkableEditor linkedEditor))
- define and implement a method as doSomething(Object param) which specifies something to do and use it on some events.
- define and implement a method as updateLinkedEditorsFromEvent(Object event) which loops through all the linked editors and call doSomething(Event event) or other parameter type
- when closing an editor, remove this editor from all the linked editors lists
e.g. for linking Progression and Concordance editors:
- on double-click on a Progression point, test if there is already a linked editor with result object of type "Concordance" (see getSource() of TXM CustomizableEditor class). If no, create a Concordance editor and add the Progression editor as linked editor to it. Also add the Concordance editor as linked editor to the Progression editor.
Loop through all the linked editors and call doSomething()
- on double-click on a Concordance row, call in the event listener all the doSomething(Object param) methods of all the linked editors
This system should permit, for a same kind of editor, an easy use of this editor without links, with one link and with multiple links
NOTES:
- the method setLinkedEditor(ILinkableEditor linkedEditor)) may be have one more parameter to pass and store some custom data, e.g.: setLinkedEditor(ILinkableEditor linkedEditor), Object param)
Subtasks
History
#1 Updated by Sebastien Jacquot about 8 years ago
- Subject changed from RCP: improve the editors linkage system to RCP: improve the editors linkage system and the views/editors synchronization
#2 Updated by Sebastien Jacquot about 8 years ago
- Description updated (diff)
#3 Updated by Serge Heiden about 8 years ago
- Description updated (diff)
#4 Updated by Sebastien Jacquot about 8 years ago
- Description updated (diff)
#5 Updated by Matthieu Decorde about 8 years ago
- Target version changed from TXM 0.7.8 to TXM 0.8.0a (split/restructuration)
#6 Updated by Sebastien Jacquot about 8 years ago
[SH note]
Hypertext Infrastructure¶
For a general hypertext infrastructure, we must link to related portal and desktop tickets:- Portal: Feature #667 (Resolved): GWT: x.x, HTML pages, hyperlinks (external, internal, command)
- and his descendants
- Desktop: Bug #229 (In Progress): RCP: 0.7.2, improve Index to Concordance link
- etc.
Link Transitivity¶
If a command result may link to several commands, a particular link may also herit some command parameters from the link it come from: for example a double-clic on a concordance line can have a different behavior depending on the link we come from to build the concordance.
#7 Updated by Sebastien Jacquot about 5 years ago
- Target version changed from TXM 0.8.0a (split/restructuration) to TXM 0.8.0
#8 Updated by Sebastien Jacquot over 4 years ago
- Target version changed from TXM 0.8.0 to TXM 0.8.2
#9 Updated by Sebastien Jacquot over 3 years ago
- Target version changed from TXM 0.8.2 to TXM X.X