Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 178883 - Provide ability to export/import individual task content via File->Export/Import menu
Summary: Provide ability to export/import individual task content via File->Export/Imp...
Status: CLOSED MOVED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P5 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 178908 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-03-22 16:01 EDT by Dmitri Maximovich CLA
Modified: 2010-03-25 16:06 EDT (History)
3 users (show)

See Also:


Attachments
mylar/context/zip (1.29 KB, application/octet-stream)
2007-03-26 21:36 EDT, Mik Kersten CLA
no flags Details
Export wizard (240.73 KB, patch)
2007-06-24 14:15 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
mylar/context/zip (49.34 KB, application/octet-stream)
2007-06-24 14:15 EDT, Jevgeni Holodkov CLA
no flags Details
Working patch (44.86 KB, patch)
2007-06-24 14:38 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
mylar/context/zip (79.43 KB, application/octet-stream)
2007-06-24 14:38 EDT, Jevgeni Holodkov CLA
no flags Details
Context export/import from file or context menu wizards (78.77 KB, patch)
2007-06-26 12:44 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
mylar/context/zip (125.07 KB, application/octet-stream)
2007-06-26 12:45 EDT, Jevgeni Holodkov CLA
no flags Details
Added hasChildren method (1.93 KB, patch)
2007-07-07 06:37 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
Export Context Wizards (34.88 KB, patch)
2007-07-07 06:38 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
Import Context Wizard (28.85 KB, patch)
2007-07-07 06:38 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
Task Context Export test (5.41 KB, patch)
2007-07-07 06:39 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
Task Context Export/Import from Context Menu (7.12 KB, patch)
2007-07-07 06:39 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
Task Context exporting/importing from task list menu (16.50 KB, patch)
2007-07-24 11:39 EDT, Jevgeni Holodkov CLA
no flags Details | Diff
mylyn/context/zip (131.82 KB, application/octet-stream)
2007-07-24 11:39 EDT, Jevgeni Holodkov CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitri Maximovich CLA 2007-03-22 16:01:33 EDT
It would be convenient if user could export (end import) task content for specific task from standard Eclipse File->Export (Import) dialogs.
Current method of using drag-and-drop from task list to file system and back is not immediately obvious for most of the users.
Comment 1 Eugene Kuleshov CLA 2007-03-22 16:27:27 EDT
I'd like to suggest to extend Attach/Retrieve context actions to allow to save/read context to and from file system.
Comment 2 Mik Kersten CLA 2007-03-22 19:14:47 EDT
This sounds good to me.  Drag-and-drop can be a pain and as you indicate is not obvious.  What I've also been thinking about is something like a "Send to" button that could have the following in it's sub-menu:
* Task Repository: e.g. to convert a local task to a repository task, prompts for repository, can attach context if available
* File: creates a zip file with the context, and a proxy for the task and repository

Then we could the Retrieve Context wizard page to allow such a zip to be selected.  But this would probably also need to work via Import/Export, since some users would expect it to be there.  Thoughts?
Comment 3 Mik Kersten CLA 2007-03-22 19:16:29 EDT
*** Bug 178908 has been marked as a duplicate of this bug. ***
Comment 4 Eugene Kuleshov CLA 2007-03-22 20:17:28 EDT
By the way, Mik. I've been talking with Dmitri about this and he suggested to allow to save those contexts into the workspace. My initial though was that we have cross-project contexts, so it won't be really god idea. 

However on a second thought it would work really nice for small single-project setups and for multiple projects user can actually dedicate special project for saving contexts. Then, if needed, those contexts can be committed to the version control  outside of Mylar (at least for now). So, users would have an alternative way to share those contexts. It might work even nicer if we can point Mylar's folder where those contexts are stored to the same project folder...

