[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Re: TortoiseIDiff suggestions

From: Ivan-Assen Ivanov <ivanassen_at_gmail.com>
Date: 2006-09-26 09:35:17 CEST

> I'd suggest creating some kind of OO interface there. Let's have an
> abstract base class "ImageComparer" that has a pure virtual method
> GenerateCombinedImage. It would look something like:
>
> void GenerateCombinedImage(const Image& left, const Image& right, Image&
> dest);
>
> Subclasses would then implement that method to do different kinds of
> comparisons. That way it will be easy to separate the different
> implementations, but still have common functionality (if any) in the
> base class. If the necessity for parameters or configuration arises,
> this could be implemented with an pure virtual Configure()-method in the
> base class that the subclasses must implement to either return null or
> provide the user with a dialog to configure the comparer.
>
> If no-one objects I'll add something along these lines to the issue.

Well, it's a bit too overengineered for my taste, but if it fits in the general
architecture/design style of TortoiseSVN, that's more important than my taste.

I especially dislike the idea of a image processing class to pop up dialogs.
Here's the use case for parameters I'm thinking about: one of the
comparison image operators displays image "left" with the differing pixels
overlaid with a specific color with a specific translucency, so we
stick a ARGB DWORD in the params structure, and place e.g. three
buttons on the toolbar, for red/green/blue, or six, for
red/green/blue/translucent red/translucent green/translucent blue.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Tue Sep 26 09:35:26 2006

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.