On 8/11/07, The Rasterman Carsten Haitzler <[EMAIL PROTECTED]> wrote:
> On Mon, 6 Aug 2007 11:54:43 -0500 "Paul Johnson" <[EMAIL PROTECTED]> babbled:
>
> > Greetings.
> >
> > I stop in and try out Enlightenment every year or so. I always think
> > happily of the E DR13. It is the program that made me want to use
> > Linux in the first place. My favorite part was the pager--small
> > old-fashioned televisions showing desktops, with spotlights that
> > pointed at the active desktop. There has never been another program
> > that represented such originality.
> >
> > I'm wondering if there is a background manager in E now that will make
> > it easier to use edje objects. In the KDE desktop, there's a desktop
>
> in e17 wallpapers ARE edje objects. the desktop is a window (overlayed over
> root) by e. you don't see the root window in e17. e17 itself controls your
> desktop bg with an iron fist :) it's part of the wm and under the wm's
> control.
> desktop "icons" are there now as part of the filemanager code in e17. any
> module in e17 can extend the wm and as a result - can find where e keeps its
> "desktop canvases" (look into the managers then the containers in each mnager
> -
> and each container has zones). modules are just code and can create any
> objects
> they like, from anywhere and do anything.
>
> > manager called kdesktop wallpaper and you can set it to run slideshows
> > on collections of directories--it randomly shows jpg files at
> > intervals you specify. The last time I tried E, I could not find a
> > brain-free way to do that, and had to write some code to talk to the E
> > environment. Even then, the small jpg files got turned into huge
> > uncompressed edje files that filled up my home directory.
>
> edje files are compressed. they also STORE the image in the file so you
> include
> a wallpaper -t he image itself gets inlined (there are various compression
> schemes from RAW (no compression) to COMP (zlib - no loss in quality) and
> LOSSY
> (jpeg compression - inlined into the .edj). the .edj is stand-alone and
> independent - it does not require any files outside - not the original
> wallpaper
> or anything. that's why its big - you can email your .edj to a friend - and it
> will work. out of the box. nothing left to do.
When all is said and done, I think I'm trying to revise edje_cc to
allow a USER command line option. I have been reading your code in
CVS and experimenting with things.
I felt pretty enthusiastic about your comment last month that E might
work on a Nokia N800 tablet. I just got one of those and it is a bit
ugly in the interface.
I want the extrenal random backgrounds because I have about 12,000
jpg background images sitting in a directory structure. It is too
tedious to go pointing and clicking through them with the wallpaper
tool to create the edj files. I don't mind the risk of breaking an edj
file by removing a wallpaper. (It could be the E wallpaper config
thing needs a way to throw away badly formatted edj files.) )
Here is the place where I am stuck. It seems to me there is a
mismatch between the edj files created by edje_cc and the ones created
by the Wallpaper config tool. To the best of my understanding, the
Engrave file controls what edje_cc does, but these files are a bit
tricky to write. But I need to understand what will work before I go
too much further. Here is the example config file--I created it from
edje_decc and then edited. I put in the full path to the image,
otherwise edje_cc wouldn't work, and changed COMP to USER. (Can't use
edje_decc on edj files that have image as external reference--it
fails).
fonts {
}
spectra {
}
images {
image: "/home/pauljohn/Backgrounds/test_face.jpg" USER;
}
data {
}
styles {
}
collections {
group {
name: "e/desktop/background";
parts {
part {
name: "background_image";
type: IMAGE;
mouse_events: 0;
description {
state: "default" 0.00;
visible: 1;
rel1 {
relative: 0.00 0.00;
offset: 0 0;
}
rel2 {
relative: 1.00 1.00;
offset: -1 -1;
}
image {
normal:
"/home/pauljohn/Backgrounds/test_face.jpg";
}
fill {
type: SCALE;
size {
relative: 0.00 0.00;
offset: 1006 804;
}
}
}
}
}
programs {
}
}
}
When I run the build.sh script, it does create the edj file and after
re-starting E, it is recognized, the image is tiled, not max scaled.
Trying to figure out the correct format for the engrave config file, I
have wandered to this part in the E17 source:
e17/apps/e/src/modules/conf_wallpaper/e_int_config_wallpaper_import.c
I'd like to use that as an example to add a -u USER command line
option into edje_cc, or at least make a script that would generate the
engrave config files and run a build script.
Here's what puzzles me. The engrave config files written by
e_int_config_wallpaper_import.c do not have the exact same structure
as the files created by edje_decc. Note, for example, in the engrave
file above, there are settings under part that are not mentioned in
e_int_config_wallpaper_import.c. For example, look around line 368
for the file output formats:
case IMPORT_STRETCH:
fprintf(f,
"images { image: \"%s\" %s; }\n"
"collections {\n"
"group { name: \"e/desktop/background\";\n"
"max: %i %i;\n"
"parts {\n"
"part { name: \"bg\"; mouse_events: 0;\n"
"description { state: \"default\" 0.0;\n"
"image { normal: \"%s\"; }\n"
"} } } } }\n"
, fstrip, enc, w, h, fstrip);
break;
Defining terms:
fstrip is the filename of the image
enc is USER
w,h: info from imlib.
So what I need is to learn how use imlib to get the values of "max" so
the image comes out scaled properly?
Well, this stuff is fun for me because I don't have to do it for a living.
--
Paul E. Johnson
Professor, Political Science
1541 Lilac Lane, Room 504
University of Kansas
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users