So, when you'll be sketching this UI, I suggest design it similar to first wizard page of the attachment wizard, except that "clipboard" choice would be "repository". 
Comment 5 Dmitri Maximovich CLA 2007-03-22 21:52:14 EDT
I agree with Eugene on this. Quite often my tasks are confined within one project and having ability to (optionally) store context into the project workspace would be great. This way it could be commited into version control as any other file.
Comment 6 Jörg Thönnes CLA 2007-03-23 18:35:25 EDT
 (In reply to comment #0)
> Current method of using drag-and-drop from task list to file system and back is
> not immediately obvious for most of the users.

Cool! I did not believe that drag'n'drop works for KDE, but it really works. So for the moment, I have a suitable workaround.

But an explicit "Save / Load..." dialog would be helpful, though. Please go ahead :-)
Comment 7 Mik Kersten CLA 2007-03-23 21:36:00 EDT
Patch welcome on this in case anyone wants it soon, but I'd like to see it in 2.0 so adding to our overloaded schedule :)
Comment 8 Jörg Thönnes CLA 2007-03-24 06:23:56 EDT
 (In reply to comment #7)
> Patch welcome on this in case anyone wants it soon, but I'd like to see it in
> 2.0 so adding to our overloaded schedule :)

Mik, I already had your Mylar-E_3_2 working set in my workspace and started tracking your source
changes. But I have no experience in plugin development, so some starting points would be helpful.

Would you mind to attach a task context for the E_3_2 branch?

Thanks, Jörg
Comment 9 Mik Kersten CLA 2007-03-26 21:36:54 EDT
This a good source of materials for getting started with plug-in development: http://www.eclipse.org/articles/

