60 #define NUM_TRACKBAR_POS 5 83 FIXME(
"URLTEMPLATE 0x%x not supported\n",
value);
98 TRACE(
"(%p, lv_index: %u, tb_index: %u)\n",
sd, lv_index, tb_index);
100 if ((
sd->levels[lv_index] !=
sd->last_level) || (tb_index > 0)) {
102 if (!
sd->levels[lv_index] || !
sd->last_level)
120 sd->last_level =
sd->levels[lv_index];
131 ZONEATTRIBUTES *za = &
sd->zone_attr[lv_index];
144 sd->last_lv_index = lv_index;
153 DWORD lv_index = *pindex;
154 ZONEATTRIBUTES *za = &
sd->zone_attr[lv_index];
162 TRACE(
"item %d (zone %d)\n", lv_index,
zone);
164 sd->zones[lv_index] =
zone;
167 memset(za, 0,
sizeof(ZONEATTRIBUTES));
168 za->cbSize =
sizeof(ZONEATTRIBUTES);
169 hr = IInternetZoneManager_GetZoneAttributes(
sd->zone_mgr,
zone, za);
173 TRACE(
"minlevel: 0x%x, recommended: 0x%x, current: 0x%x (flags: 0x%x)\n", za->dwTemplateMinLevel,
174 za->dwTemplateRecommended, za->dwTemplateCurrentLevel, za->dwFlags);
176 if (za->dwFlags & ZAFLAGS_NO_UI ) {
177 TRACE(
"item %d (zone %d): UI disabled for %s\n", lv_index,
zone,
debugstr_w(za->szDisplayName));
181 sd->levels[lv_index] = za->dwTemplateCurrentLevel;
184 lvitem.
iItem = lv_index;
186 lvitem.
pszText = za->szDisplayName;
202 FIXME(
"item %d (zone %d): missing icon #%d in %s\n", lv_index,
zone, iconid,
debugstr_w(za->szIconPath));
210 FIXME(
"item %d (zone %d): malformed szIconPath %s\n", lv_index,
zone,
debugstr_w(za->szIconPath));
226 FIXME(
"item %d (zone %d): GetZoneAttributes failed with 0x%x\n", lv_index,
zone,
hr);
235 if (
sd->zone_enumerator) {
236 IInternetZoneManager_DestroyZoneEnumerator(
sd->zone_mgr,
sd->zone_enumerator);
240 IInternetZoneManager_Release(
sd->zone_mgr);
244 IInternetSecurityManager_Release(
sd->sec_mgr);
260 hr = IInternetZoneManager_CreateZoneEnumerator(
sd->zone_mgr, &
sd->zone_enumerator, &
sd->num_zones, 0);
315 TRACE(
"(%p) (data: %p, listview: %p, trackbar: %p)\n", hsec,
sd,
sd->hlv,
sd->htb);
323 TRACE(
"using imagelist: %p\n",
sd->himages);
325 ERR(
"ImageList_Create failed!\n");
332 ERR(
"got 0x%x\n",
hr);
337 TRACE(
"found %d zones\n",
sd->num_zones);
340 sd->zone_attr =
heap_alloc(
sizeof(ZONEATTRIBUTES) *
sd->num_zones);
341 if (!
sd->zone_attr) {
352 sd->levels = &
sd->zones[
sd->num_zones];
360 for (
i = 0;
i <
sd->num_zones;
i++)
362 hr = IInternetZoneManager_GetZoneAt(
sd->zone_mgr,
sd->zone_enumerator,
i, ¤t_zone);
364 if (!current_zone || (current_zone > URLZONE_UNTRUSTED)) {
386 TRACE(
"LVN_ITEMCHANGED (0x%lx, 0x%lx) from %p with code: %d (item: %d, uNewState: %u)\n",
HRESULT WINAPI CoInternetCreateZoneManager(IServiceProvider *pSP, IInternetZoneManager **ppZM, DWORD dwReserved)
static INT_PTR security_on_destroy(secdlg_data *sd)
static void add_zone_to_listview(secdlg_data *sd, DWORD *pindex, DWORD zone)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExW(LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
#define IDC_SEC_ZONE_INFO
#define IDC_SEC_LEVEL_INFO
BOOL WINAPI SetWindowTextW(_In_ HWND, _In_opt_ LPCWSTR)
#define GetWindowLongPtrW
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
static void * heap_alloc(size_t len)
INT_PTR CALLBACK security_dlgproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
HANDLE WINAPI LoadImageW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _In_ UINT, _In_ int, _In_ int, _In_ UINT)
static UINT WPARAM LPARAM lparam
#define IDS_SEC_LEVEL0_INFO
IInternetZoneManager * zone_mgr
static INT_PTR security_on_notify(secdlg_data *sd, WPARAM wparam, LPARAM lparam)
static DWORD url_templates[]
WINE_DEFAULT_DEBUG_CHANNEL(inetcpl)
IInternetSecurityManager * sec_mgr
static void security_cleanup_zones(secdlg_data *sd)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
struct secdlg_data_s secdlg_data
static HRESULT security_enum_zones(secdlg_data *sd)
int WINAPI GetSystemMetrics(_In_ int)
INT WINAPI ImageList_AddIcon(HIMAGELIST himl, HICON hIcon)
static INT_PTR security_on_initdialog(HWND hsec)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
HRESULT WINAPI CoInternetCreateSecurityManager(IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved)
#define LOAD_LIBRARY_AS_DATAFILE
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static void update_zone_info(secdlg_data *sd, DWORD lv_index)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
LPWSTR WINAPI StrChrW(LPCWSTR lpszStr, WCHAR ch)
INT WINAPI StrToIntW(LPCWSTR lpString)
static void update_security_level(secdlg_data *sd, DWORD lv_index, DWORD tb_index)
#define SetWindowLongPtrW
#define MAKEINTRESOURCEW(i)
#define ListView_InsertItemW(hwnd, pitem)
static DWORD index_from_urltemplate(URLTEMPLATE value)
static UINT WPARAM wparam
DECLSPEC_HIDDEN HMODULE hcpl
static BOOL heap_free(void *mem)
ZONEATTRIBUTES * zone_attr