RE: Have you customized your ImageComposer?
  Home FAQ Contact Sign in
microsoft.public.imagecomposer.discussion only
 
Advanced search
POPULAR GROUPS

more...

 Up
RE: Have you customized your ImageComposer?         

Group: microsoft.public.imagecomposer.discussion · Group Profile
Author: Jan Kucera
Date: Jan 23, 2007 00:46

Hi again,
I know I have promised to try to develop a newer Image Composer, but this
is not work for a month or two and there is still very very seductive idea
to write it using Windows Presentation Foundation, which is quite new to me
and it will take a time to get some new tricks in it to work.

However today, I decided to share my resource modifications in current
binaries available, which I did a couple of years ago to greatly improve the
productivity and comfort of working in Image Composer.
First of all, let me for those plain web designers out there ;-) explain a
little bit what the resources are and what they are for. When you make a
program, you typically have a code which does things and data which are
already prepared pieces of things. ...um well you developers there please
forgive me. :-D For example, your code displays a message box, and in the
resources is stored, what text will be displayed. For example I expect all
of you have seen this message already:

STRINGTABLE
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
{
8001, "The selected sprite could not be scaled to the requested size
because a sprite cannot fall below the minimum size of 3 x 3 pixels."
}

So in the code is - if the guy wants to resize this nice picture to a pico
size, show a message with text 8001 and lose all love for him. ;-)

Using this example, I wanted to show that data are separated from code - and
that the program does not know what text it will display - and that is
possible to modify the text without breaking the functionality of the
program.

Isn't it cool? :-) Yep! And you can have quite a fun by modifying text in
your favorite programs (like MSN Messenger). But this is where the story
begins. Now, the main question is, what all is stored in data part of the
program? Well...for example in Microsoft Image Composer, this includes:

Cursors, Icons, Bitmaps, Menus, Dialogs, String table (texts), Accelerators
(keyboard shortcuts), and some others.

Wait a minute... you say that I can change ...what items will be in the
menu?
No problem!
Cool...um...why I would do it?
Come On! For example, if you create a text, then go to Effects and create a
drop shadow... the sprite will grow more than it is necessary. So let's fit
the bounding box...you click the right button..and...hey...oh yes, you have
to switch to Arrange, there it is when you click it. ...imagine you can have
both Crop and Fit to bounding box commands available when you click even if
you are in Effects!

Or... if you use Select Color Region in Cutout tools... did you ever
wondered, which pixel gets selected when you click with this funny magic
wand cursor? Just change it to something less magic but more useful!

And so on. I am not going to write tons of these fascinating paragraphs,
not only because I'm bad at writing. ;-) If you are now excited that the
barriers are gone, I should note that they aren't. Remember, you can only
change what does the program look like or say, not how does it do. For
example, the right-bottom selection bug cannot be repaired this way.

Two questions remain. First of all - how to do that?
This answer is simple. There exists a free, small, easy and powerful tool
called ResourceHacker which you can download at
http://www.angusj.com/resourcehacker/. Just run it, open the imgcomp.exe and
explore. Unfortunately, it's development is also gone as it is with
ImageComposer, the most painful is that it does not display PNG resources
which use most of todays software (but you can export/import them), though
the ImageComposer does not use it. You always can save your modifications
into another exe so you won't corrupt anything if something goes wrong. Feel
free to ask me if you need any help.

The second question is.... hmm do I have to do it myself?
Well...if you don't, you miss the fun. Even the authors of ImageComposer
had a sense of humour, you could for example find their portraits in bitmap
resources (it went through the Technical Pen effect, though :-)).... or.. I
always wondered why there are EXPLODE and FIRE sounds included in MIC. :-D

If you are afraid of playing with the resources and you have a really
good idea which you want to try or share, just reply and I will try it for
you. What I can offer nowadays is a ImageComposer as I had modified it. I
even cannot imagine to work with the original program! While it is a long
long time ago, I cannot remember what all I've changed, but the main
features list is here:

Cursors:
- I created my own cursor instead of the magic wand which has a cross so
you see what pixel you are clicking at

Bitmaps:
- Nothing special, just adjusted some pictures which can be seen eg. in
Arrange panel to match the window colors of XP theme

Icons: I don't find any critical problems in icons and don't have much time
to play with updating them to XP theme ;-)

Menus: here we go... (context menu is the one you get after clicking the
right button)
- I included Save Selection As... in the context menu of multiple
sprites/sprites group
- I added Crop and Fit Bounding Box items to Effects context menu

Dialog: this is where the most of my drastical changes are. Please be
aware, I made the ImageComposer useless on resolutions smaller than
1024x768!
- Font pane: Completely redesigned, see screen shot.
- Color palette dialog + New color palette dialog: also redesigned, see
screen shot.
- Paint pane: increased width a little bit (to the same as new font pane)
- Texture transfer pane: increased width to include all textures without
a scroll bar
- Effects pane: this was the least comfort pane at all, I started to
modify resources beacause of it. I resized it to include 12x2 parrots at a
time (thats the maximum for 1024x768), see screen shot

String table: well... I don't think I changed anything here.

Accelerators: by the way, you find some useful keyboard shortcuts when you
look at this table ;-)
- My ONLY and superior keyboard shortcuts for clipboard operations are
back! (Ctrl+Insert for copy, Shift+Insert for paste and Shift+Delete for
cut) I think you can remember these from the older days and they still works
through the Microsoft products (Windows, Office, ...) so I wanted them in
ImageComposer as well. Sorry to all young teenagers, but I HATE Ctrl+C, V,
X. Of course, there is no reason to remove them when everybody uses them, so
they still work in my ImageComposer. ;-)
- The align buttons are mapped to numerical keys near the num-lock, for
example align top-left is Ctrl+7, align centers Ctrl+5 and so on.
- Shift+Home/End .. bring to front, back resp.
- Alt+Left arrow or Right arrow - flip horizontally, Alt+Up arrow or
Bottom arrow flip vertically
- and finally my favourite Ctrl+B to Fit Bounding Box.
(actually I see now I also mapped center vertically and center
horizontally to numerical keyboard but these don't work since I assigned
them the same keys as to align)

Also I created an external manifest file which allows the Image Composer to
take XP themes on it, but there's security issue in Vista RC2, which I'm
running at the moment, so this is not visible from the screen shots included.

Well and that's more or less all. If you are interested and want to try my
copy, I could send you one I think.. :-) And if you have any cool ideas
share them with us!

Have a nice day,
yours Jan

PS: I will send the screenshots as a replies to this post as soon as it
appears
since the attachment size limits.

"Jan Kucera" wrote:
> Or are you just using the shipped version as is? 1.0/1.5
> Any hacks?
> Resources editing?
> Registry tweaks? (all of us know about multiple undos one, I think... ;-) )
>
> Jan
>
>
no comments
diggit! del.icio.us! reddit!

RELATED THREADS
SubjectArticles qty Group
Re: UPDATE Sprint Dumps Needy Customers - Gismodo - READ THIS - Interesting Customer Service Modelalt.cellular.sprintpcs ·