Official eMule-Board: Windows 7 Ui Integration - Official eMule-Board

Jump to content


  • (3 Pages)
  • +
  • 1
  • 2
  • 3

Windows 7 Ui Integration

#1 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 27 October 2009 - 01:29 PM

So this is my second topic in 2 days, I'd like to thank everyone who helped me compile Morph XT under Visual Studio 2008.

I already have used Windows 7 BETA extensively and have used the RC a bit too. And a few days ago Microsoft launched Windows 7 *OFFICIALLY* so I decided why not try to incorporate the new UI changes of Windows 7 into eMule. So I set out on a journey and downloaded the Windows 7 SDK and compiled eMule successfully with the help from developers here on the forum.

So what are these new Windows 7 UI changes.

Here is the code for adding these new UI features.
I've been tinkering a bit in the source code to see which is the best place. (PartFile.cpp or EmuleDlg.cpp) I'm not used to native GUI programming, but I'm currently learning and if someone could help me out. I already have an understanding of the Windows 7 UI behavior.

This post has been edited by Fareed: 27 October 2009 - 01:33 PM

1

#2 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 27 October 2009 - 02:16 PM

If you want to change the taskbar icon, then you should have a look at the TrayDialog files.
0

#3 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 27 October 2009 - 02:58 PM

View PosttHeWiZaRdOfDoS, on 27 October 2009 - 04:16 PM, said:

If you want to change the taskbar icon, then you should have a look at the TrayDialog files.


I believe the best place to place the code on file progress and errors. Windows 7 new UI removes the need to have tray icons for apps and it can be confusing to new users of Windows 7 and eMule. So relying on the Taskbar icon for eMule is the way to go and using Jump Lists to provide same functionality of the tray.
0

#4 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 27 October 2009 - 03:17 PM

Well, I don't know what exactly you want to do but as you posted a link to stuff that is related to the tray icon, I thought you'd want to change those. Maybe you want to explain WHAT you want to change? :angelnot:
Otherwise, you should turn towards the eMuleDlg files.
0

#5 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 27 October 2009 - 03:51 PM

I already am focused on eMuleDlg part, but unfortunately can't make heads or tails of the main HWND for the main window. Have you used Windows 7 before?

This post has been edited by Fareed: 27 October 2009 - 04:32 PM

0

#6 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 27 October 2009 - 04:50 PM

By "heads or tails" do you mean what?
I'm currently using eMule under Windows7 Ultimate - so yes ;)
0

#7 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 27 October 2009 - 07:56 PM

By heads and tails I mean the HWND data type used for the main eMule window. Have you attemptied to copy several gigabytes of files to another partion and noticed the animation taking place n the explorer icon.
0

#8 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 28 October 2009 - 06:07 AM

Sure I have, but where do you want to include that in eMule? During the hashing phase?

Heads and tails would be the eMuleDlg (SetWindowText will set the "heads" part, the "tails" part is done in the MuleStatusBarCtrl) though the file progress is calculated and displayed in PartFile.cpp and DownloadListCtrl.cpp.
Point me into the direction what you want to achieve and I can tell you where to look :angelnot:
0

#9 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 28 October 2009 - 07:39 AM

View PosttHeWiZaRdOfDoS, on 28 October 2009 - 08:07 AM, said:

Sure I have, but where do you want to include that in eMule? During the hashing phase?

Heads and tails would be the eMuleDlg (SetWindowText will set the "heads" part, the "tails" part is done in the MuleStatusBarCtrl) though the file progress is calculated and displayed in PartFile.cpp and DownloadListCtrl.cpp.
Point me into the direction what you want to achieve and I can tell you where to look :angelnot:



You know the pesky errors that take places, if eMule finds the file being used it says insufficient space. So if you were focused and working in another window you wouldn't know, but if I integrate the Windows 7 UI notifications. Instead of having to find out on your the icon will blink red until you give eMule the proper attention.

And if eMule is hashing I will integrate the same experience as the copying animation taking part in Windows 7, the icon will display progress of a hashing taking place. :thumbup:
0

#10 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 28 October 2009 - 07:41 AM

Well in that case you have to change some things but the main part should be in the PartFile.cpp - good luck :flowers:
0

