Hi Michael,
OK, I’ve been able to reshape the
Synchronize view’s tree so that our logical model diffs are being
displayed. Now I’m stuck trying to figure out how to populate the
compare editor. I know the list of local resources that have changed and
I’m given a list of repository changes that are associated. However,
I may need additional files from the repository provider in order to fully
populate my remote model representation. However, don’t think I can
assume a particular version correlation between these dependent files without
applying some sort of labeling strategy. Is this clear? I’ll
try to give a simple example.
Our main model file, we’ll call it
main.a, has associations with subordinate files secondary.b, secondary.c, and
so forth. In order to fully visualize the model, the main.a file must be
read and associated .b, .c and so forth files must be read. However, a
change to a .b or .c file does not necessarily require a change to the main.a
file. Therefore, one can start seeing diverging version numbers in the
repository between these associated files. How, therefore, can I possibly
know how to reconstruct the logical model for, say version 1.4 of main.a if I
have no idea which versions of secondary.b, secondary.c, etc are valid for
version 1.4 of main.a? And what mechanism do I use to facilitate the user
in selecting a version of these subordinate files that they may be interested
in?
I have a similar issue with the history open
action functionality as it will need to construct the logical model in a
similar way.
As a possible workaround for the history open
action, is there a way to opt out of utilizing a particular editor for a file
extension in that case? In most cases, we would like our editor to pop
when the main.a file is double clicked. But in the case of the history
open action, maybe we could resort to just utilizing the built in default
editor to avoid the complications of trying to figure out how to build a valid
logical model from the repository resources.
Thanks,
Tom
From:
platform-team-dev-bounces@xxxxxxxxxxx
[mailto:platform-team-dev-bounces@xxxxxxxxxxx] On Behalf Of Michael Valenta
Sent: Monday, March 10, 2008 1:39
PM
To: Generic team support framework
Subject: RE: [platform-team-dev]
How do I enable "Open InCompare Editor"on model object?
Tom,
By
'Compare Editor", do you mean you want to use your own editor part. If so,
the answer is no. What you can do is associate your input with a content merge
viewer by returning your on String type from the ITypedElement#getType()
message and binding your content merge viewer to that type in the plugin.xml
(type = file extension). This will be used by the Compare Edior when the input
is your compare input.
Michael
"Tom Lennan"
<tlennan@xxxxxxxxxxxx>
Sent
by: platform-team-dev-bounces@xxxxxxxxxxx
03/10/2008
04:32 PM
Please respond
to
Generic team support framework
<platform-team-dev@xxxxxxxxxxx>
|
|
To
|
"Generic team support
framework" <platform-team-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
|
RE: [platform-team-dev] How do I enable "Open In
Compare Editor"on
model object?
|
|
Michael,
Thanks. Second guessing myself and what would be the appropriate
adapted type in the ISynchronizationCompareAdapter factor definition was the
source of the problem. I’m now seeing the context menu item.
I have a follow on question. Is there an easy way to
substitute our own compare editor for the built in compare editor? Our
compare editor handles a mixture of file and directory object types. My
understanding is that the built in compare editor does not handle this.
Thanks,
Tom
From:
platform-team-dev-bounces@xxxxxxxxxxx [mailto:platform-team-dev-bounces@xxxxxxxxxxx]
On Behalf Of Michael Valenta
Sent: Monday, March 10, 2008 11:27 AM
To: Generic team support
framework
Subject: Re: [platform-team-dev] How do I enable "Open In
Compare Editor"on model object?
Tom,
You may have already red this but this link dscribes all the steps to implement
logical model support:
http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/team_model_model.htm
For your sepcific question, you may want to look at the
ISynchronizationCompareAdapter interface.
Michael
"Tom Lennan"
<tlennan@xxxxxxxxxxxx>
Sent by: platform-team-dev-bounces@xxxxxxxxxxx
03/07/2008
04:54 PM
Please respond
to
Generic team support framework
<platform-team-dev@xxxxxxxxxxx>
|
|
To
|
<platform-team-dev@xxxxxxxxxxx>
|
cc
|
|
Subject
|
[platform-team-dev] How do I enable "Open In
Compare Editor" on model object?
|
|
Hi all,
I’m working on integrating our logical model with the team stuff and
think it’ll work great for our customers. However, I’m stuck
at the 80% implementation complete point in my integration and hope that
someone can help me out.
Background: We utilize a variety of XML files as the persistence files for our
logical model. We wish to completely abstract the user’s experience
of conflict resolution in that we don’t want the user to ever have to
think about the underlying XML files that make up our model.
Success to this point: I’ve cribbed off the file based Logical Model
sample to get my model to display in Synchronize view. I seemed to need
to use the IPipelinedTreeContentProvider to “reshape” the
Synchronize view content to provide the level of abstraction we are looking for
(i.e. XML files do not appear anywhere in the hierarchy).
Issue: Now that I have my nicely “reshaped” model
representation, how can I enable the “Open In Compare Editor”
operation on my logical model object nodes? It seems like this context
menu item is only available on actual IResource objects. I read that I
should adapt model elements to ResourceMapping to allow resource based
operations to appear on these elements. I believe I’m doing that
correctly, but I still do not get the context menu items I want.
Am I misunderstanding how the logical model integration is supposed to work or
have I likely failed to implement some key piece of code and/or extension point
in the plugin.xml?
I’m not sending off code snippets at this point until I hear back from
someone whether my understanding of the logical model integration is completely
off.
Thanks for your help!
Tom
_______________________________________________
platform-team-dev mailing list
platform-team-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-team-dev_______________________________________________
platform-team-dev mailing list
platform-team-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-team-dev