OK, I got my current theme pretty much working with the new litestep installer (though why it includes jkey and uses *hotkey in the hotkey.rc is beyond me).
...except skinbox just doesn't work. No error, except each recycle LS asks if I want to switch to the default theme (why?).
Is there any way to get Skinbox working...OR is there a suitable replacement? While shortcut and label would both technically work, neither stay on top after gaming, which is why I've stuck to Skinbox.
Ahhh, skinbox... I'm so sad it doesn't work under .24.7, too :(
...and I never found anything to replace it!
Wellcome to the "skinbox's nostalgics club" :)
Do you think a RabidCow's module could be easily replaced by a non-RabidCow one ?
:(
Well, off to see about putting labels and shortcuts inside boxes and see if THAT works...
Exclusive news :)
Rabidow has told me he was working on a skinbox build that works with .24.7 :D
Wait and see...
Nice!
Now once I get all my stuff working and get all modules netloaded, when that comes out I'll move to OTS2 and the new installer version (I think getting syntax right when using textedit through mzscript will be the most interesting).
i hope Rabidcow will get this working and released soon, as last week once more made clear to me that there is NO shortcut module that has all features i request or isn't buggy. has become pretty annoying :/
yoo hoo, there's a beta build of new skinbox.dll over at shellfront.org :)
Rabidcow, you're the god of useful modules
doh, why do my OnMouse events not work?
QLSkinBoxOnMouseOut !SkinBoxShow "QLSkinBox"
tried it with and without quotes, but somehow skinbox does not hide itself
edit: !! oh well, figured it out: no quotes, and the !bang has to be
!SkinBoxShow name false (or true)
Elkmonster, Cerbie: Yes, yes, yes !!!
Thanks a lot RabidCow !!!
doh, i can't get label to work with skinbox the right way. the label is hooked into the skinbox, but when the mouse cursor is over the label, skinbox runs the MouseOut bang, although the mouse is in fact still over the skinbox :(
This is a normal reaction, because the hooked label and the hooking skinbox are not the same object. You will have the same "bug" with every module you could hook, even skinbox itself... and you will have the same "bug" if you used lsbox instead (if it had the mousein/out feature)
but this is not a bug
i know it's not a bug :) would be a nice feature though.anyways, mzscript combined with skinbox makes it easy to realise these kind of boxes, so no problem here anymore :)
I could make it not send the MouseOut event if the mouse moves over a child window, but then you wouldn't always get MouseOut when it really is out.
Maybe you could have a toggle that the themer can turn on or off about whether it sends the MouseOut event if the mouse moves over a child window...
Hmmm...can't get any command-line arguments passed by skinbox (1.4.1). Also $evars$ substitution seems not to work yet. Need something like "...2xexplorer.exe $drives$ /S:DRV" as command. Synthax? A model skinbox in the documentation would be nice. Anyway a great module :)
don't know if i understood you right, but you might have to replace $ by the skinbox aquivalent \d
Yes thanks, I tried that, but any space in the command-line seems to disable it. I tried to simplify the commands and only lines without spaces work, with no help of putting "",{},[] around. Also tried !SkinBoxExec without success. Are you able to start a programm with some arguments?
$evars$ are expanded by litestep before skinbox has a chance to do anything with them. It's not possible for it to be messed up, most likely it's expanding to something including backslashes, which skinbox tries to evaluate. Either use \d or surround it with the block escape: {["$path$"]}
For example:
*skinbox test 50c -24 24 24 #t
testOnLButtonClick {["$FileManager$" "$drives$"]}
; or:
testOnLButtonClick "\dFileManager\d" "\ddrives\d"
If all else fails, put in !alert '
original setting' and you can see what it's expanding to.
Hm, for clarity:
!SkinBoxExec . !alert "$FileManager$"
=> C:INNTxplorer.exe
!SkinBoxExec . !alert {["$FileManager$"]}
=> C:\WINNT\explorer.exe
!SkinBoxExec . !alert "\dFileManager\d"
=> C:\WINNT\explorer.exe
The problem, I guess, is the space, necessary for argument separation. Following settings do not work:
mycomOnMButtonClick "C:\2xExplorer.exe" "\ddrives\d"
mycomOnMButtonClick "C:\\2xExplorer C:\\"
mycomOnMButtonClick "C:\2xExplorer C:\"
mycomOnMButtonClick "C:\2xExplorer" "C:\"
mycomOnMButtonClick "C:\\2xExplorer" "C:\\"
while this works:
mycomOnMButtonClick "C:\\2xExplorer.exe"
try using single quotes:
mycomOnMButtonClick "C:\\2xExplorer.exe '\ddrives\d'"
or
mycomOnMButtonClick "C:\\2xExplorer.exe 'C:'"
Tried that, no luck with both of them.
mycomOnMButtonClick "\dFileManager\d"
works, just cant pass any argument.
Thanks for suggestions anyway.
PS: I didnt forget the final backslash/es in my rc.
Phew...I think I found it.
mycomOnButtonClick "C:\\2xExplorer.exe " "C:\"
The space at the end of the program part seems to be essential and double bslash in argument has to be ommited.
And now the fun part starts......
Thanks,
R.
The ones with the argument inside quotes with the file name are not going to work because SkinBox expects everything before the first space to be the filename. (It uses the entire line as the command.) So if you use "2xExplorer.exe C:", it expects that to be the name of the file, which is actually impossible.
Seriously, use !alert to debug stuff:
!SkinBoxExec . !alert '"C:\2xExplorer.exe" "\ddrives\d"'
=> "C:\1xExplorer.exe" "::{clsid from $drives$}"
!SkinBoxExec . !alert '"C:\2xExplorer" "C:"'
=> "C:\1xExplorer" "C:"
!SkinBoxExec . !alert '"C:\\2xExplorer" "C:"'
=> "C:\2xExplorer" "C:"
!SkinBoxExec . !alert '"C:\\2xExplorer.exe"'
=> "C:\2xExplorer.exe"
(actually, you could use C:\3xExplorer.exe instead of \\, but that would be silly.)
The space you say it requires doesn't make a lot of sense... Did you try without the space but with the .exe? Otherwise that's just weird.
Ahhrrghh....
Tried it again, and this time it works perfectly without the space. I tried for hours the day before yesterday without success. Maybe something happened when saving/recycling. Maybe I am just to old and rusty.
Sorry, I hope I didnt confuse anybody.
The module is a slammer.
er... once again, a silent call for rabid cows around here ;)
how do you hook modules to a skinbox?
this is the second time i ask this question, but i can't find the posts/thread of the first time due to the still unavailable search function... (i even suggest that the thread has been lost or something... because i also searched for the word "revolutionary" which was in one of my posts, and i couldn't find it anywhere). :)
You can do something like:
<BoxName>OnCreate !execute [!VWMLoadBoxHook : {@ih}][!LabelLsBoxHook SomeLabel : {@ih}]
And to hook a skinbox named "Inside" to another,
TheParentBoxOnCreate !SkinBoxLoadBoxHook name=Inside : {@ih}
(this "Inside" box is created implicitly)
The only module I don't think you can hook is layercuts, since.. it appears you have to define your hooked 'cuts inside a .box file.
The : is a placeholder for the path to the box file. (since most modules just ignore it anyway) If the module needs a box file, put its path there instead. (there may be a problem with paths that need quotes...)
it's me again :D
--------------------
not even 5 minutes after submitting the original post, he got it done by himself, accidently finding the photoshop transparency export option. although he still would appreciate some pieces of information on how to do this with the gimp, he slapped himself for being stupid.
--------------------
(ignore or make fun of the following original post :D )
ok, i can't get my skinbox transparent. it doesn't support magic pink, right?, so you've to use the png alpha channel, right? what should i do then? i tried all the afternoon with the gimp and photoshop, and never got anything to work at all :(
i just need some advice on what to do at all, like "do this or that with the alpha channel"...
Interesting. So the PNG alpha channel does work in SkinBox. Only if you do it that way though. Is the PNG version or header different or something? Creating a PNG any other way doesn't appear to work as translucent regions appear opaque and black.
The alpha channels seems to just work if you use #L, and if you don't use #L then it works if you set the box' alpha to 254 (or less). PNG images saved from The Gimp (only tried 2.0) seem to work just fine, no special method needed.
Magic pink won't work. Somehow I think it might if you say the right magic words, but I'm not gonna promise anything.
...but using PNG with alpha channel doesn't work if you hook something into the skinbox :(
...but it's very stimulating to search for a way around (tricks forever) :)
hm, i have the gimp 2.0 (windows beta), and it didn't work... but it may have to do with the fact that i worked a lot with layers which i took at least partially from bmp images, so maybe this messed some things up.
Smurth: it doesn't work when hooking modules?? oh no... that was what i just wanted to do next, just didn't try so far... :'(
maybe can you tell me your tricks...? :) i need to use skinbox, everything else would be a real big mess :(
[edited something here, then removed because it was crap :/]
you know, i absolutely want to use skinbox because of its !Bitmap bang. as far as i can tell, there's no other module like this that allows to change its bitmap on runtime, is there?
No, there's really no module like this :)
hmm.... Tricks are just thhat: tricks!
Then, everything depends on "what do you want to do and what can be sacrificed ?"
Then...
You can use fake transparency, but that doesn't seem to be working right. :/
I'm not sure what's going on here, the hooks work, and the resulting windows are there. You can even click on them sometimes... afaik this might even be a bug in Windows with UpdateLayeredWindow. :(
seems there's no way to avoid heavy scripting and a lot of hidden labels (going along with higher memory usage)... :(
it's a pity, everything would have been so comfortable and easy... :(
RabidCow: i noticed SkinBoxTile seems not to work. whether i set it false or true, the image was always tiled.
ah, and btw: i suppose you cannot hook modules from one box to another at runtime?
i suppose you cannot hook modules from one box to another at runtime?
Yes you can; simply hook the module(s) to the new box :)
(you can hook modules to regular windows, too. But you have to know the handle and it's a bad idea to close that window before hooking the modules to antoher)
hmm, get no problem with tile
ah, at least something to work with... :D
Don't expect modules to be too happy about being rehooked into a new box. They're probably not designed with that in mind, so it's likely to cause problems.
i thought it sounded too nice to be true ;)
One time, I've tried to hook modules (systray and tasks, if I remember right) to the active window (in fact, re-hooking them every 250ms)
It works fine; very fine. No problem until I close one window...
Then, I guess re-hooking modules to other modules shouldn't be a problem... But I can be wrong; You are the PRO, Rabidcow :)
Hey, I have a new request about skinbox:
; doesn't react on mouse anymore and passes all actions through the lower windows
< boxname > Ghosted boolean
I'm sorry RabidCow, nevermind my last post. Photoshop was matting transparent regions against white :X
ElkMonster: The Export Transparent Image wizard is especially dumb about matting (defaults to white), at least in the version I'm using.
I found it easier to Save For Web and set matting to none, instead of Save As (doing so would result in regions of alpha appearing black, obvious from the greyed Alpha Channels checkbox).
i like this thread :)
i have to say that xlabel is more and more becoming the ultimate "über-module"... taking over lots of features skinbox used to have exclusively. if maybe both modules were merged into one, that would make it perfect :)
forget this post (once again, i should think it over before posting), a can't differ skinbox from xlabel :/