Re: Undocumented WIn32 API
You don't need anything undocumented to create cascading menus. If you're trying to do something else, you're probably better off telling us what you want to do instead of just "tell me about undocumented Win32"...
The universe is a figment of its own imagination.
Re: Undocumented WIn32 API
Hey, cool it, man!
I know how to create cascading popup menus. What I'm looking for is to create something like the windows start menu & programs menu. I almost found this code at a site (It was supposed to be in VB, but what the heck, it's Win32) , but the file was missing from the server! The author (Andrew M. Barfield - I'm still trying to trace him) mentioned the use of undocumented win32 api to do the job.
We're trying to build something similar to the programs menu using the standard available calls, but we're having problems.
That's why I'm looking for them.
I hope you know understand my problem.
Hardeep.
Re: Undocumented WIn32 API
Perhaps you could tell us exactly what parts of what you want to do involve things that aren't supported by the standard API? I've looked at the start menu and offhand I can't think of much about it that looks like it'd be at all difficult to implement using normal, well documented code. I'm still just a bit uncertain whether I'm missing something obvious, or just completely misunderstanding the question, or what...
The universe is a figment of its own imagination.
Re: Undocumented WIn32 API
Well, Sir, to begin with, it's the quick exploration of any given directory. Directories can be explored using cascading menus, but the start menu does it suspiciously fast considering it can go to any no. of levels. It seems to create the submenus dynamically, after tracking the mouse position. Though we have MenuItemFromPoint(), how do we get the particular menu object(submenu)that is currently active?
In addition, there's the 'info tips' that appear when the mouse is over an internet shortcut in the favourites folder.
There's also the handling of right-click messages - this is something a menu cannot possibly give us, if we go by the documentation.
On the same lines, the drag-and-drop between submenus in different parts of the menu.
Finally, the vertical scrolling when the list is too long.
All these things together suggest that the code is at a lower level than the standard CMenu functions, especially trackpopupmenu.These features have us baffled.
Re: Undocumented WIn32 API
> Though we have MenuItemFromPoint(), how do we get the particular menu object
> (submenu)that is currently active?
The ON_COMMAND_RANGE macro is designed with this in mind. Submenu items are given consecutive IDs and the framework will call the ON_COMMAND_RANGE handler with the ID of the selected submenu item.
> In addition, there's the 'info tips' that appear when the mouse is over an
> internet shortcut in the favourites folder.
As I understand it, 'info-tips' are just tooltips used in other situations. Tooltips, right mouse-click and drag-n-drop support can be managed with popup menus by handling the WM_MENUSELECT message and checking what the mouse is up to, etc.
For details about the Windows taskbar, its messages and mouse callback events, and modifying the Start menu, see the 'Windows Shell API' documentation, especially the entries for 'Application Desktop Toolbars' and the 'Taskbar'.
Dave
Re: Undocumented WIn32 API
ON_COMMAND_RANGE only gives the ID of the menu item which is clicked... we want to know the menu item which is currently highlited (over which the mouse currently is). This will help us dynamically fill up a submenu, thereby getting good speed instead of loading the entire directory structure beforehand.
I went thru the documentation on WM_MENUSELECT and OnMenuSelect. Again, these can be used only when the menu item is clicked or activated by some key... we want to track the left button for menu selections, but be able to capture a right-click to bring up a context menu. It doesn't seem to be able to handle this.
And what about scrolling in popup menus?
Re: Undocumented WIn32 API
Perhaps this site: http://www.geocities.com/SiliconValley/4942/ has something that will assist you.
Rail
Recording Engineer/Software Developer
Rail Jon Rogut Software
[email protected]
http://home.earthlink.net/~railro/
Thanks!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
I don't think I can thank you enough! I knew that the "Truth IS out there" and now I've found (some part of) it!
Re: Undocumented WIn32 API
> I went thru the documentation on WM_MENUSELECT and OnMenuSelect. Again,
> these can be used only when the menu item is clicked or activated by some
> key...
The documentation can be misleading. If you actually look at the messages sent (using Spy++), you will find that WM_MENUSELECT is sent when the menu item is highlighted by the mouse passing over it, without any clicking or key pressing. This seems to be part of what you wanted.
Unfortunately I don't know about scrolling in popup menus.
Dave
Re: Undocumented WIn32 API
I'm looking for Undocumented WNET.. api
calls. Have you got any idea where I can find the list?
Re: Undocumented WIn32 API
I haven't seen anything specific to WNET, but here's another site which has some links that may be useful: http://www.cs.cmu.edu/afs/cs.cmu.edu...WWW/undoc.html
Rail
Recording Engineer/Software Developer
Rail Jon Rogut Software
[email protected]
http://home.earthlink.net/~railro/