I'm running into some trouble with moving my connector Mylyn 3.0. I'd like to leverage more of the Mylyn framework's UI, but that's proving difficult because much of the "good stuff" is internal. The repository to which I connect has over a hundred attributes, custom attributes on attachments, etc. (Yeah, it's a bit of a mess.)
This message is a little long, but I'm just trying to describe the troubles I've had recently and see whether I'm missing something. If not, I'm wondering how to proceed. Do I just file bugs to request more public access to things that I need? I'd like to have a robust connector that doesn't reimplement too much functionality that Mylyn normally provides. Let's just look at the attachment attributes first. If I use the TaskEditorAttachmentPart, it looks like I only get the few built-in attributes in the attachment table. I didn't see how to modify that table, so I wrote my own part, table, content provider, and label provider to show all of our attachments' attributes. Is that the right approach in this case? If I write my own attachment part, I run into a lot of other problems. For example, I lose the standard Mylyn attachment table context menu since TasksUiMenus.fillTaskAttachmentMenu is internal. I could build my own menu, but then I can't use the Mylyn actions since those actions are in TaskUiMenus, too. Even DownloadAttachmentJob is internal. So, I started with, "I want to display these three important custom attachment attribute in the attachment table," and I ended up with "reimplement all attachment actions from scratch." A second example involves our scores of attributes. It's unwieldy to show them all in TaskEditorAttributePart. We split them up into multiple parts that group related attributes. That works well, but then we have other problems. I think that my AbstractTaskEditorPage needs to override createParts() so that I can lay out my new attribute group parts correctly. I don't just need to suppress the part that's at PATH_ATTRIBUTES. I need to replace it with multiple parts that are displayed in a multi-column layout. No problem. createParts() is simple, and it's easy to write my own version. But AbstractTaskEditorPage.createParts(String,Composite,Collection) is private (which seems to imply that I wasn't supposed to override createParts()). So, I would need to reimplement that method, too. But then my ISafeRunnable.run() method won't be able to call part.setPartId from my package. I have no idea why the ID isn't just part of the AbstractTaskEditorPart constructor in the first place. Gosh, where was I? I really like how much Mylyn 3.0 pulls up into the framework. It gives the connector author a lot of functionality for free. But, at least in the task editor, it seems like the moment I try to make any customization, I have to abandon almost everything that Mylyn provides to a simpler connector. I'm hoping that wasn't the intent! :) -- Tom Bryan <[EMAIL PROTECTED]> Cisco Systems _______________________________________________ mylyn-integrators mailing list mylyn-integrators@eclipse.org https://dev.eclipse.org/mailman/listinfo/mylyn-integrators