- Member _tWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd)
save previous shell application in config file
save previous shell application in config file
- Member abort (void)
- unimplemented
- Member BackgroundWindow::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
- Changing the PaintDesktopVersion-Flag needs a restart of the shell -> display a message box
- Member BookmarkList::import_IE_favorites (struct ShellDirectory &dir, HWND hwnd)
- read shell links
- Module bridgeif
- :
- compact static FDB entries (instead of walking the whole array)
- add FDB query/read access
- add FDB change callback (when learning or dropping auto-learned entries)
- prefill FDB with MAC classes that should never be forwarded
- multicast snooping? (and only forward group addresses to interested ports)
- support removing ports
- check SNMP integration
- VLAN handling / trunk ports
- priority handling? (although that largely depends on TX queue limitations and lwIP doesn't provide tx-done handling)
- Member BrowserNavigator::navigated (LPCTSTR url)
- move this into DocumentComplete() ?
- Member ChildWindow::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
-
- Member DC_vCopyState (PDC pdcSrc, PDC pdcDst, BOOL To)
- should aways be != NULL
- Member DesktopBar::ControlResize (WPARAM wparam, LPARAM lparam)
Taskbar is at the left of the screen
Taskbar is at the top of the screen
write code for taskbar being at sides or top.
Taskbar is at the right of the screen
- Member DesktopBar::ProcessHotKey (int id_hotkey)
- implement all common hotkeys
- Member DesktopBar::RegisterHotkeys ()
- register all common hotkeys
- Member DesktopBar::Resize (int cx, int cy)
- general children resizing algorithm
- Member DesktopBar::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
- read desktop bar settings
- Member DesktopDropTarget::OnDrop (FORMATETC *pFmtEtc, STGMEDIUM &medium, DWORD *pdwEffect)
Add the code to handle Copy
Add the code to handle Move
- Member DesktopShellView::PositionIcons (int dir=1)
-
- Member DesktopShellView::refresh ()
-
- Member DesktopWindow::Init (LPCREATESTRUCT pcs)
- use IShellBrowser::GetViewStateStream() to restore previous view state -> see SHOpenRegStream()
- Member DesktopWindow::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
- use IShellBrowser::GetViewStateStream() and _pShellView->SaveViewState() to store view state
- Module dhcp4
- :
- Support for interfaces other than Ethernet (SLIP, PPP, ...)
- Member Dialog::DoModal (UINT nid, CREATORFUNC creator, HWND hwndParent=0)
- call Window::pretranslate_msg()
- Member Dialog::DoModal (UINT nid, CREATORFUNC_INFO creator, const void *info, HWND hwndParent=0)
- call Window::pretranslate_msg()
- Member Entry::read_directory_base (SORT_ORDER sortOrder=SORT_NAME, int scan_flags=0)
- _prescan_nodes should not be used for reading the start menu.
- Member Entry::smart_scan (SORT_ORDER sortOrder=SORT_NAME, int scan_flags=0)
- We could use IShellFolder2::GetDefaultColumn to determine sort order.
- Member ExecuteDialog::cmd [MAX_PATH]
- use class Dialog
- Member FileChildWindow::activate_entry (Pane *pane)
- enable using RETURN key accelerator
- Member FileChildWindow::FileChildWindow (HWND hwnd, const FileChildWndInfo &info)
use OWM_ROOTED flag
Is not-explore-mode for FileChildWindow completely implemented?
- Member FileChildWindow::jump_to_int (LPCTSTR url)
- use fname
- Member FileChildWindow::scan_entry (Entry *entry)
- use modifyable sort order instead of fixed file system default
- Member FileChildWindow::set_curdir (Entry *entry)
- make configurable (This call takes really very long compared to all other processing!)
- Member FindProgramDlg::CheckEntries ()
- check all entries for existing targets, display a list of not working entries and ask the user for permission to delete them
- Member GDI_InternalBezier (POINT *Points, POINT **PtsOut, INT *dwOut, INT *nPtsOut, INT level)
- FIXME!
- Module httpc
- :
- persistent connections
- select outgoing http version
- optionally follow redirect
- check request uri for invalid characters? (e.g. encode spaces)
- IPv6 support
- Member IconCache::extract (LPCITEMIDLIST pidl, ICONCACHE_FLAGS flags=ICF_NORMAL)
limit cache size
limit cache size
- Member IconCache::extract (LPCTSTR path, int icon_idx, ICONCACHE_FLAGS flags=ICF_HICON)
- retreive "http://.../favicon.ico" format icons
- Member IconCache::extract (LPCTSTR path, ICONCACHE_FLAGS flags=ICF_NORMAL)
limit cache size
limit cache size
- Member InstallBootManagerAndBootEntries (_In_ ARCHITECTURE_TYPE ArchType, _In_ PCUNICODE_STRING SystemRootPath, _In_ PCUNICODE_STRING SourceRootPath, _In_ PCUNICODE_STRING DestinationArcPath, _In_ ULONG_PTR Options)
- Split this function into just the InstallBootManager, and a separate one for just the boot entries.
- Member IntCreateNewRegistryPath (PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension)
- HACK
- Member IntGdiFillRgn (_In_ PDC pdc, _In_ PREGION prgn, _In_opt_ PBRUSH pbrFill)
- Check parameters
- Module iperf
- :
- implement UDP mode
- protect combined sessions handling (via 'related_master_state') against reallocation (this is a pointer address, currently, so if the same memory is allocated again, session pairs (tx/rx) can be confused on reallocation)
- Member IShellBrowserImpl::Exec (const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
- implement IOleCommandTarget
- Member IShellBrowserImpl::QueryService (REFGUID guidService, REFIID riid, void **ppvObject)
- use guidService
- Member IShellBrowserImpl::QueryStatus (const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
- implement IOleCommandTarget
- Member KiGetFeatureBits (VOID)
- KF_VIRT_FIRMWARE_ENABLED 0x08000000 (see notes from Geoff Chappell)
- KF_FPU_LEAKAGE 0x0000020000000000ULL
- KF_CAT 0x0000100000000000ULL
- KF_CET_SS 0x0000400000000000ULL
- File lowpan6.c
- : RFC 6775.
- File lowpan6_common.c
- : RFC 6775.
- Member MainFrameBase::go_to (LPCTSTR url, bool new_window)
- SDI implementation
- Member MAKEFS_SUPPORT_DEFLATE
- :
- take TCP_MSS, LWIP_TCP_TIMESTAMPS and PAYLOAD_ALIGN_TYPE/PAYLOAD_ALIGNMENT as arguments
- Member MDIMainFrame::Command (int id, int code)
There are even more menu items!
prompt for image file
store last directory per drive
- Member MDIMainFrame::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
- read paths and window placements from registry
- Member MDIShellBrowserChild::jump_to_int (LPCTSTR url)
- use fname
- Member MDIShellBrowserChild::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
- refresh shell child
- Member MI_IS_MAPPED_PTE (PMMPTE PointerPte)
- Make this reasonable code, this is UGLY!
- Member NotifyArea::ProcessTrayNotification (int notify_code, NOTIFYICONDATA *pnid)
This is a fix for Windows Task Manager.
call only if really changes occurred
- Member NotifyArea::read_config ()
read default setting from registry
read default setting from registry
- Member NotifyInfo::modify (NOTIFYICONDATA *pnid)
- compare icon
- Member NtAllocateVirtualMemory (IN HANDLE ProcessHandle, IN OUT PVOID *UBaseAddress, IN ULONG_PTR ZeroBits, IN OUT PSIZE_T URegionSize, IN ULONG AllocationType, IN ULONG Protect)
- HACK: pretend success
- Member NtGdiGetRandomRgn (HDC hdc, HRGN hrgnDest, INT iCode)
- FIXME This is not really correct, since we already modified the region
- Member NtUserCreateWindowEx (DWORD dwExStyle, PLARGE_STRING plstrClassName, PLARGE_STRING plstrClsVersion, PLARGE_STRING plstrWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam, DWORD dwFlags, PVOID acbiBuffer)
- Allow passing plstrClassName as ANSI.
- Member NtUserSelectPalette (HDC hDC, HPALETTE hpal, BOOL ForceBackground)
- implement ForceBackground == TRUE
- Member Pane::draw_item (LPDRAWITEMSTRUCT dis, Entry *entry, int calcWidthCol=-1)
- not in every case time enough
- Member PiUpdateDeviceState (_In_ PDEVICE_NODE DeviceNode)
- Do not return STATUS_SUCCESS if nothing is changed.
- Member QuickLaunchBar::AddShortcuts ()
- perhaps also look into CSIDL_COMMON_APPDATA ?
- Member RecentStartMenu::AddEntries ()
- read max. count of entries from registry
- Member RegDirectory::read_directory (int scan_flags=0)
- This can also be done in the RegEnumValue() call if we dynamically adjust the return buffer size.
- Module rfc7668if
- :
- further testing
- support compression contexts
- support multiple addresses
- support multicast
- support neighbor discovery
- Member RtlLookupFunctionEntry (IN DWORD64 ControlPc, OUT PDWORD64 ImageBase, OUT PUNWIND_HISTORY_TABLE HistoryTable)
- Implement HistoryTable
- Member RtlpTryToUnwindEpilog (_Inout_ PCONTEXT Context, _In_ ULONG64 ControlPc, _Inout_opt_ PKNONVOLATILE_CONTEXT_POINTERS ContextPointers, _In_ ULONG64 ImageBase, _In_ PRUNTIME_FUNCTION FunctionEntry)
- Test and compare with Windows behaviour
- Member SdbMakeIndexKeyFromString (LPCWSTR str)
- : Fix this for unicode strings.
- Member SDIMainFrame::_split_pos
- focus handling for TAB switching int _focus_pane; // 0: left 1: right
- Member SDIMainFrame::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
read paths and window placements from registry
content of 'path' not used any more
- Member ShellBrowser::MessageSFVCB (UINT uMsg, WPARAM wParam, LPARAM lParam)
- never reached
- Member ShellBrowser::OnDefaultCommand (LPIDA pida)
- look for hidden or new subfolders and refresh/add new entry instead of opening a new window
- Member ShellBrowser::refresh ()
-
- Module smtp
- :
- attachments (the main difficulty here is streaming base64-encoding to prevent having to allocate a buffer for the whole encoded file at once)
- test with more mail servers...
- File snmp_asn1.c
- not optimised (yet), favor correctness over speed, favor speed over size
- Module sntp
- :
- complete SNTP_CHECK_RESPONSE checks 3 and 4
- Member SNTP_CHECK_RESPONSE
: discard reply if any of the VN, Stratum, or Transmit Timestamp fields is 0 or the Mode field is not 4 (unicast) or 5 (broadcast).
: to check that the Root Delay and Root Dispersion fields are each greater than or equal to 0 and less than infinity, where infinity is currently a cozy number like one second. This check avoids using a server whose synchronization source has expired for a very long time.
- Member StartMenu::ActivateEntry (int id, const ShellEntrySet &entries)
launch in the background; specify correct HWND for error message box titles
If the user explicitly clicked on a submenu, display this folder as floating start menu.
- Member StartMenu::AddEntry (const String &title, ICON_ID icon_id, Entry *entry)
- speed up by using a map indexed by name
- Member StartMenu::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
use TrackMouseEvent() and WM_MOUSEHOVER to wait a bit before opening submenus
do something similar to StartMenuRoot::TrackStartmenu() in order to automatically close submenus when clicking on the desktop background
- Member StartMenuHandler::Command (int id, int code)
use printer start menu folder per default and allow opening "printers" cabinet window using the context menu
to be removed when network browsing will be implemented in shell namespace
exclude removable drives
- Member StartMenuHandler::ShowSearchComputer ()
- to be removed when SHFindComputer() will be implemented in shell32.dll
- Member StartMenuHandler::ShowSearchDialog ()
- to be removed when SHFindFiles() will be implemented in shell32.dll
- Namespace This
- missing conversion functions
- multiplication functions
- signed add, sub and multiply functions
- Member ToolTip::add (HWND hparent, HWND htool, LPCTSTR txt=LPSTR_TEXTCALLBACK, LPARAM lparam=0)
- Why is it neccesary to try both TTM_ADDTOOLW and TTM_ADDTOOLW ?!
- Member TrayNotifyDlg::Refresh ()
- refresh incrementally
- Member TrayNotifyDlg::SetIconMode (NOTIFYICONMODE mode)
- select treeview item at new position in tree view -> refresh HTREEITEM in _selectedItem
- Member TreeDropTarget::OnDrop (FORMATETC *pFmtEtc, STGMEDIUM &medium, DWORD *pdwEffect)
Add the code to handle Move
Add the code to handle Copy
- Member WebChildWindow::WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
-