Difference between revisions of "Shell status"
m |
|||
(4 intermediate revisions by 3 users not shown) | |||
Line 20: | Line 20: | ||
[[File:Symbol neutral vote.png]] '''CQueryAssociations''': Only the documented part is implemented; In windows more internal classes expose IQueryAssociations. It is really questionable if any of the undocumented part merits to be implemented.<br> | [[File:Symbol neutral vote.png]] '''CQueryAssociations''': Only the documented part is implemented; In windows more internal classes expose IQueryAssociations. It is really questionable if any of the undocumented part merits to be implemented.<br> | ||
[[File:Symbol oppose vote.png]] '''DAD_*''' functions<br> | [[File:Symbol oppose vote.png]] '''DAD_*''' functions<br> | ||
− | [[File:Symbol oppose vote.png]] ''' | + | [[File:Symbol oppose vote.png]] '''CDropTargetHelper''' (called CDragDropHelper in windows): Implements the visual effects that are used when dragging shell items. It is closely related to the DAD_* functions<br> |
[[File:Symbol oppose vote.png]] '''SHAppBarMessage'''<br> | [[File:Symbol oppose vote.png]] '''SHAppBarMessage'''<br> | ||
[[File:Symbol oppose vote.png]] '''OpenAs_RunDLL'''<br> | [[File:Symbol oppose vote.png]] '''OpenAs_RunDLL'''<br> | ||
Line 80: | Line 80: | ||
| Shell desktop || | | Shell desktop || | ||
'''Components used by explorer that implement most of the desktop'''<br> | '''Components used by explorer that implement most of the desktop'''<br> | ||
− | [[File:Symbol support vote.png]] '''CShellBrowser''': It doesn't support refreshing environment variables. When a folder is | + | [[File:Symbol support vote.png]] '''CShellBrowser''': It doesn't support refreshing environment variables. When a folder is dragged on its edge it should show a docking bar with its contents. It should use RegisterDeviceNotifications and get notifications about storage devices and call SHChangeNotify accordingly.<br> |
[[File:Symbol support vote.png]] '''SHCreateDesktop, SHDesktopMessageLoop'''<br> | [[File:Symbol support vote.png]] '''SHCreateDesktop, SHDesktopMessageLoop'''<br> | ||
[[File:Symbol support vote.png]] '''ShellDDEInit'''<br> | [[File:Symbol support vote.png]] '''ShellDDEInit'''<br> | ||
Line 105: | Line 105: | ||
'''Components used to implement autocomplete'''<br> | '''Components used to implement autocomplete'''<br> | ||
[[File:Symbol oppose vote.png]] CACLHistory<br> | [[File:Symbol oppose vote.png]] CACLHistory<br> | ||
− | [[File:Symbol oppose vote.png]] | + | [[File:Symbol oppose vote.png]] CACListISF (CACLIShellFolder)<br> |
− | [[File:Symbol support vote.png]] | + | [[File:Symbol support vote.png]] CACLCustomMRU<br> |
[[File:Symbol oppose vote.png]] CACLMRU<br> | [[File:Symbol oppose vote.png]] CACLMRU<br> | ||
[[File:Symbol support vote.png]] CACLMulti<br> | [[File:Symbol support vote.png]] CACLMulti<br> | ||
Line 149: | Line 149: | ||
[[File:Symbol oppose vote.png]] CBrowserBand<br> | [[File:Symbol oppose vote.png]] CBrowserBand<br> | ||
[[File:Symbol oppose vote.png]] CComCatCacheTask<br> | [[File:Symbol oppose vote.png]] CComCatCacheTask<br> | ||
− | [[File:Symbol oppose vote.png]] CCommBand<br> | + | [[File:Symbol oppose vote.png]] CCommBand: Class for [https://msdn.microsoft.com/en-us/library/Bb776819 CATID_CommBand]/Horizontal Explorer Bar?<br> |
[[File:Symbol oppose vote.png]] CDockingBarPropertyBag<br> | [[File:Symbol oppose vote.png]] CDockingBarPropertyBag<br> | ||
[[File:Symbol oppose vote.png]] CGlobalFolderSettings<br> | [[File:Symbol oppose vote.png]] CGlobalFolderSettings<br> | ||
Line 165: | Line 165: | ||
! colspan="2"| shlwapi | ! colspan="2"| shlwapi | ||
|} | |} | ||
+ | |||
+ | [[Category:Development]] |
Latest revision as of 07:30, 11 May 2021
This is WIP. For now I tried to list as many parts of shell32 as possible. Note that I'm comparing ros shell with windows 2003 one here.
Current Status and Roadmap
Legend: means only bugfixes needed. means unimplemented. means that it needs lots of work, either it is too buggy or implemented in a hacky/wrong way.
shell32 | |
---|---|
Core services |
Core functions of the shell. ALL of these should be green in the end. |
Def namespace objects |
Core objects used by the namespace components to interact with the user. Fixing the noted problems in these items is really important |
Namespace |
The components that constitute the shell namespace. Fixing the gray and red components that follow isn't really important for now. The rest are |
Shell menus |
Components that implement the menu like toolbars of the shell |
Built in shell extensions |
Components that aren't part of the core and are mostly instantiated in the same way shell extensions are |
Shell automation |
Components exposing shell functionality with the IDispatch interface. As of now these are barely implemented |
Shell desktop |
Components used by explorer that implement most of the desktop |
Components intentionally ignored |
Misc components with 0 chance to get implemented |
Uncategorized components |
Misc components that I don't know what they are for |
browseui | |
Auto complete support |
Components used to implement autocomplete |
Shell bands |
Implementations of IBandSite and IDeskBand. |
Classic browser toolbar |
The exported components that make up the toolbar in the browser. |
Shell browser |
The classic file explorer. |
Tasks support |
The components implement a com based support for work item objects. |
Misc |
Misc components. I'm not sure what most of them are for or if we need them |
explorer | |
shlwapi |