Archive: Bitmap and MUI_HEADER_TRANSPARENT_TEXT, any example?


Bitmap and MUI_HEADER_TRANSPARENT_TEXT, any example?
Issue: Would like to have a full with bitmap with text over the top with MUI and without MUI resource manual editing.

I Tried with variations, see my tryout below.

Is there a Bitmap and MUI_HEADER_TRANSPARENT_TEXT example somewhere? What more messages do I need to send or is my only option to dive into the sourcecode of nsis :-? and puzzle along with MUI_HEADER_TRANSPARENT_TEXT implementation.

ANY hint would be appreciated, I'm a little lost why I cannot simply get it working the way I expect.

Maybe I ate to much turkey during christmas, bad for my brain ;)

"TransparentTextFullwitdthHeaderBitmap.nsi"
===========================================
;--------------------------------
;NSIS Modern User Interface
;Header Bitmap Example Script
;Original by Joost Verburg
;
;* Modified for testing transparent
; text over full width bitmap

;--------------------------------
;Include Modern UI

!include "MUI.nsh"

;--------------------------------
;General

;Name and file
Name "Modern UI Test"
OutFile "MyTest.exe"

;Default installation folder
InstallDir "$PROGRAMFILES\Modern UI Test"

;Get installation folder from registry if available
InstallDirRegKey HKCU "Software\Modern UI Test" ""

;--------------------------------
;Interface Configuration

!define MUI_HEADERIMAGE
;!define MUI_HEADERIMAGE_RIGHT
!define MUI_HEADERIMAGE_BITMAP ".\topsetup.bmp"
!define MUI_HEADERIMAGE_BITMAP_NOSTRETCH
;!define MUI_HEADER_TRANSPARENT_TEXT

!define MUI_PAGE_CUSTOMFUNCTION_PRE muionGUIInit

;--------------------------------
;Pages
!insertmacro MUI_PAGE_LICENSE "${NSISDIR}\Docs\Modern UI\License.txt"
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES

!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES

;--------------------------------
;Languages

!insertmacro MUI_LANGUAGE "English"

;--------------------------------
;Installer Sections

Section "Dummy Section" SecDummy

SetOutPath "$INSTDIR"

;ADD YOUR OWN FILES HERE...

;Store installation folder
WriteRegStr HKCU "Software\Modern UI Test" "" $INSTDIR

;Create uninstaller
WriteUninstaller "$INSTDIR\Uninstall.exe"

SectionEnd

;--------------------------------
;Descriptions

;Language strings
LangString DESC_SecDummy ${LANG_ENGLISH} "A test section."

;Assign language strings to sections
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SecDummy} $(DESC_SecDummy)
!insertmacro MUI_FUNCTION_DESCRIPTION_END

;--------------------------------
;Uninstaller Section

function muionGUIInit

; Give labels a transparent background
GetDlgItem $0 $HWNDPARENT 1037
SetCtlColors $0 0x00FF00 transparent
ShowWindow $0 ${SW_HIDE} ;Or what else?
ShowWindow $0 ${SW_SHOW}
GetDlgItem $0 $HWNDPARENT 1038
SetCtlColors $0 0x00FF00 transparent
ShowWindow $0 ${SW_HIDE}
ShowWindow $0 ${SW_SHOW}

functionend

Section "Uninstall"

;ADD YOUR OWN FILES HERE...

Delete "$INSTDIR\Uninstall.exe"

RMDir "$INSTDIR"

DeleteRegKey /ifempty HKCU "Software\Modern UI Test"

SectionEnd
===========================================


Simply uncommenting MUI_HEADER_TRANSPARENT_TEXT in your script works fine for me. I can't see the problem.