To get started, I suggest taking a look at the TaskDataImportWizard, but you'll probably want to make a separate wizard for this.  For the first pass it should be able to do an import of a task context that was dragged out, and use the same underlying facility for moving the context out (that's current in TaskListDragSourceListener, but should be abstracted out so that both the wizard and the dragging can call it).
Comment 10 Mik Kersten CLA 2007-03-26 21:36:57 EDT
Created attachment 62044 [details]
mylar/context/zip
Comment 11 Jörg Thönnes CLA 2007-03-28 04:00:50 EDT
 (In reply to comment #9)
> This a good source of materials for getting started with plug-in development:
> http://www.eclipse.org/articles/
> To get started, I suggest taking a look at the TaskDataImportWizard, [...]

OK. Thanks, Mik.

I will look at this as soon as I have time. Currently I am very busy and lost half a day due
to 179494: Complete Eclipse lookup due to XML file in task context

Comment 12 Mik Kersten CLA 2007-05-14 12:18:42 EDT
Jvgeni: this is a good first task for your summer of code work.
Comment 13 Jevgeni Holodkov CLA 2007-06-24 14:15:42 EDT
Created attachment 72288 [details]
Export wizard

Attached an intermediate patch - context export functionality (File export menu & context popup menu)
Comment 14 Jevgeni Holodkov CLA 2007-06-24 14:15:46 EDT
Created attachment 72289 [details]
mylar/context/zip
Comment 15 Jevgeni Holodkov CLA 2007-06-24 14:38:38 EDT
Created attachment 72290 [details]
Working patch

Now this patch should work. Difference with the first one - now context popup menu should contain Export Context action.
Comment 16 Jevgeni Holodkov CLA 2007-06-24 14:38:41 EDT
Created attachment 72291 [details]
mylar/context/zip
Comment 17 Mik Kersten CLA 2007-06-25 01:04:43 EDT
Jvgeni: I will try to review next week, but at this point in the cycle could get delayed if anything comes up with Europa since we won't be able to incorporate this until after Europa.  In the meantime, could you please synch up and create a new patch?  Source cleanup has made this one go stale.
Comment 18 Jevgeni Holodkov CLA 2007-06-25 09:18:56 EDT
(In reply to comment #17)
> Jvgeni: I will try to review next week, but at this point in the cycle could
> get delayed if anything comes up with Europa since we won't be able to
> incorporate this until after Europa.  In the meantime, could you please synch
> up and create a new patch?  Source cleanup has made this one go stale.

Yes, after I'm finished with "importing", I'll synch and then submit a new patch.
Comment 19 Jevgeni Holodkov CLA 2007-06-26 12:44:59 EDT
Created attachment 72490 [details]
Context export/import from file or context menu wizards

This patch does not contain .refactorings files, tell me, if you prefer a patch with them, I'll create another one.
Comment 20 Jevgeni Holodkov CLA 2007-06-26 12:45:02 EDT
Created attachment 72491 [details]
mylar/context/zip
Comment 21 Jevgeni Holodkov CLA 2007-07-03 13:25:43 EDT
Just checked the latest patch, it merged with latest changes without conflicts.
Comment 22 Mik Kersten CLA 2007-07-06 01:12:21 EDT
Jevgeni: fyi, I've done a very quick review and this looks promising.  The only problem is that, as mentioned previously, we need to review patches in smaller chunks.  There are practical reasons for this (they are easier to review) but there is also a legal reason (I cannot apply patches over a certain size ~250 lines of code) without kicking off an IP review process.  Could you please break this up into 2-3 patches that separate the functionality (e.g. wizard, tests, etc.)?
Comment 23 Jevgeni Holodkov CLA 2007-07-07 06:37:29 EDT
Created attachment 73243 [details]
Added hasChildren method
Comment 24 Jevgeni Holodkov CLA 2007-07-07 06:38:06 EDT
Created attachment 73244 [details]
Export Context Wizards
Comment 25 Jevgeni Holodkov CLA 2007-07-07 06:38:28 EDT
Created attachment 73245 [details]
Import Context Wizard
Comment 26 Jevgeni Holodkov CLA 2007-07-07 06:39:07 EDT
Created attachment 73246 [details]
Task Context Export test
Comment 27 Jevgeni Holodkov CLA 2007-07-07 06:39:53 EDT
Created attachment 73247 [details]
Task Context Export/Import from Context Menu
Comment 28 Jevgeni Holodkov CLA 2007-07-07 06:42:26 EDT
Mik: Export and Import wizard patches come out to be larger than 250 lines of code, since I was not able to split them without breaking the code.
Comment 29 Mik Kersten CLA 2007-07-13 02:14:28 EDT
Did not apply "Added hasChidren method" patch since not much Utility in hasChildren() method. Instead I changed the client call to be !container.getChildren().isEmpty().

Could not apply "Export Context Wizards" patch since it has a conflict.

Did not apply the "Import Context Wizard" patch because the UI design is problematic.  The amount of times that people will import a context from a global wizard is likely to be very low, so not worth adding a new wizard page to complicate the current workflow.  Do the following instead:
* Add an "Import..." action to the "Context" section of the task's popup menu.  Have this pop up a wizard similar to the one that you have now.
* The wizard page should allow the user to select a file as the source of the context as you currently do.  No need to list tasks since that's the "Copy context to..." functionality, which we can consider merging later.
Comment 30 Jevgeni Holodkov CLA 2007-07-24 11:39:55 EDT
Created attachment 74477 [details]
Task Context exporting/importing from task list menu

For both cases a file dialog asks for the context file. Context exporting is done by copying the original context file from the mylyn working folder to the destination. (If the context for a task is not yet created, then trying to export it leads to "noFileFoundException". I'll suppose it is a separate issue, isn't it?). Context importing is done by deactivating the task first and then using the existing mylyn API activating it with a new context.
Comment 31 Jevgeni Holodkov CLA 2007-07-24 11:39:58 EDT
Created attachment 74478 [details]
mylyn/context/zip
Comment 32 Remy Suen CLA 2007-10-14 09:33:23 EDT
Any updates on this bug?
Comment 33 Jevgeni Holodkov CLA 2007-10-14 13:17:23 EDT
(In reply to comment #32)
> Any updates on this bug?
> 

No yet, I have been working on exporting/importing using drag&drop and task list context menu. So far, we have concluded that this is more frequent and easy way of exporting/importing task.
Comment 34 Mik Kersten CLA 2007-10-16 12:55:35 EDT
I'm wondering what the value of providing this via the File menu is.  You would then have to find the task you wanted to import and export, so we would need to duplicate functionality that's already available in the Task List via the popup menu.  Thoughts?
Comment 35 Jörg Thönnes CLA 2008-02-22 15:16:17 EST
This is already provided in the Task List popup menu.
So I remove my vote.
Comment 36 Eclipse Webmaster CLA 2022-11-15 11:45:08 EST
Mylyn has been restructured, and our issue tracking has moved to GitHub [1].

We are closing ~14K Bugzilla issues to give the new team a fresh start. If you feel that this issue is still relevant, please create a new one on GitHub.

[1] https://github.com/orgs/eclipse-mylyn