Seams like this one is for real Delphi geeks only.
This is how it looks (sorry, can't post images)
Delphi IDE ugly toolbar
What's wrong - disabled Delphi IDE toolbar and menu buttons are ugly black/white images.
What I want to do - make them look gray-scaled.
How? I made some research. Main problem in virtual TCustomImageList.DoDraw
method. When paramater Enabled = False
it paints ugly things (see disabled buttons on screenshot). I created my own override for this function and it paints gray-scaled images when Enabled = False
Now I want to replace default DoDraw
with my own in IDE (using design-time package):
- I figured out that unit ImgList is compiled-in bds.exe, so trick with patching this function in
rtlXXX.bpl
will not work. - Searching for function's body content gave no result. Looks like bds.exe's implementation (I'm talikng about machine codes) of
DoDraw
is a bit different.
Any suggestions or ideas of how can I make this possible? As base example of runtime code patching I took Andy's Midas Speed Fix: FindMethodPtr
, HookProc
, UnhookProc