Author Topic: manifest theming  (Read 3260 times)

Offline the_ief

  • Shy artist
  • Posts: 5
manifest theming
« on: September 21, 2009, 13:31:19 »
I've made some useful changes to modplug (manifest embedded theming) ... i've created a svn patch... to who do I mail the patch?

Offline Saga Musix

  • OpenMPT Developers
  • *****
  • Posts: 7,095
  • aka Jojo
    • Download music, samples, VST plugins: Saga Musix Website
  • Operating System: Windows 10 x64
manifest theming
« Reply #1 on: September 21, 2009, 13:41:12 »
What exactly do you mean by "manifest embedded theming"? OpenMPT has a manifest that allows custom XP (Vista?) themes.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Offline the_ief

  • Shy artist
  • Posts: 5
manifest theming
« Reply #2 on: September 21, 2009, 13:46:58 »
Quote from: "Jojo"
What exactly do you mean by "manifest embedded theming"? OpenMPT has a manifest that allows custom XP (Vista?) themes.


Correct there's one in the resource file (also with ID 1 which is correct) but changes to VS2008+ this doesn't work anymore.
You'll specifically have to link this e.g. :
Code: [Select]

#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")


Your manifest in the resource will still be working on older compilers AND newer compilers and it supports different chipsets.

I'll post the code here, you'll have to paste it in stdafx.h

Code: [Select]

#if _MSC_VER >= 1500 //compiler VS2008 or higher?
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif

Offline Saga Musix

  • OpenMPT Developers
  • *****
  • Posts: 7,095
  • aka Jojo
    • Download music, samples, VST plugins: Saga Musix Website
  • Operating System: Windows 10 x64
manifest theming
« Reply #3 on: September 21, 2009, 13:48:52 »
Do you use mptrack_08.sln or mptrack.sln? The manifest works in VS2008 here.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Offline the_ief

  • Shy artist
  • Posts: 5
manifest theming
« Reply #4 on: September 21, 2009, 15:13:14 »
Quote from: "Jojo"
Do you use mptrack_08.sln or mptrack.sln? The manifest works in VS2008 here.


My bad, sorry completely overlooked the '08 sln file. thx for pointing out though.. (could have saved me the time)

edit:
Did a complete checkout.. and tried the '08 sln file. and indeed common controls are activated.

Though maybe it's an interesting feature (example above) you don't have to fool around with manifests anymore in your resource scripts.

http://msdn.microsoft.com/en-us/library/ew0y5khy%28VS.80%29.aspx