[as-devel] Re: AS status?
Sasha_Vasko@osca.state.mo.us
Thu, 3 May 2001 14:09:30 -0500
> Sasha et al,
>
> I pulled cvs afterstep again, just to see if things were compiling yet.
(I
> do such every couple of weeks just for kicks). None of the Modules are
> compiling yet, which I know is because of how extensive of a rewrite is
> happening.
The change that got them all broken was added multiscreen awareness.
We now have array of pointers to ScreenInfo structures - each for
particular
screen, with Scr being one them - representing default screen.
Respectively all the per-screen data has been moved under ScreenInfo
umbrella.
That includes: Root window properties ( used for inter-client
communications ),
(ASWMProps); clients list; CurrentLook/Feel; Visual, Colormap, some other
things.
Makes for much cleaner global variable structre actually.
> Just a thought, as you are focussing on getting all the underlying
libraries
> written, could you get one of the modules compiling and working? I think
Ok, afterstep proper, asetroot and Audio modules, Winlist and asrender
prototypes
now compiles clean. I'm not sure if them are working actually - needs
debugging.
> that if some of us who are on the fringe saw how one of them is supposed
to
> work in the new scheme, we'd be more help porting the rest of them over.
I
> know it would help me figure out what I could do to help out.
WinList and asrender are good and clean prototypes that one can use for
rewriting other modules.
>
> Just a thought.
Sure.
You keep on bugging me, I'd be glad to oblige, as I really, really want
more ppl
working on it. It's just that I'm getting carried away and need some
feedback
to get me back on track.
Just for the kicks about what I'm working on right now :
Completely new code for client-side image manipulation, that ought to bring
AS
on the level with things like ImLib and GIMP without introducing bloat, and
actually reducing/speeding things up.
What is implemented here :
1) Import filters for :
XPM, JPEG, PNG, XCF (native GIMP format), PPM/PNM, Windows BMP, ICO and
CUR, GIF,
TIFF. Note that only XPM.JPEG, PNG ,GIF and TIFF require foreign libraries.
2) Completely new color management scheme, allowing for support for
pseudo-color
modes and lower color modes (16bpp and 15bpp) without much loss in image
quality
due to Color Quantization Error Diffusion algorithm which produces images
much better
then that of xv and the likes. That comes at no performance cost as well.
3) In-memory image compression - saves on memory
4) Advanced image scaling with color interpolation
5) Image tiling with arbitrary origin
6) Multylayer image merging with different filters - alpha-blending,
image tinting with image, image averaging with image, HueSaturationValue
combining,
and lots more - total of 15 different filters - that will eventually become
different
modes of BackPixmap option in mystyle.
7) TTF font support with antialiasing using FreeType 2 library.
8) standard X11 fonts support with antialiasing-smoothing independantly
from X server.
9) Font support designed in a way so that its is easy to support multybyte
character
encodings/localization support.
10) text drawing with arbitrary pixmap as a foreground , as well as alpha
channel
support.
All the image transformation are performed using 16bpp per channel with
subsequent
quantization error diffusion, thus yelding greater speed and quality.
Were applicable image manipulation has been coded with optional MMX inline
assembly, and
64bit integer support. There are no floating point operations anywhere,
thus
yelding better speed as well.
Things to do :
1) gradients drawing
2) Image rotation/flipping
Some screenshots to look at :
http://afterstep.sourceforge.net/ab_ss.png
http://afterstep.sourceforge.net/antialiased_transp.jpg
difference between xv image quality and afterstep : http://afterstep.sourceforge.net/ss_gradient.jpg
Cheers
Sasha
>
> -Sean
> --
> Sean Dague
> sean@dague.net
Cheers
Sasha.