#297459 - 24/04/2007 16:12
Dumb Javascript Question
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Greetings!
I use a hybrid of a few different interfaces as a web front end to my office empeg. This front end is basically a flat HTML page intro screen, with a graphic of the player and what is playing, leading to a selected hijack playlist. Normally, this graphic updates with the screen data from /proc/empeg_screen.png.
This works fine under older IE and older Firefox. But Firefox 2 and IE7 no longer autorefresh the screen graphic. A snooper on the network is not showing a GET to the player. The timing loop works fine for other graphics and alert popups (used to test the logic), but I cannot figure out why this one graphic would be a problem. Especially since it works fine in IE6...
Clue, please... Attached is the html / javascript. The css is for font settings and opacity. Nothing special, but I cannot see why it is not working with Firefox 2 or IE7...
Attachments
298202-wk.html (1014 downloads)
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297460 - 24/04/2007 16:18
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
Is the browser caching the image and just not bothering to go fetch a new one? Is there a javascript command to deliberately override the cache when you do a page refresh?
Or, alternatively, isn't there a way to edit the HTML page to tell the browser to ignore the cache when reloading?
|
Top
|
|
|
|
#297461 - 24/04/2007 16:23
Re: Dumb Javascript Question
[Re: tfabris]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
I do have nocache statements (Pragma:no-cache and Expires:-1) in the HTML. If I use any other image (example - a blank screen), I can see it reloading the other image repeatedly with my snoop.
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297462 - 24/04/2007 16:42
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Hmmm... Could it be a timing issue, where I am reading the empeg_screen.png file while it is being written? I put a second image in that display loop, and it executes for a random amount of iterations before stopping without any error indication.
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297463 - 24/04/2007 17:10
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
Until Mark chimes in with the correct answer, have you peeked at the source code to CharcoalGray99's interface? I know that it also doesn't work on IE7 or Firefox, but perhaps he's doing something differently that might be portable.
|
Top
|
|
|
|
#297464 - 24/04/2007 17:33
Re: Dumb Javascript Question
[Re: tfabris]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
I have. In fact, that is where I stole a lot of the javascript reloading and images from.
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297465 - 25/04/2007 07:45
Re: Dumb Javascript Question
[Re: tfabris]
|
addict
Registered: 11/01/2002
Posts: 612
Loc: Reading, UK
|
I think this may help: http://www.theserverside.com/discussions/thread.tss?thread_id=32410Last answer: The answer to this problem is simple and a bit strange use headers in lowercase for firefox works in internet explorer too.. for example: Response.AppendHeader("pragma", "no-store,no-cache") ' //HTTP 1.0 Response.AppendHeader("cache-control", "no-cache, no-store,must-revalidate, max-age=-1") // HTTP 1.1 Response.AppendHeader("expires", "-1") Checked khtpd.c and indeed they are being sent nicely Capitalised... I'll patch my kernel and try it...
_________________________
LittleBlueThing
Running twin 30's
|
Top
|
|
|
|
#297466 - 25/04/2007 08:21
Re: Dumb Javascript Question
[Re: LittleBlueThing]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Interesting!!! This raises up some possible causes with the version of http protocol. I have to experiment...
Meanwhile, changing the header lines to...
<META HTTP-EQUIV="pragma" CONTENT="no-store,no-cache"> <META HTTP-EQUIV="cache-control" CONTENT="no-store,no-cache,must-revalidate,max-age=-1"> <META HTTP-EQUIV="expires" CONTENT="-1">
...did not produce any noticeable difference. The test image display_blank.png reloads properly, repeatedly, while the empeg_screen.png does not.
function RefreshScreen() { document.images.namedisplay.src = "images/display_blank.png"; document.images.namedisplay.src = "proc/empeg_screen.png"; setTimeout('RefreshScreen()',5000); }
A snoop on the network shows:
Using device /dev/hme (promiscuous mode) client -> empeg HTTP GET / HTTP/1.1 client -> empeg HTTP GET /images/default.css HTTP/1.1 client -> empeg HTTP GET /images/fascia_left.gif HTTP/1.1 client -> empeg HTTP GET /images/fascia_top.gif HTTP/1.1 client -> empeg HTTP GET /images/display_smoke.png HTTP/1.1 client -> empeg HTTP GET /images/fascia_right.gif HTTP/1.1 client -> empeg HTTP GET /proc/empeg_screen.png HTTP/1.1 client -> empeg HTTP GET /images/fascia_bottom.gif HTTP/1.1 client -> empeg HTTP GET /images/display_blank.png HTTP/1.1 client -> empeg HTTP GET /images/display_blank.png HTTP/1.1 client -> empeg HTTP GET /images/display_blank.png HTTP/1.1 client -> empeg HTTP GET /images/display_blank.png HTTP/1.1
Edited by pgrzelak (25/04/2007 08:24)
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297467 - 25/04/2007 09:43
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
|
It is likely that different HTTP headers are being set by the webserver on the empeg for the two different png files. The different headers will be causing different caching behaviour for the two different images.
You could try requesting "proc/empeg_screen.png?timestamp" where "timestamp" is a value that changes each time you request it. I haven't checked to see whether Mark's webserver handles requests like that though.
_________________________
Remind me to change my signature to something more interesting someday
|
Top
|
|
|
|
#297468 - 25/04/2007 09:51
Re: Dumb Javascript Question
[Re: andy]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Greetings!
Some more testing shows some rather interesting behavior. While working with the Firefox DOM Inspector, I found that if I have two instances (tabs or windows) of the exact page up in Firefox, they update properly. Closing one of the windows or tabs reverts back to the previous behavior.
I will have to try throwing a parameter afterward. I suspect it is ignored as long as there is nothing after it (at least, that is the behavior I see in the browser so far).
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297469 - 25/04/2007 10:00
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Well, the server will not accept anything after the "?", so that is moot. Also, I tried alternating the timer with a plain empeg_screen.png and one followed by a ?. No luck.
At this stage, I think the browser is still caching the image somehow, and having two instances of the browser is forcing the issue by being slightly out of sync. One interesting note is that IE7 tabs display two different screen images, but neither refresh.
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297470 - 25/04/2007 10:19
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
|
The meta tags in the page will not have any effect on how images linked from the page will be cached.
_________________________
Remind me to change my signature to something more interesting someday
|
Top
|
|
|
|
#297471 - 25/04/2007 10:27
Re: Dumb Javascript Question
[Re: andy]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
So, basically it comes down to a local image caching issue. And if the meta tags in the code do not modify behavior for the images contained, it would be a matter of forcing the header through the web server itself. Hmmm... Time to start looking at some of the style sheets and configurations for hijack...
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297472 - 25/04/2007 13:12
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Paul, I just spent a couple of hours fiddling with this, and it's entirely a browser issue. Nothing really works other than feeding unique URLs to Firefox each time. So, Hijack v470 is now available, with support for a "IGNORE=xxxxx" parameter that you can use in the URLs. Eg. Code:
document.images.image1.src = 'http://my.empeg/proc/empeg_screen.png?IGNORE=' + Date();
Just for kicks, I also updated the HTTP headers returned by Hijack to include more of the modern " not cacheable, you idiot!" keywords, but none of them really have any effect here.
|
Top
|
|
|
|
#297473 - 25/04/2007 13:28
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Very cool!!! Thanks! I do not have the ability to test in the office, but I will let you know how things go.
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297474 - 15/05/2007 11:29
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Hehh.. related to this..
Being the kernel-focused fellow that I am, I've only just discovered that the "width=" attribute works for *expanding* image displays in a browser. Duh..
And the immediate practical application for this, is to use it like this (below) inside the empeg web interface:
<img src="/proc/empeg_screen.png" width="384"/>
Well golly! That sure does make the remote display viewing much easier on the eyes!
Here (attached) is a hacked up stylesheet to demonstrate it. To try this out, first ensure you have the latest Hijack kernel, and then just copy this file to /default.xsl on your empeg. Then surf to http://your.player.ip.address/?FID=101&EXT=.xml and watch the fun.
EDIT: replaced original attachment with a better one
Cheers
Attachments
299173-default.xsl (733 downloads)
Edited by mlord (15/05/2007 11:40)
|
Top
|
|
|
|
#297475 - 15/05/2007 12:09
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Mmm.. perhaps one of you can help me with something now? I want to do this: Code:
<table border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td rowspan="3"><img border="0" src="/fascia_left.gif" width="94" height="90"/></td> <td rowspan="1"><img border="0" src="/fascia_top.gif" width="128" height="28"/></td> <td rowspan="3"><img border="0" src="/fascia_right.gif" width="74" height="90"/></td> </tr> <tr> <td bgcolor="grey"><img src="/proc/empeg_screen.png" width="128" height="32" name="screen_png"/></td> </tr> <tr> <td rowspan="1"><img border="0" src="/fascia_bottom.gif" width="128" height="30"/></td> </tr> </tbody> </table>
.. except it ends up looking like this (Firefox): How to fix it? Or how to do it better inside the default.xsl stylesheet (previous post)? Thanks
Attachments
299176-junk.jpg (728 downloads)
Edited by mlord (15/05/2007 12:10)
|
Top
|
|
|
|
#297476 - 15/05/2007 12:33
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
Sorry. Busy day at the office...
Thanks! I will try out the style sheet in a little while. Meanwhile, I actually cheat with the fascia drawing code. Whitespace matters, so I did everything in a javascript function:
function drawFascia(url) { document.write("<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">"); document.write("\t<tbody>"); document.write("\t<tr>"); document.write("\t\t<td rowspan=\"3\"><img border=\"0\" src=\"images/fascia_left.gif\" width=\"94\" height=\"90\"></td>"); document.write("\t\t<td><img border=\"0\" src=\"images/fascia_top.gif\" width=\"128\" height=\"28\"></td>"); document.write("\t\t<td rowspan=\"3\"><img border=\"0\" src=\"images/fascia_right.gif\" width=\"74\" height=\"90\"></td>"); document.write("\t</tr>"); document.write("\t<tr>"); document.write("\t\t<td id=\"tdDisplay\" background=\"images/display_smoke.png\"><img src=\"/proc/empeg_screen.png\" class=\"display\" width=\"128\" height=\"32\" name=\"namedisplay\" OnAbort=\"LoadError()\" OnError=\"LoadError()\"></td>"); document.write("\t</tr>"); document.write("\t<tr>"); document.write("\t\t<td><img border=\"0\" src=\"images/fascia_bottom.gif\" width=\"128\" height=\"30\"></td>"); document.write("\t</tr>"); document.write("\t</tbody>"); document.write("</table>"); document.write("<br>"); }
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297477 - 15/05/2007 13:26
Re: Dumb Javascript Question
[Re: pgrzelak]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
I don't seem to be able to get that js function to do anything in the stylesheet.
Mark / Paul / web-gurus ??
Here (attached) is a .zip archive with my hacked-up empeg web-lite interface. Just unpack it, and move the contents to the root (/) directory of an empeg, and then surf to it (requires latest Hijack for the default.xsl).
There are two versions of the default.xsl file included, and you'll have to rename them in turn to use them. default.xsl-bad is what I thought *should* work, but the table element spacing for the fascias is off. It seems to have some extra padding, despite my best efforts to get rid of it.
The other version, default.xsl-good, is one I've hand-tweaked to look correct in my firefox-1.5, but this is heavily browser dependent. I'd like a better fix in the stylesheet for this.
Help?
And eventually, I want clickable image maps for the buttons.
Attachments
299181-my_empeg_weblite.zip (384 downloads)
|
Top
|
|
|
|
#297478 - 15/05/2007 14:44
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Gah. This took longer than it should have. IE sucks. This is a version that uses CSS and won't give you any gaps. Don't get me started about how if you want to float an image within a div in IE, the browser will insert whitespace around the image. The code below could be more terse for FireFox, but this is a good cross-browser solution: Code:
<style>
.left, .right, .middle { float: left; }
.middleimg { float: left; clear: left; }
</style>
<div class="left"> <img src="fascia_left.gif"> </div> <div class="middle"> <div class="middleimg"><img src="fascia_top.gif"></div> <div class="middleimg"><img src="empeg_screen.png"></div> <div class="middleimg"><img src="fascia_bottom.gif"></div> </div> <div class="right"> <img src="fascia_right.gif"> </div>
|
Top
|
|
|
|
#297479 - 15/05/2007 16:19
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Thanks Mark. Better, but still not right in Firefox (swiftfox) 1.5.0.7 here:
Attachments
299197-1.gif (795 downloads)
Edited by mlord (15/05/2007 16:43)
|
Top
|
|
|
|
#297480 - 15/05/2007 16:39
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Mmm... same result in Firefox-2.0.0.3 (Linux). It is adding whitespace between the three middle images, as in the snapshot above.
My hacked up evolution of your stylesheet is attached. ???
Attachments
299199-default.xsl (717 downloads)
Edited by mlord (15/05/2007 16:41)
|
Top
|
|
|
|
#297481 - 15/05/2007 18:18
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Add the following to the stylesheet:
.mfront_col img { display: block; }
For some reason Firefox is not treating the images as a block element in the XSL but does in a test example.
|
Top
|
|
|
|
#297482 - 15/05/2007 18:32
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: Add the following to the stylesheet:
.mfront_col img { display: block; }
For some reason Firefox is not treating the images as a block element in the XSL but does in a test example.
Great! Yooo-Da-Mann!!
Thanks, Mark!
|
Top
|
|
|
|
#297483 - 15/05/2007 19:17
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Someone really should come up with a render of the fascia, the one we are using bugs me because it's so pixelated and the screen part is tinted blue. I'm sure this picture that Charcoalgrey99 used was a render at some point, I can't believe that was a photo - anyone know where the original, ORIGINAL fascia art came from?
|
Top
|
|
|
|
#297484 - 15/05/2007 19:20
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
|
It definitely was a render. It was the original render from the CAD files of the fascia during development of the Mark2. Rob V posted those renders somewhere in very high resolution at that time. The version used in the Charcoalgray99 template are a reduced-down version of those original high-rez pictures. If we could find them again, you could edit them to get rid of the blue tint and to not have the pixellation.
|
Top
|
|
|
|
#297485 - 15/05/2007 20:18
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: the one we are using bugs me because it's so pixelated and the screen part is tinted blue. I'm sure this picture that Charcoalgrey99 used was a render at some point, I can't believe that was a photo - anyone know where the original, ORIGINAL fascia art came from?
I'd be happy with just a better copy than the one I have here -- the bottom middle portion in particular was mismatched in size compared with the rest of the "set". I think I saved those from an early MSIE-only CG web interface.
Cheers
|
Top
|
|
|
|
#297486 - 15/05/2007 20:25
Re: Dumb Javascript Question
[Re: tfabris]
|
carpal tunnel
Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
|
That post is here, and references http://www.empeg.com/preview, which doesn't exist in the Wayback machine. They may be lost to posterity. Edit: I totally take it back. The correct post is here, and the Wayback machine has it, including a big 1450x457 pixel render. Success!
Edited by wfaulk (15/05/2007 20:30)
_________________________
Bitt Faulk
|
Top
|
|
|
|
#297487 - 15/05/2007 20:49
Re: Dumb Javascript Question
[Re: wfaulk]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Nice, Bitt! I've got it saved now, if I have some time tonight I might try to weakly stab away (Gimp along?) at making a sliced-up version of this.
|
Top
|
|
|
|
#297488 - 15/05/2007 20:56
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: Nice, Bitt! I've got it saved now, if I have some time tonight I might try to weakly stab away (Gimp along?) at making a sliced-up version of this.
A version sliced to fit a 2X/2X render of the front panel display would be very nice. The front panel is 32H x 128W, so a render with an opening for 64x256 would be great!
Cheers
|
Top
|
|
|
|
#297489 - 16/05/2007 01:46
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Done, here is the Wiki page that I created to put up the images. There are three sizes, sized so you can use them with the /proc/empeg_screen.png file easily. The large size is very big, the screen image would have to be scaled to 640x160 to be used with it. It's from the full-size render that Rob posted about and Bitt found above. The medium size is good for a double-sized screen png, I've also included a .zip file with an exploded view from the wiki page. I integrated these into Mark's modification to the web interface (screenshot below). I also included the GIMP sources in xcf and a small size. These renders look MUCH better than the one we've been using from CG99's web interface. Tony, you may want to look at these for EmpegFace.
Attachments
299229-screenshot_ewl.png (992 downloads)
|
Top
|
|
|
|
#297491 - 16/05/2007 15:40
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Hmm... Makes me wonder if Hijack could use black as transparent in the .png file. Then there's no need for a chopped up image file, as CSS could be used to position the .png file over a single Empeg face image. (And then users can colour their empeg face whatever they like.) Does IE support transparent png files, yet?
edit: hmm... come to think of it, if the white portions were also 95% transparent (or something like that), then the text would pick up a tinge of colour from underneath...
|
Top
|
|
|
|
#297492 - 16/05/2007 17:49
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 18/01/2000
Posts: 5683
Loc: London, UK
|
Quote: Does IE support transparent png files, yet?
IE 7 does, yes, using the alpha channel, no less.
_________________________
-- roger
|
Top
|
|
|
|
#297493 - 16/05/2007 18:59
Hijack v472: transparent background for /proc/empeg_screen.png
[Re: canuckInOR]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: Hmm... Makes me wonder if Hijack could use black as transparent in the .png file.
Hijack v472 is now released.
New in this version: the /proc/empeg_screen.png file now has a transparent background. Note that this makes it difficult to view in a browser that uses a white background.
Also note that alpha channel transparency is incompatible with "colour mode 0" PNG files (like this one). So we don't use alpha transparency here, and therefore only the background is transparent, not the foreground.
My updated default.xsl stylesheet is attached, with a black background behind the VFD display.
Cheers
Attachments
299270-default.xsl (582 downloads)
Edited by mlord (16/05/2007 19:27)
|
Top
|
|
|
|
#297494 - 16/05/2007 19:30
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: Hmm... Makes me wonder if Hijack could use black as transparent in the .png file. Then there's no need for a chopped up image file, as CSS could be used to position the .png file over a single Empeg face image.
I'd be interested in knowing how to implement that. Could you please hack my default.xsl CSS to do that with a single .PNG background image + the empeg VFD image?
Thanks (in advance).
I don't think IE6 can handle any kind of PNG transparency, but I could be wrong on that. EDIT: apparently I was wrong -- IE6 can do the basic transparent background PNG, like we have here.
Edited by mlord (16/05/2007 19:32)
|
Top
|
|
|
|
#297495 - 16/05/2007 20:56
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Uh oh. Put up or shut up time. I guess if I can waste an hour or two reading The Instigator, I can spend a bit of time on this, too... See attached. In a nutshell, I replaced the four fascia images with a single image of the fascia, in which I cut the entire center of the screen out, so that it's transparency shows the background colour. Then, I used css's position:absolute to move the empeg_screen image to the correct location on the fascia. No clue if it works properly in IE, though. Cheers,
Attachments
299277-changes.zip (430 downloads)
|
Top
|
|
|
|
#297496 - 16/05/2007 21:02
Re: Dumb Javascript Question
[Re: canuckInOR]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Two methods exist for layering images:
1. Set one as a background and the other in a foreground block 2. Use z-index and floating images to position two images correctly in the right layer in the foreground
I've never been successful at implementing either - some browser quirk always prevents me from getting it right in most systems. z-index is the most problematic and if I recall correctly the background/foreground image tricks have issues with positioning.
But, there might be a good way to do it today. Last time I tried to layer images it was a few years ago.
I was hoping we could make the text transparent so we could set a background color on the containing div of /proc/empeg_screen.png and thus have colored text - but the aliasing with the text might make that hard.
|
Top
|
|
|
|
#297497 - 16/05/2007 21:05
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
I was hoping we could make the text transparent so we could set a background color on the containing div of /proc/empeg_screen.png and thus have colored text - but the aliasing with the text might make that hard.
Can that be done the other way around? Have the VFD image in the background, and layer a translucent foreground image (a plain colour) on top of that? Just like the real thing!
Cheers
|
Top
|
|
|
|
#297498 - 16/05/2007 22:13
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote:
Quote:
I was hoping we could make the text transparent so we could set a background color on the containing div of /proc/empeg_screen.png and thus have colored text - but the aliasing with the text might make that hard.
Can that be done the other way around? Have the VFD image in the background, and layer a translucent foreground image (a plain colour) on top of that? Just like the real thing!
I don't see why not -- there's no difference which image is on top, an image is an image.
Attachments
299286-lens.png (591 downloads)
|
Top
|
|
|
|
#297499 - 16/05/2007 22:17
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
And the gimp file, if you want to change transparency or colours...
Attachments
299287-lens.xcf (796 downloads)
|
Top
|
|
|
|
#297500 - 16/05/2007 22:23
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Ho-leee sheet... it works. In Firefox anyway. Good thinking, Mark. I'm going to eat dinner then sit back down and get a working version of this, then maybe someone can test in IE7.
Attachments
299288-Screenshot-Firefox.png (1117 downloads)
|
Top
|
|
|
|
#297501 - 16/05/2007 22:32
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Ugh. Those were bad... new lens image files that look a bit nicer, once overlayed on the fascia.
Attachments
299290-lens.zip (423 downloads)
|
Top
|
|
|
|
#297502 - 17/05/2007 02:51
Re: Dumb Javascript Question
[Re: canuckInOR]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Attached is a zip with a new default.xsl and some transparent fascia images in various colors (plus the GIMP source so you can make your own). This worked better than I thought it would, thanks Mark and canuckinOR. I'll add these images up to the wiki, too. This works in Firefox and it's been tested in IE6 with a hack in the stylesheet to allow transparent PNGs. Could someone check IE7?
Attachments
299299-ewl_transparent.zip (445 downloads)
|
Top
|
|
|
|
#297504 - 17/05/2007 08:48
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 15/08/2000
Posts: 4859
Loc: New Jersey, USA
|
I swear - I only stepped away for a minute...
Wow!!!
_________________________
Paul Grzelak 200GB with 48MB RAM, Illuminated Buttons and Digital Outputs
|
Top
|
|
|
|
#297505 - 17/05/2007 10:23
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Way cool, Mark!
Now to image-map those buttons..
|
Top
|
|
|
|
#297506 - 17/05/2007 10:53
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: This works in Firefox and it's been tested in IE6 with a hack in the stylesheet to allow transparent PNGs. Could someone check IE7?
It works with IE7 (under Linux+Wine) but not with IE6 (under Linux+Wine). I haven't yet looked inside the xsl for a tweak, though.
The colours all vary, of course:
That's FF2 on top, followed by IE7 and then IE6 on the bottom.
Attachments
299312-all.png (1077 downloads)
Edited by mlord (17/05/2007 10:54)
|
Top
|
|
|
|
#297507 - 17/05/2007 11:13
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
It works with IE7 (under Linux+Wine) but not with IE6 (under Linux+Wine).
I fiddled with the default.xsl file on IE6, and it seems that this test is failing:
if ( ... && document.body.filters)) {
I suppose that must be some kind of IE6 add-on that I'm missing (?).
[EDIT] Mmm.. the required system.reg entries are there, as are the DLLs. Turning on "script debugging" in IE6 gives this:
Line: 82 Char: 4 Error: Could not complete the operation due to error 80040154. Code: 0 URL: http://10.0.0.8/?FID=101&EXT=.xml
Apparently, "80040154" means.. "class not registered" [/EDIT]
Cheers
Edited by mlord (17/05/2007 11:39)
|
Top
|
|
|
|
#297509 - 17/05/2007 13:27
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
It works in IE6/Windows, the hack I found uses some trickery to display it correctly in IE5.5/6. I think because you are using it through Wine that might have something to do with it.
Yeah, all of the pieces are there in IE6/Wine, but they just don't function for this. What really matters is that it does work on IE6/Windows, since IE7 is restricted distribution.
I do find it odd that I can install/run IE7 (well, close enough) with Wine, but I cannot use it under standard WinXP without enabling the MS-Spyware feature aka WGA Validation.
Cheers!
|
Top
|
|
|
|
#297510 - 17/05/2007 14:46
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
Now to image-map those buttons..
EDIT:discarded attachment .. a better one was posted below
Here (attached) is my first hack at image maps. This modified default.xsl file assigns short-presses to the buttons and knob. Clicking on the outer ring of the knob gives Left/Right rotation actions, one per click.
Gotta improve this with long-press capabilities, but for now..
Enjoy!
Edited by mlord (17/05/2007 15:52)
|
Top
|
|
|
|
#297511 - 17/05/2007 15:51
Now with button presses; Hijack v473
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
Now to image-map those buttons..
Okay, here is a much improved version. This one holds the buttons down for as long as the mouse button is held down on them.
>>> This version requires Hijack v473 (or newer). <<<
I added a "button.R" suffix to the Hijack v473 button label decoder, to allow descriptive entries of button Release codes (rather than having to use the raw hex values).
So, upgrade Hijack, install this replacement default.xsl file, and enjoy!
Attachments
299343-default.xsl (575 downloads)
|
Top
|
|
|
|
#297512 - 17/05/2007 16:22
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote: And the gimp file, if you want to change transparency or colours...
Okay, I give up. What do I need to click on in Gimp to change the colour?
Thanks.
|
Top
|
|
|
|
#297513 - 17/05/2007 16:53
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote: Attached is a zip with a new default.xsl and some transparent fascia images in various colors (plus the GIMP source so you can make your own).
There are some really nasty jaggies around the lens. I've cleaned that up on the attached gimp file.
I'm guessing you used the fuzzy selection tool, to select the center portion, and just cut that region out. If you grow the selection a bit (turn on antialiasing, and feather edges with a radius of 3 or 4, and do the selection a couple of times), you can then get a slightly better selection. Then, open up the Paths dialog, and save the selection to a path. Now, you can hit cut to get rid of the center. In the eraser options, pick the smallest fuzzy eraser you can find, and set the opacity down to somewhere between 30-50%. Then, go back to your paths, and select that path you just made. Do the "stroke path" with "stroke using paint tool" turned on, and set to eraser. Now the edges of the fascia will be slightly transparent around the interior, and blend nicely with the lens.
The lens, I just made a big square. To get the actual lens shape, I made a new layer from the fascia, and converted it to a black image by changing the contrast/brightness, applying some paint touch-ups, and then inverting the colour. Next, add a layer mask to the lens, set to full opacity (white), and copy/paste the pure-black fascia. Then, apply layer mask. Tada... now you have a lens that matches the interior of the fascia.
The way I'd composite the images on the webpage is to use the "fascia" layer first (which has transparent corners, to show the webpage background color), then the /proc/empeg_screen.png image (which just gets moved into the correct location), then put the "lens" layer on last.
Attachments
299345-medium_render_transparent.xcf (744 downloads)
|
Top
|
|
|
|
#297514 - 17/05/2007 16:55
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
|
Quote:
Okay, I give up. What do I need to click on in Gimp to change the colour?
Photoshop.
_________________________
Remind me to change my signature to something more interesting someday
|
Top
|
|
|
|
#297515 - 17/05/2007 16:56
Re: Dumb Javascript Question
[Re: canuckInOR]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
While you're around.. how do I get my button onmousexxx= events to work in MSIE? They work fine as-is in Firefox.
??
|
Top
|
|
|
|
#297516 - 17/05/2007 16:57
Re: Dumb Javascript Question
[Re: andy]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
Quote:
Okay, I give up. What do I need to click on in Gimp to change the colour?
Photoshop.
I don't know how to do it there, either. But I suspect the solution is the same for both.
|
Top
|
|
|
|
#297517 - 17/05/2007 17:07
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
|
There are two overlapping squares on the main toolbar window. Click on the one that's on top.
_________________________
Bitt Faulk
|
Top
|
|
|
|
#297518 - 17/05/2007 17:27
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote:
Quote: And the gimp file, if you want to change transparency or colours...
Okay, I give up. What do I need to click on in Gimp to change the colour?
To start, if you haven't found the Layers dialog, open that up (Ctrl-L, or Dialogs->Layers), and select the lens layer. Before starting to play, I'd suggest making a duplicate layer (click the "two pages" icon next to the anchor, in the Layers dialog). You might want to turn off the visibility of the other layers, by clicking on the eye icon to the left of the layer thumbnail and name, so you can see the exact color you're getting (or not, if you'd do the changes while seeing how it'll look when composited over the fascia).
After that, there are a number of options, but the easiest (since we're dealing with a solid color) is to use one of the filters -- right click on the image to get your context-menu, and select Filters->Colors->Map->Color Exchange....
That pops up a dialog with a preview area, a "From Color" area, and a "To Color" area. Click the blue swatch of colour in the preview area, and then twiddle the sliders (RGB values from 0 to 1) in the bottom area. Click OK when you're happy. If you prefer to not twiddle sliders, you can click the colour swatch in the "To Color" area, instead, which will pop up another dialog, where you can have a whole bunch of different options for picking colours -- gimp's crosshairs method, a colour triangle, some sort of paintbrush thingy I haven't figured out, and 0-255 numerical entry boxes (in either HSV or RGB).
If that's not clear, let me know what part you're stuck on, and I'll try to clarify...
|
Top
|
|
|
|
#297519 - 17/05/2007 17:33
Re: Dumb Javascript Question
[Re: mlord]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote: While you're around.. how do I get my button onmousexxx= events to work in MSIE? They work fine as-is in Firefox.
I'll have to defer to cushman on that -- I don't have a clue about the ins-and-outs of browser idiosyncrasies. I'm not a web-guy by trade, and all my web-building experience has been in vi and Firefox.
|
Top
|
|
|
|
#297520 - 17/05/2007 17:41
Re: Dumb Javascript Question
[Re: wfaulk]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote: There are two overlapping squares on the main toolbar window. Click on the one that's on top.
Ah, that just changes the foreground and background colors that are used in a future paint-tool operation such as fill, gradient, draw, paint, or airbrush. In this case, Mark wants to change the color of pixels that already have a color, so changing those won't do anything effective.
|
Top
|
|
|
|
#297521 - 17/05/2007 17:50
Re: Dumb Javascript Question
[Re: andy]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote:
Quote:
Okay, I give up. What do I need to click on in Gimp to change the colour?
Photoshop.
Bah. Gimp can do pretty much anything Photoshop can.
Except colour profiles.
|
Top
|
|
|
|
#297522 - 17/05/2007 18:27
Re: Dumb Javascript Question
[Re: canuckInOR]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Quote: Okay, I give up. What do I need to click on in Gimp to change the colour?
Nice job on cleaning up the edges, how do you do that? I did the corners manually, but your method looks smooth.
Attached is a simpler xcf file. To change the lens color, select the "lens color" layer and then use the bukkit tool to fill that layer with the foreground color. Slide the layer transparency slider to get the right amount of opaqueness, then save as png.
Attachments
299357-medium_fascia_transparent.xcf (820 downloads)
|
Top
|
|
|
|
#297523 - 17/05/2007 19:01
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote:
Quote: Okay, I give up. What do I need to click on in Gimp to change the colour?
Nice job on cleaning up the edges, how do you do that? I did the corners manually, but your method looks smooth.
The basic idea is that selections follow pixel boundaries, so if you chop something up based on a selection, you end up with hard edges the way you did. The effect isn't so noticeable if the transition is between similar colours, but it's harsh when going between contrasting colours (or colour to transparency). Cleaning that up is simply a matter of manually applying a bit of anti-aliasing.
It's in the post above, but the simple version is that, after you make your selection for the interior, you can convert the selection to a path, and then stroke the path with a small fuzzy eraser with an opacity of 50% or so. The jaggies are still there -- that's just the nature of the square pixel beast -- but you can't see them because the eraser modifies their transparency so that they blend better.
Quote: Attached is a simpler xcf file. To change the lens color, select the "lens color" layer and then use the bukkit tool to fill that layer with the foreground color. Slide the layer transparency slider to get the right amount of opaqueness, then save as png.
I went with the slightly more complex version because if you keep the text layer the same size as the fascia layer, the black background shows around the fascia corners. It's not noticeable in gimp, but it is on a web-page with a white background.
An alternative would be to have 4 layers -- the black background, the empeg_screen, the lens, and the fascia. The lens and black background are both just simple squares slightly smaller than the fascia -- heck, you could make them 2pixel square images, and stretch them with width and height attributes in the html.
|
Top
|
|
|
|
#297524 - 17/05/2007 19:38
Re: Dumb Javascript Question
[Re: canuckInOR]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
I like the stroke selection command - that worked great. I learn something new every day (yesterday was the usefulness of the PNG alpha layer). Thanks for the tip! I've always wanted to know how to blend edges better, this gives me a good start. I modified the wiki page with updated xcf files.
|
Top
|
|
|
|
#297525 - 17/05/2007 20:21
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Glad I could help! Now we just need someone to scan an image of the display board, and we can get the electronic bits in there, too!
|
Top
|
|
|
|
#297526 - 17/05/2007 20:32
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Quote: While you're around.. how do I get my button onmousexxx= events to work in MSIE? They work fine as-is in Firefox.
It's not the onmousexxx (is that some kind of kinky mouse porno?) commands that are not working, it is the imagemap. Internet Exploder doesn't allow imagemaps on PNG images without some trickery. The same page where I got the transparency fix describes the problem here. I tried the modified script, but it is just making things much more complicated. I think our options are to a) get the script to work or b) slice up the image again.
What a pain.
|
Top
|
|
|
|
#297527 - 17/05/2007 20:59
Faster refresh + Hijack v475.
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Mmm.. maybe for MSIE we should simply lay the VFD image on top of the fascia, and use a GIF instead of PNG for the fascia. And keep it the other way around for Firefox, where everything works. Ugh. no really good solution without needing multiple sets of files, though.
??
Meanwhile, here (attached) is my updated default.xsl. I've removed the currently-playing info and next/pause/prev buttons, since the ones on player front panel image can do that (and more).
I've also bumped the refresh rate up to 8X/second, and managed to keep it from getting stuck when the player can't keep up (that part took *hours* to figure out).
It can actually go faster than 8X/second if you want, giving a pretty near to real-time effect.
To go along with this, I've also updated Hijack again (and again), to boost the webserver priority when serving /proc/ files.
The results are a lot of fun!
Attachments
299362-default.xsl (618 downloads)
Edited by mlord (17/05/2007 21:01)
|
Top
|
|
|
|
#297528 - 17/05/2007 21:20
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
I modified the wiki page with updated xcf files.
Those files have some text on the background, instead of a plain background.
Could you, perhaps, create another set of "finished" PNG files for me? Red + Blue + Amber ?
Thanks.
|
Top
|
|
|
|
#297529 - 17/05/2007 21:45
Re: Faster refresh + Hijack v475.
[Re: mlord]
|
carpal tunnel
Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
|
How about layering a 100% transparent GIF over the whole thing?
_________________________
Bitt Faulk
|
Top
|
|
|
|
#297530 - 17/05/2007 21:53
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Quote: Those files have some text on the background, instead of a plain background.
The text is just to see what it would look like if it were in use.
Open up Dialogs->Layers and click the eye to hide the bottom text layer - then when you do a File-Save As... and select PNG, it will prompt you to export and save only the visible layers.
If you select the lens layer (I think it is named New Layer in that file) you can use the paint bucket tool to fill in different colors and tweak the layer transparency to make it look like you want.
|
Top
|
|
|
|
#297531 - 17/05/2007 22:15
Re: Faster refresh + Hijack v475.
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
It can actually go faster than 8X/second if you want, giving a pretty near to real-time effect.
Heh.. the Breakout Game is playable at 10X/second, if one also bumps the knob repeat interval to 75msec..
Very difficult to win, though, but one can always still use the remote control and just watch the browser display instead of the VFD.
If we could somehow get javascript to catch keys from the PC keyboard (the arrow keys?) then those could be used for better gameplay..
Cheers
|
Top
|
|
|
|
#297532 - 17/05/2007 22:18
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Quote:
Quote: Those files have some text on the background, instead of a plain background.
The text is just to see what it would look like if it were in use.
Open up Dialogs->Layers and click the eye to hide the bottom text layer - then when you do a File-Save As... and select PNG, it will prompt you to export and save only the visible layers.
If you select the lens layer (I think it is named New Layer in that file) you can use the paint bucket tool to fill in different colors and tweak the layer transparency to make it look like you want.
I've tried it several times now, and there's obviously a step or two missing somewhere. And not everyone who wants the web interface has/uses Gimp.
It would be nice to just have a small set of finished fascias without the jaggies like the ones that I'm using right now.
Cheers
|
Top
|
|
|
|
#297533 - 17/05/2007 22:37
Hijack v476: another priority tweak
[Re: mlord]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Hijack v476 is now released.
This version keeps the web server at SCHED_RR (high priority) for files up to 64kB, which lets the web interface refresh without stalling.
Cheers
Edited by mlord (17/05/2007 22:37)
|
Top
|
|
|
|
#297534 - 17/05/2007 22:59
Re: Dumb Javascript Question
[Re: mlord]
|
veteran
Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
|
Quote: It would be nice to just have a small set of finished fascias without the jaggies like the ones that I'm using right now.
No problem, I uploaded blue, red, green and amber to the wiki entry. See if those look OK for you.
|
Top
|
|
|
|
#297535 - 17/05/2007 23:24
Re: Faster refresh + Hijack v475.
[Re: mlord]
|
carpal tunnel
Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
|
Quote: If we could somehow get javascript to catch keys from the PC keyboard (the arrow keys?) then those could be used for better gameplay..
Check out the "onkeypress" and related HTML tag attributes, which can be defined for <body>.
_________________________
Bitt Faulk
|
Top
|
|
|
|
#297536 - 18/05/2007 00:58
Re: Dumb Javascript Question
[Re: cushman]
|
carpal tunnel
Registered: 29/08/2000
Posts: 14493
Loc: Canada
|
Thanks Mark. Okay, starting a new thread on this to gain more attention now. I'm also (finally) leaving for the long weekend. -ml
Attachments
299373-1.gif (627 downloads)
Edited by mlord (18/05/2007 01:30)
|
Top
|
|
|
|
#297538 - 18/05/2007 15:01
Re: Gimp vs Photoshop
[Re: andy]
|
carpal tunnel
Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
|
Quote:
Quote: Bah. Gimp can do pretty much anything Photoshop can.
I don't doubt that, it is the user interface that baffles me, whenever I try using it I can never work out what is where. I'm not a frequent Photoshop user, but I can normally find things fairly quickly, at least compared to Gimp.
I've heard that before. It's the otherway around for me... I can find what I need in gimp, but get lost in Photoshop.
*shrug* Different strokes, I guess.
|
Top
|
|
|
|
|
|