#include <precomp.h>
#include "../resource.h"
#include "desktopbar.h"
#include "startmenu.h"
#include "../dialogs/searchprogram.h"
#include "../dialogs/settings.h"
Go to the source code of this file.
Defines | |
#define | SHELLPATH_CONTROL_PANEL TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}") |
#define | SHELLPATH_PRINTERS TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}") |
#define | SHELLPATH_NET_CONNECTIONS TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}") |
Functions | |
int | GetStartMenuBtnTextWidth (HDC hdc, LPCTSTR title, HWND hwnd) |
void | DrawStartMenuButton (HDC hdc, const RECT &rect, LPCTSTR title, const SMBtnInfo &btn, bool has_focus, bool pushed, int icon_size) |
void | ShowExitWindowsDialog (HWND hwndOwner) |
#define SHELLPATH_CONTROL_PANEL TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}") |
Definition at line 44 of file startmenu.cpp.
Referenced by StartMenuHandler::Command().
#define SHELLPATH_NET_CONNECTIONS TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}") |
Definition at line 46 of file startmenu.cpp.
Referenced by StartMenuHandler::Command().
#define SHELLPATH_PRINTERS TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}") |
Definition at line 45 of file startmenu.cpp.
Referenced by StartMenuHandler::Command().
void DrawStartMenuButton | ( | HDC | hdc, |
const RECT & | rect, | ||
LPCTSTR | title, | ||
const SMBtnInfo & | btn, | ||
bool | has_focus, | ||
bool | pushed, | ||
int | icon_size | ||
) |
Definition at line 1382 of file startmenu.cpp.
Referenced by StartMenu::Paint(), and StartMenu::UpdateIcons().
{ UINT style = DFCS_BUTTONPUSH; if (!btn._enabled) style |= DFCS_INACTIVE; POINT iconPos = {rect.left+2, (rect.top+rect.bottom-icon_size)/2}; RECT textRect = {rect.left+icon_size+4, rect.top+2, rect.right-4, rect.bottom-4}; if (pushed) { style |= DFCS_PUSHED; ++iconPos.x; ++iconPos.y; ++textRect.left; ++textRect.top; ++textRect.right; ++textRect.bottom; } int bk_color_idx = COLOR_BTNFACE; int text_color_idx = COLOR_BTNTEXT; if (has_focus) { bk_color_idx = COLOR_HIGHLIGHT; text_color_idx = COLOR_HIGHLIGHTTEXT; } COLORREF bk_color = GetSysColor(bk_color_idx); HBRUSH bk_brush = GetSysColorBrush(bk_color_idx); if (title) FillRect(hdc, &rect, bk_brush); if (btn._icon_id > ICID_NONE) g_Globals._icon_cache.get_icon(btn._icon_id).draw(hdc, iconPos.x, iconPos.y, icon_size, icon_size, bk_color, bk_brush/*, icon_size*/); // draw submenu arrow at the right if (btn._hasSubmenu) { ResIconEx arrowIcon(IDI_ARROW, icon_size, icon_size); ResIconEx selArrowIcon(IDI_ARROW_SELECTED, icon_size, icon_size); DrawIconEx(hdc, rect.right-icon_size, iconPos.y, has_focus? selArrowIcon: arrowIcon, icon_size, icon_size, 0, bk_brush, DI_NORMAL); } if (title) { BkMode bk_mode(hdc, TRANSPARENT); if (!btn._enabled) // dis->itemState & (ODS_DISABLED|ODS_GRAYED) DrawGrayText(hdc, &textRect, title, DT_SINGLELINE|DT_NOPREFIX|DT_VCENTER); else { TextColor lcColor(hdc, GetSysColor(text_color_idx)); DrawText(hdc, title, -1, &textRect, DT_SINGLELINE|DT_NOPREFIX|DT_VCENTER); } } }
Definition at line 1373 of file startmenu.cpp.
Referenced by StartMenu::AddButton().
{
RECT rect = {0, 0, 0, 0};
DrawText(hdc, title, -1, &rect, DT_SINGLELINE|DT_NOPREFIX|DT_CALCRECT);
return rect.right-rect.left;
}
void ShowExitWindowsDialog | ( | HWND | hwndOwner ) |
Definition at line 2140 of file startmenu.cpp.
References IDS_TITLE, and TEXT.
Referenced by StartMenuHandler::Command(), DesktopBar::WndProc(), and DesktopWindow::WndProc().
{ static DynamicFct<EXITWINDOWSDLG> ExitWindowsDialog(TEXT("SHELL32"), 60); if (ExitWindowsDialog) (*ExitWindowsDialog)(hwndOwner); else MessageBox(hwndOwner, TEXT("ExitWindowsDialog() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK); }
ROS Explorer Source Code Documentation
generated on 02.01.2013 by ![]() |