|
From: Mojca M. <moj...@gm...> - 2012-08-07 14:08:16
|
Dear all,
I just wanted to let you know that AquaTerm 1.1.1 has been released.
The sources are available at
https://github.com/AquaTerm/AquaTerm
Binaries can be downloaded from here:
https://github.com/AquaTerm/AquaTerm/downloads
and support ppc/i386/x86_64 for Mac OS X 10.5 or later.
This is the first released version that properly works on 64-bit macs.
It supports transparency (it didn't support it in version 1.0.1, and
version 1.1.0 had two semi-serious problems). Gnuplot needs a patch to
make transparency work though:
- AQUA_hasAlphaSupport = [AQTAdapter
respondsToSelector:@selector(setColorRed:green:blue:alpha:)];
+ AQUA_hasAlphaSupport = [adapter
respondsToSelector:@selector(setColorRed:green:blue:alpha:)];
or alternatively
AQUA_hasAlphaSupport = [AQTAdapter
instancesRespondToSelector:@selector(setColorRed:green:blue:alpha:)];
(The sourceforge page still needs to be updated to redirect to GitHub pages.)
Mojca
|
|
From: Ethan A M. <sf...@us...> - 2012-08-07 23:42:09
|
On Tuesday, August 07, 2012 07:08:06 am Mojca Miklavec wrote: > Dear all, > > I just wanted to let you know that AquaTerm 1.1.1 has been released. > [snip] > This is the first released version that properly works on 64-bit macs. > It supports transparency (it didn't support it in version 1.0.1, and > version 1.1.0 had two semi-serious problems). > Gnuplot needs a patch to make transparency work though: > - AQUA_hasAlphaSupport = [AQTAdapter > respondsToSelector:@selector(setColorRed:green:blue:alpha:)]; > + AQUA_hasAlphaSupport = [adapter > respondsToSelector:@selector(setColorRed:green:blue:alpha:)]; > or alternatively > AQUA_hasAlphaSupport = [AQTAdapter instancesRespondToSelector:@selector(setColorRed:green:blue:alpha:)]; Have you checked that this change works also for the earlier versions of aquaterm? Otherwise it needs to be wrapped in some version check. Ethan |
|
From: Mojca M. <moj...@gm...> - 2012-08-08 02:25:22
|
On Wed, Aug 8, 2012 at 1:28 AM, Ethan A Merritt wrote: > On Tuesday, August 07, 2012 07:08:06 am Mojca Miklavec wrote: >> Dear all, >> >> I just wanted to let you know that AquaTerm 1.1.1 has been released. >> [snip] >> This is the first released version that properly works on 64-bit macs. >> It supports transparency (it didn't support it in version 1.0.1, and >> version 1.1.0 had two semi-serious problems). > >> Gnuplot needs a patch to make transparency work though: >> - AQUA_hasAlphaSupport = [AQTAdapter >> respondsToSelector:@selector(setColorRed:green:blue:alpha:)]; >> + AQUA_hasAlphaSupport = [adapter >> respondsToSelector:@selector(setColorRed:green:blue:alpha:)]; > >> or alternatively > >> AQUA_hasAlphaSupport = [AQTAdapter instancesRespondToSelector:@selector(setColorRed:green:blue:alpha:)]; > > Have you checked that this change works also for the earlier versions of aquaterm? > > Otherwise it needs to be wrapped in some version check. This *is* the version check (or rather: feature check). All the wrappers for transparency follow later. The problem is that all wrappers assume that transparency is not supported based on the result of this wrong check, and thus transparency is never used at all. New AquaTerm provides an instance method, but the line checks if a class method exists. The result is thus "false" in both versions. Mojca |
|
From: Mojca M. <moj...@gm...> - 2012-08-09 16:17:02
|
On Wed, Aug 8, 2012 at 4:25 AM, Mojca Miklavec wrote:
> On Wed, Aug 8, 2012 at 1:28 AM, Ethan A Merritt wrote:
>> On Tuesday, August 07, 2012 07:08:06 am Mojca Miklavec wrote:
>>
>>> Gnuplot needs a patch to make transparency work though:
>>> - AQUA_hasAlphaSupport = [AQTAdapter
>>> respondsToSelector:@selector(setColorRed:green:blue:alpha:)];
>>> + AQUA_hasAlphaSupport = [adapter
>>> respondsToSelector:@selector(setColorRed:green:blue:alpha:)];
>>
>> Otherwise it needs to be wrapped in some version check.
>
> This *is* the version check (or rather: feature check).
>
> All the wrappers for transparency follow later. The problem is that
> all wrappers assume that transparency is not supported based on the
> result of this wrong check, and thus transparency is never used at
> all.
An alternative way would also be to do that check during configuration
and then replace
if (AQUA_hasAlphaSupport)
[adapter setColorRed:r green:g blue:b alpha:a];
else
[adapter setColorRed:r green:g blue:b];
by
#ifdef HAS_AQUATERM_TRANSPARENCY
[adapter setColorRed:r green:g blue:b alpha:a];
#else
[adapter setColorRed:r green:g blue:b];
#endif
to avoid compiler warnings when old AquaTerm is used, but that's
probably too big hammer for a too tiny problem anyway (and compiler
warnings will go away once people upgrade aquaterm).
Mojca
|