Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 334240 - [Enhancement] [Table Editor] Papyrus shall support Tabular Editors
Summary: [Enhancement] [Table Editor] Papyrus shall support Tabular Editors
Status: RESOLVED FIXED
Alias: None
Product: Papyrus
Classification: Modeling
Component: Table (show other bugs)
Version: 0.7.0   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 0.8.0   Edit
Assignee: Vincent Lorenzo CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 330179 (view as bug list)
Depends on: 335020 336917 337089 337097 337808 337809 339650 339651 340131 340132 343430 344461 344465 344472 344602 344825 344840 344921 344925 344940 345237 345418 345665 345698 345730 346656 346733 346988 352852 356614 357071 357086 357100 357346 357383 358264 371616
Blocks: 357447
  Show dependency tree
 
Reported: 2011-01-13 06:01 EST by Vincent Lorenzo CLA
Modified: 2014-03-13 13:14 EDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vincent Lorenzo CLA 2011-01-13 06:01:30 EST
Papyrus shall support Tabular Editor
Requirements : 
The tabular editors should provider editors : 
Developer can plug in their own cell editor for any EType
User can edit cells containing a EString value
User can edit cells containing a EInt value
User can edit cells containing a EFloat value
User can edit cells containing a EBoolean value
User can undo and redo the edition of the table content
User can edit cells containing a EFloatObject value
User can edit cells containing a multi-lines EString value
User can select a value for UNary references from a single-selectable object chooser
User can edit cells containing a EChar value
User can edit cells containing a EDouble value
User can edit cells containing a EBigDecimal value
User can edit cells containing a EBigInteger value
User can edit cells containing a ELong value
User can edit cells containing a EShort value
User can edit cells containing a EBooleanObject value
User can edit cells containing a ECharacterObject value
User can edit cells containing a EDoubleObject value
User can edit cells containing a EIntegerObject value
User can edit cells containing a ELongObject value
User can edit cells containing a EShortObject value
User can select values for Nary references from a multi-selectable object chooser
User can edit cells containing a EByte value
User can edit cells containing a EByteObject value
User can edit cells containing a EEnum value
User can select a value for UNary references from a single-selectable dropdown list
User can add/remove/modify/reorder values in cells containing arrays
User can drag&drop instances of EObject to cells associated to a EReference
Developer can associate a query to the editor declaration

The user can select a set of elements in any browser and view them in the table view (pop-up action on EObject). 
The user can select a set of elements in a Papyrus diagram and view them in the table view. 
When a table already exists the user can add and remove lines (model elements) from the table.
A user can execute a query and view the result in the table view. 
To be able to create or delete model element from the table view
A developer can declare a type of table (for example "the table of requirement satisfaction")
If a table type is defined the developer can force the cell editors (to avoid conflicts)
User can drag&drop instances of EObject to cells associated to a EReference 
User can add/remove/modify/reorder values in cells containing arrays
The user can copy a part of the EMF Facet table and paste it in Excel and in notepad
Add the headers in a copy of a part of the table
Eclass: To be able to apply the following customization properties to the cells : background color, instanceIcon, isBold, isItalic, isStruckthrough, isUnderlined, label, textColor, textFontName.
Facet: To be able to apply the following customization properties to the cells : overlayIcon, stickerIcon

The user must be able to save which EMF objects are contained in a table
The user can add a column and fill it with the result of a query
The user must be able to save the query column (dep)
The user can hide columns
A user documentation must explain how to use the features implemented in this project
A developer documentation must explain how to use the API developed in the project
The user must be able to save the column order
The user must be able to save the hidden columns (dep)
The user must be able to save the column sizes
Comment 1 Vincent Lorenzo CLA 2011-02-09 05:13:38 EST
*** Bug 330179 has been marked as a duplicate of this bug. ***
Comment 2 Vincent Lorenzo CLA 2011-02-11 06:53:17 EST
R3953, 3954, 4000, 4001, 4002, 4003 : 
	First commits for the table editors. 2 plugins : 
	oep.table.common which provides a default table editor
	ope.table.menu which provides some menus for the tables
	
These plugins are commited on /trunk/incoming
Currently, they can't compile, because they need EMF-Facet plugins which are not yet available on SVN
Comment 3 Vincent Lorenzo CLA 2011-02-22 09:47:20 EST
From R4059 to R4074 : 
	I share the following projects : 
		oep.table.common : common plugin for tables
		oep.table.default : a default table
		oep.sysml.table.requirement
		oep.sysml.table.allocation
		oep.table.modelexplorer : allow to display tables in the model explorer + provides handlers for tables : rename, duplicate, ...
		
	minor changes in oep.modelexplorer
Comment 4 Vincent Lorenzo CLA 2011-02-23 09:08:04 EST
In R4079 : 

Remove the action "Edit description" from the plugin oep.table.menu

Add the possibility to edit the description in the table.
Add the display of the context
Comment 5 Vincent Lorenzo CLA 2011-02-24 08:31:49 EST
In R4081-4082 : 
	Externalize Strings
	Add Header
	Add the popup menu for the Table
	
Modified plugins : 
	- oep.table.common
	- oep.table.menu
	- oep.table.modelexplorer
	- oep.table.default
Comment 6 Vincent Lorenzo CLA 2011-03-10 09:02:24 EST
In R4242 : share the project org.eclipse.papyrus.nattable.instance
This project provides the model for the Papyrus Table. It adds the following feature to the EMF-Facet nattable : name, type, isSynchronized.
We don't use the Object parameter of the EMF-Facet table for 2 reasons : 
	1/ this object can not be serialized in XML (it's an Object and not an EObject in the Model)
	2/ The EMF-Facet team said me that this object should be transient.
We don't use a generalization between Papyrus Table and EMF-Facet table, because their .impl package is not visible.
Comment 7 Vincent Lorenzo CLA 2011-03-10 09:06:43 EST
In R4246 : 

Update the following plugins, using the new model for table (provided by oep.nattable.instance) : 
   oep.modelexplorer
   oep.sysml.table.allocation
   oep.sysml.table.requirement
   oep.table.common
   oep.table.default
   oep.table.modelexplorer
Comment 8 Vincent Lorenzo CLA 2011-03-11 03:43:48 EST
In R4283 : 
Remove unused dependencies
Change the table model representation for the filling queries.
Add the methods to manage filling queries and synchronization during the creation of the table. (the synchronization itself is not yet done)
Comment 9 Vincent Lorenzo CLA 2011-05-03 05:04:21 EDT
In R4611 : remove the action AddInCurrentTable from oep.table.menu. Now, we have a drap&drop, so this action is obsolete.
Comment 10 Vincent Lorenzo CLA 2011-05-03 05:53:56 EDT
In R4613 : add a method to hide default columns during the table creation ([Label], [Metaclass], /eContainer)
Comment 11 Vincent Lorenzo CLA 2011-05-11 09:09:34 EDT
In R4653 : 
	- remove the dependencies on PapyrusObservableValue
Comment 12 Vincent Lorenzo CLA 2011-05-16 10:34:09 EDT
In R4699 : change the path for the icon table.png (problem with the path using the icon defined in the emf-facet plugin.)
Comment 13 Camille Letavernier CLA 2014-03-13 13:14:48 EDT
All subtasks have either been closed as invalid, or implemented in the new table version.

I close this task