#11 User is offline   Stulle 

  • [Enter Mod] Dev
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,728
  • Joined: 07-April 04

Posted 28 October 2009 - 09:52 AM

imo it's not worth the effort. eMule still supports older platforms and thus would this feature be exclusive to new Windows 7 while leaving out all the other users. you better just display it in the tray icon and be done with it, imo.
I am an emule-web.de member and fan! Hate me or people will get suspicious about you! Ever wondered if it's all worth the trouble?

Posted Image

No, there will not be a new version of my mods. No, I do not want your PM. No, I am certain, use the board and quit sending PMs. No, I am not kidding, there will not be a new version of my mods just because of YOU asking for it!
0

#12 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 28 October 2009 - 02:07 PM

View PostStulle, on 28 October 2009 - 11:52 AM, said:

imo it's not worth the effort. eMule still supports older platforms and thus would this feature be exclusive to new Windows 7 while leaving out all the other users. you better just display it in the tray icon and be done with it, imo.


Unfortunately it will only be Windows 7 exclusive, as these UI changes can only take place on the new taskbar. :S
0

#13 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 28 October 2009 - 02:36 PM

View PostStulle, on 28 October 2009 - 11:52 AM, said:

imo it's not worth the effort. eMule still supports older platforms and thus would this feature be exclusive to new Windows 7 while leaving out all the other users. you better just display it in the tray icon and be done with it, imo.



Stulle, I need just one thing to get me on course what is the main HWND (the variable) for the eMule window.
0

#14 User is offline   Some Support 

  • Last eMule
  • PipPipPipPipPipPipPip
  • Group: Yes
  • Posts: 3,412
  • Joined: 27-June 03

Posted 28 October 2009 - 02:52 PM

Currently eMule is using a statusbar icon rather than the taskbar by default, so this would have to be reworked or the effects of changes wouldn't be visible for many users. Still new things are fun to play with sometimes, so maybe some changes will make it into eMule, but it is for sure not a priority.

#15 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 28 October 2009 - 05:41 PM

View PostSome Support, on 28 October 2009 - 04:52 PM, said:

Currently eMule is using a statusbar icon rather than the taskbar by default, so this would have to be reworked or the effects of changes wouldn't be visible for many users. Still new things are fun to play with sometimes, so maybe some changes will make it into eMule, but it is for sure not a priority.



Thanks for the heads up, but has this been always the case. I mean are their any versions who wore solely based on the normal GUI. <_<
0

#16 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 29 October 2009 - 12:38 AM

I guess it's going to take time, I have to look for ways to adapt the code to MFC. Since the code published is relying on the non use of the MFC library. :furious:
0

#17 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 29 October 2009 - 12:45 AM

Unless their is a way to get the HWND variable used by the MFC CWnd. Is their a way? :ranting:

This post has been edited by Fareed: 29 October 2009 - 12:49 AM

0

#18 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 29 October 2009 - 12:56 AM

Found it, finally getting somewhere. :flowers:
0

#19 User is offline   tHeWiZaRdOfDoS 

  • Man, what a bunch of jokers...
  • PipPipPipPipPipPipPip
  • Group: Members
  • Posts: 5,400
  • Joined: 28-December 02

Posted 29 October 2009 - 05:48 AM

Usually you can use GetSafeHwnd() :flowers:
Are you going to post your code adaptions as snippets or releasing a new mod?
0

#20 User is offline   Fareed 

  • Member
  • PipPip
  • Group: Members
  • Posts: 21
  • Joined: 26-October 09

Posted 29 October 2009 - 08:38 AM

View PosttHeWiZaRdOfDoS, on 29 October 2009 - 07:48 AM, said:

Usually you can use GetSafeHwnd() :flowers:
Are you going to post your code adaptions as snippets or releasing a new mod?


Code Snippets, I'm not here to compete and I want to return something to the community. But I could you use help for the CPartFile, so I don't miss anything out. What are the main functions:
1) Not enough HDD space
2) File is in use
3) File complete and any triggers related to it

I don't think targeting the part functions is really needed, since these are random cases and could show a lot of errors. Maybe even cause the user to distrust eMule, and headliners is appreciated. B)
0

  • Member Options

  • (3 Pages)
  • +
  • 1
  • 2
  • 3

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users