winehq.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
April
March
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
January
2003
December
November
October
September
August
July
June
May
April
March
February
January
2002
December
November
October
September
August
July
June
May
April
March
February
January
2001
December
November
October
September
August
July
June
May
April
March
February
List overview
wine-devel
June 2021
----- 2025 -----
April 2025
March 2025
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
----- 2003 -----
December 2003
November 2003
October 2003
September 2003
August 2003
July 2003
June 2003
May 2003
April 2003
March 2003
February 2003
January 2003
----- 2002 -----
December 2002
November 2002
October 2002
September 2002
August 2002
July 2002
June 2002
May 2002
April 2002
March 2002
February 2002
January 2002
----- 2001 -----
December 2001
November 2001
October 2001
September 2001
August 2001
July 2001
June 2001
May 2001
April 2001
March 2001
February 2001
wine-devel@winehq.org
82 participants
607 discussions
Start a n
N
ew thread
[PATCH 1/5] wined3d: Store the map pitch in the wined3d_texture_sub_resource structure.
by Zebediah Figura
24 Jun '21
24 Jun '21
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> --- dlls/wined3d/texture.c | 34 +++++++++++++++++++++++----------- dlls/wined3d/wined3d_private.h | 2 ++ 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index 165d83eb035..ad34e44b406 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -1711,6 +1711,20 @@ void CDECL wined3d_texture_get_pitch(const struct wined3d_texture *texture,
…
[View More]
width, height, row_pitch, slice_pitch); } +static void wined3d_texture_get_map_pitch(const struct wined3d_texture *texture, + unsigned int level, unsigned int *row_pitch, unsigned int *slice_pitch) +{ + if (texture->resource.format_flags & WINED3DFMT_FLAG_BROKEN_PITCH) + { + *row_pitch = wined3d_texture_get_level_width(texture, level) * texture->resource.format->byte_count; + *slice_pitch = wined3d_texture_get_level_height(texture, level) * (*row_pitch); + } + else + { + wined3d_texture_get_pitch(texture, level, row_pitch, slice_pitch); + } +} + DWORD CDECL wined3d_texture_set_lod(struct wined3d_texture *texture, DWORD lod) { struct wined3d_resource *resource; @@ -1992,6 +2006,8 @@ HRESULT CDECL wined3d_texture_update_desc(struct wined3d_texture *texture, unsig sub_resource->size = texture->slice_pitch; sub_resource->locations = WINED3D_LOCATION_DISCARDED; + wined3d_texture_get_map_pitch(texture, level, &sub_resource->map_row_pitch, &sub_resource->map_slice_pitch); + if (texture->texture_ops == &texture_gl_ops) { if (multisample_type && gl_info->supported[ARB_TEXTURE_MULTISAMPLE]) @@ -3587,15 +3603,8 @@ static HRESULT texture_resource_sub_resource_map(struct wined3d_resource *resour context_release(context); - if (fmt_flags & WINED3DFMT_FLAG_BROKEN_PITCH) - { - map_desc->row_pitch = wined3d_texture_get_level_width(texture, texture_level) * format->byte_count; - map_desc->slice_pitch = wined3d_texture_get_level_height(texture, texture_level) * map_desc->row_pitch; - } - else - { - wined3d_texture_get_pitch(texture, texture_level, &map_desc->row_pitch, &map_desc->slice_pitch); - } + map_desc->row_pitch = sub_resource->map_row_pitch; + map_desc->slice_pitch = sub_resource->map_slice_pitch; if (!box) { @@ -3950,6 +3959,8 @@ static HRESULT wined3d_texture_init(struct wined3d_texture *texture, const struc for (i = 0; i < sub_count; ++i) { struct wined3d_texture_sub_resource *sub_resource; + unsigned int level = i % texture->level_count; + unsigned int layer = i / texture->level_count; sub_resource = &texture->sub_resources[i]; sub_resource->locations = WINED3D_LOCATION_DISCARDED; @@ -3959,6 +3970,8 @@ static HRESULT wined3d_texture_init(struct wined3d_texture *texture, const struc wined3d_texture_invalidate_location(texture, i, ~WINED3D_LOCATION_SYSMEM); } + wined3d_texture_get_map_pitch(texture, level, &sub_resource->map_row_pitch, &sub_resource->map_slice_pitch); + if (FAILED(hr = device_parent->ops->texture_sub_resource_created(device_parent, desc->resource_type, texture, i, &sub_resource->parent, &sub_resource->parent_ops))) { @@ -3970,8 +3983,7 @@ static HRESULT wined3d_texture_init(struct wined3d_texture *texture, const struc TRACE("parent %p, parent_ops %p.\n", sub_resource->parent, sub_resource->parent_ops); - TRACE("Created sub-resource %u (level %u, layer %u).\n", - i, i % texture->level_count, i / texture->level_count); + TRACE("Created sub-resource %u (level %u, layer %u).\n", i, level, layer); if (desc->usage & WINED3DUSAGE_OWNDC) { diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index da1cf638606..1e6a315e72c 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -4259,6 +4259,8 @@ struct wined3d_texture DWORD locations; struct wined3d_bo_gl bo; + unsigned int map_row_pitch, map_slice_pitch; + void *user_memory; } *sub_resources; }; -- 2.30.2
[View Less]
3
11
0
0
[PATCH 1/5] ntdll/tests: Fix AVX tests on processors that don't support XSAVEOPT.
by Zebediah Figura
24 Jun '21
24 Jun '21
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com> --- dlls/ntdll/tests/exception.c | 57 ++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 18 deletions(-) diff --git a/dlls/ntdll/tests/exception.c b/dlls/ntdll/tests/exception.c index 7e849fba1aa..cf2f6b1e7fb 100644 --- a/dlls/ntdll/tests/exception.c +++ b/dlls/ntdll/tests/exception.c @@ -7562,7 +7562,7 @@ static const unsigned test_extended_context_spoil_data1[8] = {0x10, 0x20, 0x30, static const unsigned
…
[View More]
test_extended_context_spoil_data2[8] = {0x15, 0x25, 0x35, 0x45, 0x55, 0x65, 0x75, 0x85}; static BOOL test_extended_context_modified_state; -static BOOL compaction_enabled; +static BOOL xsaveopt_enabled, compaction_enabled; static DWORD test_extended_context_handler(EXCEPTION_RECORD *rec, EXCEPTION_REGISTRATION_RECORD *frame, CONTEXT *context, EXCEPTION_REGISTRATION_RECORD **dispatcher) @@ -7603,9 +7603,11 @@ static DWORD test_extended_context_handler(EXCEPTION_RECORD *rec, EXCEPTION_REGI context_ymm_data = (unsigned int *)&xs->YmmContext; ok(!((ULONG_PTR)xs % 64), "Got unexpected xs %p.\n", xs); - ok((compaction_enabled && (xs->CompactionMask & (expected_compaction_mask | 3)) == expected_compaction_mask) - || (!compaction_enabled && !xs->CompactionMask), "Got unexpected CompactionMask %s, compaction %#x.\n", - wine_dbgstr_longlong(xs->CompactionMask), compaction_enabled); + if (compaction_enabled) + ok((xs->CompactionMask & (expected_compaction_mask | 3)) == expected_compaction_mask, + "Got compaction mask %#I64x.\n", xs->CompactionMask); + else + ok(!xs->CompactionMask, "Got compaction mask %#I64x.\n", xs->CompactionMask); if (test_extended_context_modified_state) { @@ -7615,9 +7617,12 @@ static DWORD test_extended_context_handler(EXCEPTION_RECORD *rec, EXCEPTION_REGI } else { - ok(!xs->Mask, "Got unexpected Mask %s.\n", wine_dbgstr_longlong(xs->Mask)); - /* The save area has garbage in this case, the state should be restored to INIT_STATE - * without using these data. */ + ok(xs->Mask == (xsaveopt_enabled ? 0 : 4), "Got unexpected Mask %#I64x.\n", xs->Mask); + /* The save area has garbage if xsaveopt is available. + * + * Clear the mask; the state should be restored to INIT_STATE without + * using this data. */ + xs->Mask = 0; memcpy(context_ymm_data, test_extended_context_spoil_data1 + 4, sizeof(M128A)); } @@ -7897,6 +7902,7 @@ static void test_extended_context(void) int regs[4]; __cpuidex(regs, 0xd, 1); + xsaveopt_enabled = regs[0] & 1; compaction_enabled = regs[0] & 2; } @@ -8547,7 +8553,7 @@ static void test_extended_context(void) "Got unexpected bret %#x, GetLastError() %u.\n", bret, GetLastError()); ok(context->ContextFlags == expected_flags, "Got unexpected ContextFlags %#x.\n", context->ContextFlags); - ok(xs->Mask == (compaction_enabled ? 0 : 4), "Got unexpected Mask %s.\n", wine_dbgstr_longlong(xs->Mask)); + ok(xs->Mask == (compaction_enabled ? 0 : 4), "Got unexpected Mask %#I64x.\n", xs->Mask); ok(xs->CompactionMask == 4, "Got unexpected CompactionMask %s.\n", wine_dbgstr_longlong(xs->CompactionMask)); for (i = 0; i < 4; ++i) @@ -8618,7 +8624,7 @@ static void test_extended_context(void) expected_compaction = compaction_enabled ? ((ULONG64)1 << 63) | 4 : 0; xs = (XSTATE *)((BYTE *)context_ex + context_ex->XState.Offset); - ok(!xs->Mask, "Got unexpected Mask %s.\n", wine_dbgstr_longlong(xs->Mask)); + ok(xs->Mask == (xsaveopt_enabled ? 0 : 4), "Got unexpected Mask %#I64x.\n", xs->Mask); ok(xs->CompactionMask == expected_compaction, "Got unexpected CompactionMask %s.\n", wine_dbgstr_longlong(xs->CompactionMask)); @@ -8626,12 +8632,13 @@ static void test_extended_context(void) ok(!data[i], "Got unexpected data %#x, i %u.\n", data[i], i); for (i = 0; i < 4; ++i) - ok(((ULONG *)&xs->YmmContext)[i] == 0xcccccccc + ok(((ULONG *)&xs->YmmContext)[i] == ((xs->Mask & 4) ? 0 : 0xcccccccc) || broken(((ULONG *)&xs->YmmContext)[i] == test_extended_context_data[i + 4]), "Got unexpected data %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); /* Test fault exception context. */ memset(data, 0xff, sizeof(data)); + xs->Mask = 0; test_extended_context_modified_state = FALSE; run_exception_test(test_extended_context_handler, NULL, except_code_reset_ymm_state, ARRAY_SIZE(except_code_reset_ymm_state), PAGE_EXECUTE_READ); @@ -8664,12 +8671,13 @@ static void test_extended_context(void) bret = GetThreadContext(thread, context); ok(bret, "Got unexpected bret %#x, GetLastError() %u.\n", bret, GetLastError()); - ok(!xs->Mask, "Got unexpected Mask %s.\n", wine_dbgstr_longlong(xs->Mask)); + todo_wine_if (!xsaveopt_enabled) + ok(xs->Mask == (xsaveopt_enabled ? 0 : 4), "Got unexpected Mask %#I64x.\n", xs->Mask); ok(xs->CompactionMask == expected_compaction, "Got unexpected CompactionMask %s.\n", wine_dbgstr_longlong(xs->CompactionMask)); for (i = 0; i < 16 * 4; ++i) - ok(((ULONG *)&xs->YmmContext)[i] == 0xcccccccc, "Got unexpected value %#x, i %u.\n", - ((ULONG *)&xs->YmmContext)[i], i); + ok(((ULONG *)&xs->YmmContext)[i] == ((xs->Mask & 4) ? 0 : 0xcccccccc), + "Got unexpected value %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); pSetXStateFeaturesMask(context, 4); memset(&xs->YmmContext, 0, sizeof(xs->YmmContext)); @@ -8725,11 +8733,24 @@ static void test_extended_context(void) memset(&xs->YmmContext, 0xcc, sizeof(xs->YmmContext)); bret = GetThreadContext(thread, context); ok(bret, "Got unexpected bret %#x, GetLastError() %u.\n", bret, GetLastError()); - ok(!xs->Mask || (sizeof(void *) == 4 && xs->Mask == 4), - "Got unexpected Mask %s.\n", wine_dbgstr_longlong(xs->Mask)); - for (i = 0; i < 16 * 4; ++i) - ok(((ULONG *)&xs->YmmContext)[i] == (xs->Mask ? (i < 8 * 4 ? 0 : 0x48484848) : 0xcccccccc), - "Got unexpected value %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); + if (sizeof(void *) == 4) + { + ok(xs->Mask == 4, "Got unexpected Mask %#I64x.\n", xs->Mask); + for (i = 0; i < 8 * 4; ++i) + ok(((ULONG *)&xs->YmmContext)[i] == 0, + "Got unexpected value %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); + for (; i < 16 * 4; ++i) + ok(((ULONG *)&xs->YmmContext)[i] == 0x48484848, + "Got unexpected value %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); + } + else + { + todo_wine_if (!xsaveopt_enabled) + ok(xs->Mask == (xsaveopt_enabled ? 0 : 4), "Got unexpected Mask %#I64x.\n", xs->Mask); + for (i = 0; i < 16 * 4; ++i) + ok(((ULONG *)&xs->YmmContext)[i] == ((xs->Mask & 4) ? 0 : 0xcccccccc), + "Got unexpected value %#x, i %u.\n", ((ULONG *)&xs->YmmContext)[i], i); + } bret = ResumeThread(thread); ok(bret, "Got unexpected bret %#x, GetLastError() %u.\n", bret, GetLastError()); -- 2.30.2
[View Less]
4
11
0
0
[PATCH 1/6] d2d1: Use D3D11 interfaces in d2d_bitmap_create_shared.
by Rémi Bernon
24 Jun '21
24 Jun '21
Wine-Bug:
https://bugs.winehq.org/show_bug.cgi?id=49395
Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/d2d1/bitmap.c | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/dlls/d2d1/bitmap.c b/dlls/d2d1/bitmap.c index 0b5f3e6dc5a..03982924efa 100644 --- a/dlls/d2d1/bitmap.c +++ b/dlls/d2d1/bitmap.c @@ -414,7 +414,7 @@ HRESULT d2d_bitmap_create_shared(struct d2d_device_context *context, REFIID iid, if (
…
[View More]
IsEqualGUID(iid, &IID_ID2D1Bitmap)) { struct d2d_bitmap *src_impl = unsafe_impl_from_ID2D1Bitmap(data); - ID3D10Device *device; + ID3D11Device *device; HRESULT hr = S_OK; if (src_impl->factory != context->factory) @@ -423,9 +423,9 @@ HRESULT d2d_bitmap_create_shared(struct d2d_device_context *context, REFIID iid, goto failed; } - ID3D10Resource_GetDevice(src_impl->resource, &device); - ID3D10Device_Release(device); - if (device != context->d3d_device) + ID3D11Resource_GetDevice(src_impl->d3d11_resource, &device); + ID3D11Device_Release(device); + if (device != (ID3D11Device *)context->d3d11_device) { hr = D2DERR_UNSUPPORTED_OPERATION; goto failed; @@ -466,28 +466,37 @@ HRESULT d2d_bitmap_create_shared(struct d2d_device_context *context, REFIID iid, { DXGI_SURFACE_DESC surface_desc; IDXGISurface *surface = data; - ID3D10Resource *resource; + ID3D11Resource *resource; + ID3D10Resource *d3d10_resource; D2D1_SIZE_U pixel_size; - ID3D10Device *device; + ID3D11Device *device; HRESULT hr; - if (FAILED(IDXGISurface_QueryInterface(surface, &IID_ID3D10Resource, (void **)&resource))) + if (FAILED(IDXGISurface_QueryInterface(surface, &IID_ID3D11Resource, (void **)&resource))) { WARN("Failed to get d3d resource from dxgi surface.\n"); return E_FAIL; } - ID3D10Resource_GetDevice(resource, &device); - ID3D10Device_Release(device); - if (device != context->d3d_device) + if (FAILED(hr = ID3D11Resource_QueryInterface(resource, &IID_ID3D10Resource, (void **)&d3d10_resource))) { - ID3D10Resource_Release(resource); + ERR("Failed to query ID3D10Resource interface, hr %#x.\n", hr); + ID3D11Resource_Release(resource); + return hr; + } + + ID3D11Resource_GetDevice(resource, &device); + ID3D11Resource_Release(resource); + ID3D11Device_Release(device); + if (device != (ID3D11Device *)context->d3d11_device) + { + ID3D10Resource_Release(d3d10_resource); return D2DERR_UNSUPPORTED_OPERATION; } if (!(*bitmap = heap_alloc_zero(sizeof(**bitmap)))) { - ID3D10Resource_Release(resource); + ID3D10Resource_Release(d3d10_resource); return E_OUTOFMEMORY; } @@ -495,7 +504,7 @@ HRESULT d2d_bitmap_create_shared(struct d2d_device_context *context, REFIID iid, if (FAILED(hr = IDXGISurface_GetDesc(surface, &surface_desc))) { WARN("Failed to get surface desc, hr %#x.\n", hr); - ID3D10Resource_Release(resource); + ID3D10Resource_Release(d3d10_resource); return hr; } @@ -522,8 +531,8 @@ HRESULT d2d_bitmap_create_shared(struct d2d_device_context *context, REFIID iid, pixel_size.width = surface_desc.Width; pixel_size.height = surface_desc.Height; - d2d_bitmap_init(*bitmap, context, resource, pixel_size, &d); - ID3D10Resource_Release(resource); + d2d_bitmap_init(*bitmap, context, d3d10_resource, pixel_size, &d); + ID3D10Resource_Release(d3d10_resource); TRACE("Created bitmap %p.\n", *bitmap); return S_OK; -- 2.32.0
[View Less]
3
11
0
0
[PATCH v3 4/4] light.msstyles: Add List Box parts.
by Zhiyi Zhang
24 Jun '21
24 Jun '21
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> --- dlls/light.msstyles/light.rc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dlls/light.msstyles/light.rc b/dlls/light.msstyles/light.rc index bebee8788c4..cb51b8a5246 100644 --- a/dlls/light.msstyles/light.rc +++ b/dlls/light.msstyles/light.rc @@ -333,6 +333,13 @@ BLUE_INI TEXTFILE "[Edit.Edittext(ReadOnly)]\r\n" "FillColor = 245 245 245\r\n" "TextColor = 0 0 0\r\n" + +"\r\n; ListBox\r\n" +"[ListBox]\r\n" +"BgType =
…
[View More]
BorderFill\r\n" +"BorderSize = 1\r\n" +"FillColor = 255 255 255\r\n" +"BorderColor = 174 174 174\r\n" } /* Button */ -- 2.30.2
[View Less]
1
0
0
0
[PATCH v3 3/4] light.msstyles: Add Edit parts.
by Zhiyi Zhang
24 Jun '21
24 Jun '21
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> --- dlls/light.msstyles/light.rc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/dlls/light.msstyles/light.rc b/dlls/light.msstyles/light.rc index 2451ffcd4f0..bebee8788c4 100644 --- a/dlls/light.msstyles/light.rc +++ b/dlls/light.msstyles/light.rc @@ -318,6 +318,21 @@ BLUE_INI TEXTFILE "GlyphImageFile = blue_combobutton_glyph.bmp\r\n" "GlyphTransparent = True\r\n" "Transparent = True\r\n" + +"\r\n; Edit\r\n" +"
…
[View More]
[Edit]\r\n" +"BgType = BorderFill\r\n" +"BorderSize = 1\r\n" +"FillColor = 255 255 255\r\n" +"BorderColor = 174 174 174\r\n" + +"[Edit.Edittext(Disabled)]\r\n" +"FillColor = 245 245 245\r\n" +"TextColor = 166 166 166\r\n" + +"[Edit.Edittext(ReadOnly)]\r\n" +"FillColor = 245 245 245\r\n" +"TextColor = 0 0 0\r\n" } /* Button */ -- 2.30.2
[View Less]
1
0
0
0
[PATCH v3 2/4] light.msstyles: Add ComboBox parts.
by Zhiyi Zhang
24 Jun '21
24 Jun '21
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> --- dlls/light.msstyles/Makefile.in | 2 ++ dlls/light.msstyles/blue_combobutton.bmp | Bin 0 -> 6858 bytes dlls/light.msstyles/blue_combobutton.svg | 18 ++++++++++ .../light.msstyles/blue_combobutton_glyph.bmp | Bin 0 -> 1258 bytes .../light.msstyles/blue_combobutton_glyph.svg | 28 ++++++++++++++++ dlls/light.msstyles/light.rc | 31 ++++++++++++++++++ 6 files changed, 79
…
[View More]
insertions(+) create mode 100644 dlls/light.msstyles/blue_combobutton.bmp create mode 100644 dlls/light.msstyles/blue_combobutton.svg create mode 100644 dlls/light.msstyles/blue_combobutton_glyph.bmp create mode 100644 dlls/light.msstyles/blue_combobutton_glyph.svg diff --git a/dlls/light.msstyles/Makefile.in b/dlls/light.msstyles/Makefile.in index 599609def60..8f4ffdb9a22 100644 --- a/dlls/light.msstyles/Makefile.in +++ b/dlls/light.msstyles/Makefile.in @@ -7,6 +7,8 @@ SVG_SRCS = \ blue_checkbox_13px.svg \ blue_checkbox_16px.svg \ blue_checkbox_25px.svg \ + blue_combobutton_glyph.svg \ + blue_combobutton.svg \ blue_commandlink_glyph_30px.svg \ blue_commandlink_glyph_45px.svg \ blue_commandlink.svg \ diff --git a/dlls/light.msstyles/blue_combobutton.bmp b/dlls/light.msstyles/blue_combobutton.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a2b12ba3e1f3c3506f30c0dd75e567612a6e526c GIT binary patch literal 6858 zcmeI1&raJw5XN1B$_sGf(B#lVLJm0M1rV2>dO>}Y9_svgf*vdCh*yY|<Q9n}TxrS+ zrA|Q03}&29-pkA;m2$AfFrRn7`DMMa2H9MHeL9QYj-T|qPjO1|jp9R8kB%r`z0Z?` z!$nd4!(;CH%guL~RLNtNYd6zqG^&lq;~7Op;f%pG_ru}vldNJgnaqjVrLm7Prp;VK z^?hQ_q=s}B!jk&wbb3OJe{xQmzLnh$WS|bEA_H~B)9nE68ERd%??MJ@->Dlx25Mck z??MJ@->Dlx25Mck??MJ@->Dlx25Mck??MLYee{=1K81J->S3Lbp2am(-=iq{-+O;v z@H#2X{h9kQaf|*e>pax#dd-?kntxo<cy^tpGeutW=zg?{>!tc7g`Kti>}Ot&>{rmb zwygYmy62mMSDp(zuXx6LrL@o0{#E;D={5iDehKM&rF)rs)OLN1C)a7bSgx()<=(k0 zcuAv9=YNCxV18{&?(xDq^t`%l*Vez|**c9g3TKQgOXK_1-DUCji0bE?H14`#%lv%A zHJkLJ&+CzW<8_6wq~87dd_s)k`G~Ji=0Y<vP**(N4&a`l)>Zp1WT5t)x)Efc)>Zp1 zWT5t)x)Efc)>Zp1WT5t)x)Efc)>Zp1WT5t)x)EfM-ba5ao{!dP`(ZO^Cm}s6?|*TZ z)-;zZSq<X)dT_Deb@IB6!8LR4@xnXwT)nTee?$D-ELEsw%$kvb+R70>GEmFBH6sJH zl_P#+pq6=SMh0ptNBqb@E%Vll4AfSR_>qBH=B*hSsI46FBLlU}TQf3HTRGxK2I+mj guX`Y768gT5|JT9q*krAw>%`mXeI56B;q5cO0viV@SpWb4 literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_combobutton.svg b/dlls/light.msstyles/blue_combobutton.svg new file mode 100644 index 00000000000..aab7ff06812 --- /dev/null +++ b/dlls/light.msstyles/blue_combobutton.svg @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:20-32" width="20" height="84" version="1.1" viewBox="0 0 5.2917 22.225" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g stroke-width=".26458"> + <rect x=".39687" y=".39687" width="4.4979" height="4.7625" rx=".52917" ry=".52917" fill="none" stroke="#aeaeae"/> + <rect x=".39687" y="5.9531" width="4.4979" height="4.7625" rx=".52917" ry=".52917" fill="none" stroke="#3096fa"/> + <rect x=".39687" y="11.509" width="4.4979" height="4.7625" rx=".52917" ry=".52917" fill="#2979ff" stroke="#2979ff"/> + <rect x=".39687" y="17.066" width="4.4979" height="4.7625" rx=".52917" ry=".52917" fill="none" stroke="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_combobutton_glyph.bmp b/dlls/light.msstyles/blue_combobutton_glyph.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2c0bd8a357fbffce7007fb3606beba2cf9a7b606 GIT binary patch literal 1258 zcmd6jO>ToQ5QQBztDK>W-XP8iKy13|CMU=pDrJQd3wGTDQg<AHpL68~luGV52}HOc z#G+DT@!2zPo{{{5x64{x*9UtD8+eA5dQnfDhi*<eSXQaqCz=gj_wR$@qH^-Li*CB6 zvMlquu0LJX?W(GZAS{Z);6J(3TgNOGPd^hc{kiYu<gSNy9BNXF5B%TyfA-ee9A<N2 z9zh5OCUZfL#nZo~^E$bpc`(Wa?F<i<%U7!N?@Z6;(j?ocO}Al_Xw#;<$y}Or7mKIQ z<?79}lM8pfHqoP8T72+Ox$ur0W^-X4fxOwkWG?72+;gEe;N(K@!6=u`=X3t~`T;?t Bf*t?> literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_combobutton_glyph.svg b/dlls/light.msstyles/blue_combobutton_glyph.svg new file mode 100644 index 00000000000..0caf1c4b696 --- /dev/null +++ b/dlls/light.msstyles/blue_combobutton_glyph.svg @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:10-32" width="10" height="28" version="1.1" viewBox="0 0 2.6458 7.4083" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g> + <path d="m0-1.8521h6.35v6.35h-6.35z" fill="none" stroke-width=".26458"/> + <path d="m0 3.7042h6.35v6.35h-6.35z" fill="none" stroke-width=".26458"/> + <path d="m0.39688 0.66961 0.92136 0.91789 0.13162-0.13113-0.92136-0.91789z" stroke-width=".26458"/> + <path d="m2.1173 0.52917-0.92136 0.91789 0.13162 0.13113 0.92136-0.91789z" stroke-width=".26458"/> + <g> + <g stroke-width=".26458"> + <path d="m0.39688 2.5217 0.92136 0.91789 0.13162-0.13113-0.92136-0.91789z" fill="#3096fa"/> + <path d="m2.1173 2.3812-0.92136 0.91789 0.13162 0.13113 0.92136-0.91789z" fill="#3096fa"/> + <path d="m0.39688 4.3738 0.92136 0.91789 0.13162-0.13113-0.92136-0.91789z" fill="#fff"/> + <path d="m2.1173 4.2333-0.92136 0.91789 0.13162 0.13113 0.92136-0.91789z" fill="#fff"/> + </g> + <path d="m0.39688 6.2259 0.92136 0.91789 0.13162-0.13113-0.92136-0.91789z" fill="#aeaeae"/> + <path d="m2.1173 6.0854-0.92136 0.91789 0.13162 0.13113 0.92136-0.91789z" fill="#aeaeae"/> + </g> + </g> +</svg> diff --git a/dlls/light.msstyles/light.rc b/dlls/light.msstyles/light.rc index cc5b371da8c..2451ffcd4f0 100644 --- a/dlls/light.msstyles/light.rc +++ b/dlls/light.msstyles/light.rc @@ -294,6 +294,30 @@ BLUE_INI TEXTFILE "ImageFile2 = blue_commandlink_glyph_45px.bmp\r\n" "MinDpi1 = 96\r\n" "MinDpi2 = 144\r\n" + +"\r\n; ComboBox\r\n" +"[ComboBox]\r\n" +"BgType = BorderFill\r\n" +"BorderSize = 1\r\n" +"FillColor = 255 255 255\r\n" +"BorderColor = 174 174 174\r\n" + +"[ComboBox(Disabled)]\r\n" +"BorderColor = 228 228 228\r\n" +"FillColor = 231 231 231\r\n" + +"[ComboBox.DropDownButton]\r\n" +"BgType = ImageFile\r\n" +"ImageLayout = Vertical\r\n" +"SizingType = Stretch\r\n" +"ImageFile = blue_combobutton.bmp\r\n" +"SizingMargins = 3, 3, 3, 3\r\n" +"ContentMargins = 0, 0, 0, 0\r\n" +"ImageCount = 4\r\n" +"GlyphType = ImageGlyph\r\n" +"GlyphImageFile = blue_combobutton_glyph.bmp\r\n" +"GlyphTransparent = True\r\n" +"Transparent = True\r\n" } /* Button */ @@ -330,6 +354,13 @@ BLUE_COMMANDLINK_GLYPH_30PX_BMP BITMAP "blue_commandlink_glyph_30px.bmp" /* @makedep: blue_commandlink_glyph_45px.bmp */ BLUE_COMMANDLINK_GLYPH_45PX_BMP BITMAP "blue_commandlink_glyph_45px.bmp" +/* ComboBox */ +/* @makedep: blue_combobutton.bmp */ +BLUE_COMBOBUTTON_BMP BITMAP "blue_combobutton.bmp" + +/* @makedep: blue_combobutton_glyph.bmp */ +BLUE_COMBOBUTTON_GLYPH_BMP BITMAP "blue_combobutton_glyph.bmp" + /* File version */ #define WINE_FILEDESCRIPTION_STR "Light Theme" #define WINE_FILENAME_STR "light.msstyles" -- 2.30.2
[View Less]
1
0
0
0
[PATCH v3 1/4] light.msstyles: Add Button parts.
by Zhiyi Zhang
24 Jun '21
24 Jun '21
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com> --- v2: Supersede 208166~208171. Move from themes/light to dlls/light.msstyles. Save SVGs in optimized SVG instead of Inkscape SVG to save space. v3: Supersede 208185~208189. Use buildimage to generate bitmaps. dlls/light.msstyles/Makefile.in | 13 ++ dlls/light.msstyles/blue_button.bmp | Bin 0 -> 12282 bytes dlls/light.msstyles/blue_button.svg | 24 +++ dlls/light.msstyles/blue_checkbox_13px.
…
[View More]
bmp | Bin 0 -> 8250 bytes dlls/light.msstyles/blue_checkbox_13px.svg | 44 ++++++ dlls/light.msstyles/blue_checkbox_16px.bmp | Bin 0 -> 12426 bytes dlls/light.msstyles/blue_checkbox_16px.svg | 36 +++++ dlls/light.msstyles/blue_checkbox_25px.bmp | Bin 0 -> 30138 bytes dlls/light.msstyles/blue_checkbox_25px.svg | 40 +++++ dlls/light.msstyles/blue_commandlink.bmp | Bin 0 -> 13074 bytes dlls/light.msstyles/blue_commandlink.svg | 18 +++ .../blue_commandlink_glyph_30px.bmp | Bin 0 -> 18138 bytes .../blue_commandlink_glyph_30px.svg | 19 +++ .../blue_commandlink_glyph_45px.bmp | Bin 0 -> 40638 bytes .../blue_commandlink_glyph_45px.svg | 19 +++ dlls/light.msstyles/blue_groupbox.bmp | Bin 0 -> 1898 bytes dlls/light.msstyles/blue_groupbox.svg | 15 ++ dlls/light.msstyles/blue_radiobutton_13px.bmp | Bin 0 -> 5546 bytes dlls/light.msstyles/blue_radiobutton_13px.svg | 28 ++++ dlls/light.msstyles/blue_radiobutton_16px.bmp | Bin 0 -> 8330 bytes dlls/light.msstyles/blue_radiobutton_16px.svg | 28 ++++ dlls/light.msstyles/blue_radiobutton_25px.bmp | Bin 0 -> 20138 bytes dlls/light.msstyles/blue_radiobutton_25px.svg | 28 ++++ dlls/light.msstyles/light.rc | 149 ++++++++++++++++++ 24 files changed, 461 insertions(+) create mode 100644 dlls/light.msstyles/blue_button.bmp create mode 100644 dlls/light.msstyles/blue_button.svg create mode 100644 dlls/light.msstyles/blue_checkbox_13px.bmp create mode 100644 dlls/light.msstyles/blue_checkbox_13px.svg create mode 100644 dlls/light.msstyles/blue_checkbox_16px.bmp create mode 100644 dlls/light.msstyles/blue_checkbox_16px.svg create mode 100644 dlls/light.msstyles/blue_checkbox_25px.bmp create mode 100644 dlls/light.msstyles/blue_checkbox_25px.svg create mode 100644 dlls/light.msstyles/blue_commandlink.bmp create mode 100644 dlls/light.msstyles/blue_commandlink.svg create mode 100644 dlls/light.msstyles/blue_commandlink_glyph_30px.bmp create mode 100644 dlls/light.msstyles/blue_commandlink_glyph_30px.svg create mode 100644 dlls/light.msstyles/blue_commandlink_glyph_45px.bmp create mode 100644 dlls/light.msstyles/blue_commandlink_glyph_45px.svg create mode 100644 dlls/light.msstyles/blue_groupbox.bmp create mode 100644 dlls/light.msstyles/blue_groupbox.svg create mode 100644 dlls/light.msstyles/blue_radiobutton_13px.bmp create mode 100644 dlls/light.msstyles/blue_radiobutton_13px.svg create mode 100644 dlls/light.msstyles/blue_radiobutton_16px.bmp create mode 100644 dlls/light.msstyles/blue_radiobutton_16px.svg create mode 100644 dlls/light.msstyles/blue_radiobutton_25px.bmp create mode 100644 dlls/light.msstyles/blue_radiobutton_25px.svg diff --git a/dlls/light.msstyles/Makefile.in b/dlls/light.msstyles/Makefile.in index d6b7a53d7f8..599609def60 100644 --- a/dlls/light.msstyles/Makefile.in +++ b/dlls/light.msstyles/Makefile.in @@ -1,3 +1,16 @@ MODULE = light.msstyles RC_SRCS = light.rc + +SVG_SRCS = \ + blue_button.svg \ + blue_checkbox_13px.svg \ + blue_checkbox_16px.svg \ + blue_checkbox_25px.svg \ + blue_commandlink_glyph_30px.svg \ + blue_commandlink_glyph_45px.svg \ + blue_commandlink.svg \ + blue_groupbox.svg \ + blue_radiobutton_13px.svg \ + blue_radiobutton_16px.svg \ + blue_radiobutton_25px.svg diff --git a/dlls/light.msstyles/blue_button.bmp b/dlls/light.msstyles/blue_button.bmp new file mode 100644 index 0000000000000000000000000000000000000000..6dd20ad167d73dd2a5e607df51b73197295a177e GIT binary patch literal 12282 zcmeI1&rZTX5XNit89YLdpa=hOmID`0UVIW04}$sxo{a>B7a#!+@C;D!&l#SC*mg6{ zblH?}GIUBp@@-hUQ1WH>V<x}uZ0#mI^OE+$@6X(ixy$&#^Swj9-mUKQaIKN&*_V7r zwd>pawVVGM9&P+;`Fc?dJ6A#2yo|%QbIR03qg|aWTa^N9PR)1QkclXBGa;GJ_e48v zR$}7MYAyaH(Uf&-H|HgEZCt?z_#iQWys()7A9mnFKD>xhzA3P1jc+NBEt6b~Y;_f` zt$3X1^4PI%D?RsoAiACEc*Xg^e0}IJIq{*DC+8zsw{~-0LKl3K7(hJOOn?vY!8))5 zAM)Y6aBgOPI=qin;yklb_S?(mxi8NUdOT)L-pluTz2a~<oD2qoxZm$nmM$8sHSTu1 zh0$mf%;)pi7_<JDZZ#GS(Q@<D&~y_KEuMEI>(*}0OX%9Tf)DUPVgPwzGXXy2?}IQY z2VMw^ri;abrFHqX;_+0A$HHOZF+G)wR4-4cUW%zvrcB*xjOpRDz&Zi<?3(GEVzqgu zns&X9CsC$#Z|dQ5wm5=+@DDM77|@6T4X$m@Bhf6)s8KSC+z?g<%weCeQ$-#J!g$o} zlk<7h?fKCf^;EmRfDiD&IshN`-Urm}QMczHM%_NmWYiI@7w`c-q*;M;2Is{-=0%Qm W`<Zs#UTW+-Uti7yH0$<q7Vro8$&m8^ literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_button.svg b/dlls/light.msstyles/blue_button.svg new file mode 100644 index 00000000000..99041a80209 --- /dev/null +++ b/dlls/light.msstyles/blue_button.svg @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:22-32" width="22" height="138" version="1.1" viewBox="0 0 5.8208 36.512" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g transform="translate(-40.717 -1.1913)" stroke-width=".26458"> + <g fill="#fff"> + <rect x="40.849" y="1.3236" width="5.5563" height="5.8208" rx=".52917" ry=".52917" stroke="#aeaeae"/> + <rect x="40.849" y="19.58" width="5.5563" height="5.8208" rx=".52917" ry=".52917" stroke="#aeaeae"/> + <g stroke="#3096fa"> + <rect x="40.849" y="25.665" width="5.5563" height="5.8208" rx=".52917" ry=".52917"/> + <rect x="40.849" y="31.751" width="5.5563" height="5.8208" rx=".52917" ry=".52917"/> + <rect x="40.849" y="7.409" width="5.5563" height="5.8208" rx=".52917" ry=".52917"/> + </g> + </g> + <rect x="40.849" y="13.494" width="5.5563" height="5.8208" rx=".52917" ry=".52917" fill="#2979ff" stroke="#2979ff"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_checkbox_13px.bmp b/dlls/light.msstyles/blue_checkbox_13px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a6b1903b236fae8ccbbcd272d143f36a01eca005 GIT binary patch literal 8250 zcmeHM&2HL27&K|soGR282&k&mK-9)=I6yB*x%5y)mD)=s`U*Yu5QlK!++#^h5PgB7 z{BVdOB_t1kco9I{gQ3!PKF8~>4S4M$Sw*syVb}Z3?5@2N_S3Sv_cpCq*LQqYfTzGu zAfcp{M=0AVe9T--Q6By%!gk+%{5C_8G(7gi&(6+L=jZ1)fC(@kQ2e^pYHeIxTy&r- zqyEIxo$Hq3;8vis`j_#!`0DCv9hx!Cg|`JMi66CwkLg#^+<836b8t??8Z+ejkRR>< zU8bWr`GtG~q@lS5q<*t~mSTsQ6g$Y=04BhEK=Es~zqNs~!w#}#R^9UTD8<3801y33 z_<U{H*B9&1jDb)dC4STzKBiwu&&A{X8H1D&YfRaC@;Te<13zru0lG~0-~;%De4}rs zQQiVU{MI3V-XCeH$+3DfF;o*^J}^x~y}obkY=G058fuxfBpyY4YHU|{|1!Sw4t~5? z#~5Rp3vUZj^0^1$a?Y|EuJ<cxEFS0M1}P)fm?75(e$noxbxoJ)C{BLC^K|a(YI;)N zzC~T?H;WH{#(VwJ`2qbO$q?`LOYHTl;?Zigx`rI4i5%t2qVFKYoqUurmcX+$!0(~G z4}6}d6E)!1aNkA#lsr8>)leTm|H-QpHK>;^FE5{Q4s<!R4S^55jY?4?w(~m1&Vw^* zx7&NXO{O6pI0e!{|K7fL-U07tUI|SR_$6rKe3bH!CGt^LRn}NJ(`4oBLXV318@|{Q z;5N|K1NzX;^{7j8kgegq%l4lqnV!{<YYmV;&3M$M(X%C{zj8dv4qxUFAF}<d%cG)Z zo@bDE<-r-T!%fGdG7a^EITkEkIb(S=h{o0x!L>YUYr?KioR50)QSvDAlcs5GFZ3wl zRz7X50aFsVZy*=$0e!Qs&Go3LnH+01+;>@HCyAU%Lwx|<j7LR{SyxNU`0LThiIzir zXdbC9kBS<apZA&=Z}Q-b#>cN6kIFRE$Mi%iknXpkS{@Cev2=!3#Cx$kYHQ+r6lV>x zGYY<L3(lU_5N`qtJ&L_c+~*SDHh><`2j+Uzqp5+{1(JXU41gJrdNd_)obOT8bHEUA zdDNppc;?EZWdt}L4WOY;3broPUJp$Xusmvy6Lx(fJ9|PNlfoS1^HD5V&?}&KT-~jJ z=D+o5d_EfenX1dYJ~u&gOR<Y3G;uzP^Dx;t8h_Vph0aI$oMmOuJW=c?VolifiO)w@ S<hM}KQ-1Y$umAVoLjM5TYj8mT literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_checkbox_13px.svg b/dlls/light.msstyles/blue_checkbox_13px.svg new file mode 100644 index 00000000000..fbbca0ae2f6 --- /dev/null +++ b/dlls/light.msstyles/blue_checkbox_13px.svg @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:13-32" width="13" height="156" fill="#000000" version="1.1" viewBox="0 0 13 156" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g fill="none"> + <path d="m0 0h24v24h-24z"/> + <rect x=".5" y=".5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="13.5" width="12" height="12" rx="2" ry="2" stroke="#3096fa"/> + <path d="m0.5 25.5h24v24h-24z"/> + <rect x=".5" y="26.5" width="12" height="12" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="39.5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + <path d="m4.1723e-7 52h24v24h-24z"/> + <rect x=".5" y="52.5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="65.5" width="12" height="12" rx="2" ry="2" stroke="#3096fa"/> + <path d="m0.5 77.5h24v24h-24z"/> + <rect x=".5" y="78.5" width="12" height="12" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="91.5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + <path d="m-1.9073e-6 104h24v24h-24z"/> + <rect x=".5" y="104.5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="117.5" width="12" height="12" rx="2" ry="2" stroke="#3096fa"/> + <path d="m0.5 129.5h24v24h-24z"/> + <rect x=".5" y="130.5" width="12" height="12" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="143.5" width="12" height="12" rx="2" ry="2" stroke="#aeaeae"/> + </g> + <path d="m4.8636 60.537-2.1477-2.194-0.71591 0.73134 2.8636 2.9254 6.1364-6.2687-0.71591-0.73134z"/> + <g> + <path d="m4.8636 73.537-2.1477-2.194-0.71591 0.73134 2.8636 2.9254 6.1364-6.2687-0.71591-0.73134z" fill="#3096fa"/> + <path d="m4.8636 99.537-2.1477-2.194-0.71591 0.73134 2.8636 2.9254 6.1364-6.2687-0.71591-0.73134z" fill="#aeaeae"/> + <path d="m4.8636 86.537-2.1477-2.194-0.71591 0.73135 2.8636 2.9254 6.1364-6.2687-0.71591-0.73134z" fill="#2979ff"/> + </g> + <path d="m2 110h9v1h-9z"/> + <g> + <path d="m2 123h9v1h-9z" fill="#3096fa"/> + <path d="m2 136h9v1h-9z" fill="#2979ff"/> + <path d="m2 149h9v1h-9z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_checkbox_16px.bmp b/dlls/light.msstyles/blue_checkbox_16px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3504ce48ff7b2a97db094252fc1bd13f6ab5fa00 GIT binary patch literal 12426 zcmeHNJx|+E6m`_9VW>oxPDmuGP#|HjBN#grmP(bnRLaH=VCmE$A7seX0Wl$xPzlsM zQo@D=AyNk>CPp?U79<vi5GRG#a~)seI0^Q1IwY2#INay!d)}Ad5x&o?f8Ev;qio}M z9(V`*0YXYtc?GMO_o><|LQ%Ru<Pz(jzy0Xlb60z93#(SEky@>G3h01v35q?bR4VgF zM@MzEkwg8Bt?7}M6boJ+Z5aK^aJkXr<Kr;+EgCQTWG!)h#HV$TfnuA#4A)q58((($ z?fp+HUms)tl8zccMy3slCC!ocfGGH9fRuhs-A2S#JR-93Q$PoVOHk~INH5RB)<rgv z6NP2h`lnd%@<6v=2`+CE@qHl-ehV=6BKu`5as9&Qxwy5oP8@5kv(L#|IaK#jxDPK} z;!Fr%m)ZL~S9AYDM@tPLBhyA#KhPX$FS8VdJp*L*TPN*5>?I@ZqITLYX*wWWLf1>$ z$-}RedBoQ{B`qf^68cAMr=;e&Um5Q6`t2@+(RYi+%RX7lbCu<B{3P*tEN(5$fn%+8 z_BmNAhw5Gm_u++0oC)FUW9(mOF4^dmlNp&dD3&yb`PU!HTC`nO&rp}rufc`(gZF>m z<PYP%zmLn8mNDL0{g8i6_4~gM^&i4UJOsWtZO9S(ZwEZmLKFD-QX50~X_K3UJqPZ9 zWngHr@i!3k1pG9EXJIda8z2e{6dS*afCGT$&t(pkYv2la&rY^B{tW!a(G%Y{Z4CAn zxB%XoKEv4f)?4=aDjfGf0|@g?2|iKQfEG{#jB!fxK~qw|Bd|vo9{5Dt1PW9!`BSZb zzvcfBZb)R}hscK<^^cf={9j}eJEp&h^NknvZ|9@mwBgGvWpO5Qj{2QQCr0Yu$``rB z2CkoA4gHJshgsx>m+;+Cjz{~=Ui$dicoo+NG=Gj0Td_I#t}(7FkzE+je;>aPoe`-) z{bLL<#NEPPAn)wczm?B@4zprwaTT%mXrn=SFUPp$Q@qG6t|7i9a`76EQ-*J}kx8V$ zc?1mo%ks@OHt~!KM!ma#g8YAi@_!+eP`j8s{JXC?>VH`N*e<F&roY)KsxRu_&c~TX zntaI3vasjCoxZ1z)W4Olm(&ehKjB=ZtN&jsv$(!QTQ`*B(SEZRE5B1pR@)`@facF} z&9XX&m}}rl>?Q~FZ{>^MpJqfQHSqVpwWr1qcMDvIV!!^aeC~6YZSN;n5qnR$uE4ns z$GGKFJf6iG;#-}fR^xHX@Tm=~Z3>)6z|g-epW472Hua)b=+=$%vLOGTtnYuc|AY5` z+MtROy#IICfqw_@|J^eeoxlJ2F#qRg?Pxvbf6wg(d|#a3(OHkD66F8E_kYSEJ#8M4 zyyTzOz5@Q>`Hgjboa+B+{et{|g7SZ-XKuakCI1Wfy%h-7FUbGRJR<o2-<~X7*Mj`P L7x}|ffB*Xjzuufm literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_checkbox_16px.svg b/dlls/light.msstyles/blue_checkbox_16px.svg new file mode 100644 index 00000000000..4646a259e62 --- /dev/null +++ b/dlls/light.msstyles/blue_checkbox_16px.svg @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:16-32" width="16" height="192" fill="#000000" version="1.1" viewBox="0 0 16 192" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g fill="none"> + <rect x=".5" y=".5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="16.5" width="15" height="15" rx="2" ry="2" stroke="#3096fa"/> + <rect x=".5" y="32.5" width="15" height="15" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="48.5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="64.5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="80.5" width="15" height="15" rx="2" ry="2" stroke="#3096fa"/> + <rect x=".5" y="96.5" width="15" height="15" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="112.5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="128.5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + <rect x=".5" y="144.5" width="15" height="15" rx="2" ry="2" stroke="#3096fa"/> + <rect x=".5" y="160.5" width="15" height="15" rx="2" ry="2" stroke="#2979ff"/> + <rect x=".5" y="176.5" width="15" height="15" rx="2" ry="2" stroke="#aeaeae"/> + </g> + <path d="m5.8182 74.91-2.8636-3.1343-0.95455 1.0448 3.8182 4.1791 8.1818-8.9552-0.95455-1.0448z"/> + <path d="m5.8182 90.91-2.8636-3.1343-0.95455 1.0448 3.8182 4.1791 8.1818-8.9552-0.95455-1.0448z" fill="#3096fa"/> + <path d="m5.8182 106.91-2.8636-3.1343-0.95455 1.0448 3.8182 4.1791 8.1818-8.9552-0.95455-1.0448z" fill="#2979ff"/> + <path d="m5.8182 122.91-2.8636-3.1343-0.95454 1.0448 3.8182 4.1791 8.1818-8.9552-0.95455-1.0448z"/> + <g> + <path d="m2 135h12v2h-12z"/> + <path d="m2 151h12v2h-12z" fill="#3096fa"/> + <path d="m2 167h12v2h-12z" fill="#2979ff"/> + <path d="m2 183h12v2h-12z"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_checkbox_25px.bmp b/dlls/light.msstyles/blue_checkbox_25px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8720209c6081e0c7f097a0822be7c621895e56d4 GIT binary patch literal 30138 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 I)$m#BzuylKPXGV_ literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_checkbox_25px.svg b/dlls/light.msstyles/blue_checkbox_25px.svg new file mode 100644 index 00000000000..0815af16e31 --- /dev/null +++ b/dlls/light.msstyles/blue_checkbox_25px.svg @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:25-32" width="25" height="300" fill="#000000" version="1.1" viewBox="0 0 25 300" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <rect x="1" y="1" width="23" height="23" rx="2" ry="2" fill="none" stroke="#aeaeae" stroke-width="2"/> + <path d="m9.4091 116.87-4.0568-4.7015-1.3523 1.5672 5.4091 6.2687 11.591-13.433-1.3523-1.5672z"/> + <path d="m4 211h17v3h-17z"/> + <g fill="none" stroke-width="2"> + <rect x="1" y="26" width="23" height="23" rx="2" ry="2" stroke="#3096fa"/> + <rect x="1" y="51" width="23" height="23" rx="2" ry="2" stroke="#2979ff"/> + <rect x="1" y="76" width="23" height="23" rx="2" ry="2" stroke="#aeaeae"/> + <rect x="1" y="101" width="23" height="23" rx="2" ry="2" stroke="#aeaeae"/> + <rect x="1" y="126" width="23" height="23" rx="2" ry="2" stroke="#3096fa"/> + <rect x="1" y="151" width="23" height="23" rx="2" ry="2" stroke="#2979ff"/> + <rect x="1" y="176" width="23" height="23" rx="2" ry="2" stroke="#aeaeae"/> + </g> + <g> + <path d="m9.4091 141.87-4.0568-4.7015-1.3523 1.5672 5.4091 6.2687 11.591-13.433-1.3523-1.5672z" fill="#3096fa"/> + <path d="m9.4091 166.87-4.0568-4.7015-1.3523 1.5672 5.4091 6.2687 11.591-13.433-1.3523-1.5672z" fill="#2979ff"/> + <path d="m9.4091 191.87-4.0568-4.7015-1.3523 1.5672 5.4091 6.2687 11.591-13.433-1.3523-1.5672z" fill="#aeaeae"/> + </g> + <g fill="none" stroke-width="2"> + <rect x="1" y="201" width="23" height="23" rx="2" ry="2" stroke="#aeaeae"/> + <rect x="1" y="226" width="23" height="23" rx="2" ry="2" stroke="#3096fa"/> + <rect x="1" y="251" width="23" height="23" rx="2" ry="2" stroke="#2979ff"/> + <rect x="1" y="276" width="23" height="23" rx="2" ry="2" stroke="#aeaeae"/> + </g> + <g> + <path d="m4 236h17v3h-17z" fill="#3096fa"/> + <path d="m4 261h17v3h-17z" fill="#2979ff"/> + <path d="m4 286h17v3h-17z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_commandlink.bmp b/dlls/light.msstyles/blue_commandlink.bmp new file mode 100644 index 0000000000000000000000000000000000000000..73f06fe6040b47966522ef122e007712a0d6d9b4 GIT binary patch literal 13074 zcmeI1y;8zJ6ote1SJ>Hu6pllL8G^h4jg^fLVP|ClAuwa<SUQpnuizW-_gX@d;(9jA z&cu)q3mf%h*zD%+ne6iAX77dV-JW%=<aoh(gmQ{<S+T5&Rkse%e!j+O=Mc-%AJrqh zo4dyyNr~Yw)4!f}Yth7+N4~Q`k({y#eP{MDX;sm;h$oIGuNNno+a#CD9tWMV(nA}{ zd-FI?XKYFjT{5n*?W@h)_GwHXwVDJukb`+AR84=NKhPi21pbXbl*ePlYpf4p<abuF z-|ow_d$dami3jYl?+l?`tOKX6^k_$BZOPP86ttJ?x6ZjL+gt-<<mMWo${muNMCBS7 zqbP?^cFb{P?pLHU^JlJMNH7K%62=G3^}d=~O@|!FA^o1vALtJ`{!pH4=->W2*9ba; zqWG=jd@9#KE&-n_%pcIVP<cjrPHd9^36KB@kN^pgz)us9ezPX7JxAG~NKR4qnRu-# z>V*t!PaX>PP+&*@IMKUyC{HDOC`!K__dDMU+GKvzl7sRA`h$KG$blR*0dgRRG=VSv zP#%vFud$Yd;x<-@<9)d=*h7I`+^Zq9$OjtrMDN;>S%)&UvM<H6xrc(s!T%h!Pm%*U lXaeLw4rv1Phct~}x=wNrCH)ZDCIJ#40TLhq68LijJ^`<tISl{+ literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_commandlink.svg b/dlls/light.msstyles/blue_commandlink.svg new file mode 100644 index 00000000000..77f23aca6e1 --- /dev/null +++ b/dlls/light.msstyles/blue_commandlink.svg @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:11-32" width="11" height="294" version="1.1" viewBox="0 0 2.9104 77.788" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g fill="none" stroke-linecap="round" stroke-width=".26458"> + <rect x=".13229" y="13.097" width="2.6456" height="12.7" rx=".52917" ry=".52917" stroke="#3096fa"/> + <rect x=".13229" y="26.061" width="2.6456" height="12.7" rx=".52917" ry=".52917" stroke="#2979ff"/> + <rect x=".13229" y="51.991" width="2.6456" height="12.7" rx=".52917" ry=".52917" stroke="#3096fa"/> + <rect x=".13229" y="64.955" width="2.6456" height="12.7" rx=".52917" ry=".52917" stroke="#3096fa"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_commandlink_glyph_30px.bmp b/dlls/light.msstyles/blue_commandlink_glyph_30px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e52b192007ce04e5d3180ed01e8b810873ce12bf GIT binary patch literal 18138 zcmeI2T~32Q5XUik4&$SIMCld!pid@7;UqrTHYVlK_-yGV__&WZp_q)bv>;8Jv|E-T z(Ld<`U3TXWzZsTHvg3!ZJFD70c>l(B$riJnSy$FMA0Ic@`Lwl>WvzdzjmGy+FRhD5 zon9Q(3!Oj!1pW(wV&O;1B%ilf-gv9nFWE?3JNCm`yIlHn(dULX=`vS2V#;*1O=&7W zMLc?!$g^TG3RrLbUP03+@<G^s-nvaZrRQk%T@cD4qk)1m5C8!X009sH0c`?#p3jwO z59}}?%QBDcn~et04q3N^c836J4rSISGgomkWjeWLN^|2!q#jJuG+@0dxB2+jHCK{s zId`5}PgFBW61R>g$2QV@?K*W=dQv&m=|(Xa1V8`;KmY_lpfdrQIgzr?jx-$5%=Tz% zmuw`iJ#oTDdvYyW2NSf3G?`a9qVmLqX=oeKtM7Sci_~T`b%Q3ip{X$=9qu{^+gHc^ zji>Y+t-cE~d3%^XdVl~3fB*=900{I+0P98jq`U3Az<N=v7u`+?qyGk3(}*>yMq}7^ zR$#qo8wbuo00ck)1V8`;dLn>&uqUv4+@c=zQ4j9P3sX&~2ThUO^)m=t)PuW$Knn<f IKraM-0R9zDg8%>k literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_commandlink_glyph_30px.svg b/dlls/light.msstyles/blue_commandlink_glyph_30px.svg new file mode 100644 index 00000000000..cb367b792a2 --- /dev/null +++ b/dlls/light.msstyles/blue_commandlink_glyph_30px.svg @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:30-32" width="30" height="150" version="1.1" viewBox="0 0 7.9375 39.688" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g stroke-width=".26458"> + <path d="m4.7625 2.1167-0.37306 0.37306 1.2118 1.2144h-4.2783v0.52917h4.2783l-1.2144 1.2144 0.37571 0.37306 1.8521-1.8521z" fill="#3096fa"/> + <path d="m4.7625 10.054-0.37306 0.37306 1.2118 1.2144h-4.2783v0.52917h4.2783l-1.2144 1.2144 0.37571 0.37306 1.8521-1.8521z" fill="#3096fa"/> + <path d="m4.7625 17.992-0.37306 0.37306 1.2118 1.2144h-4.2783v0.52917h4.2783l-1.2144 1.2144 0.37571 0.37306 1.8521-1.8521z" fill="#2979ff"/> + <path d="m4.7625 25.929-0.37306 0.37306 1.2118 1.2144h-4.2783v0.52917h4.2783l-1.2144 1.2144 0.37571 0.37306 1.8521-1.8521z" fill="#aeaeae"/> + <path d="m4.7625 33.867-0.37306 0.37306 1.2118 1.2144h-4.2783v0.52917h4.2783l-1.2144 1.2144 0.37571 0.37306 1.8521-1.8521z" fill="#3096fa"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_commandlink_glyph_45px.bmp b/dlls/light.msstyles/blue_commandlink_glyph_45px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a450715cf8a86a62713750564169cb2102860e36 GIT binary patch literal 40638 zcmeI5&rj1}7{@n%L=SpVFKSFQF|y4cYoqZ@xOnp75l@;RCr=Pyz+s7=ObFs^mnGr| zaw6f^X1M7Rju4K7a3S%J5W@&OK5bXlcEga;SDq$c;%iIC-hKG+?AcqM^`Yze&#wvl z;{*Rc%HtuAUp$hD+ljNhebTs{cRe4JNI3tjW7PHRMW5%!W9^<h)>q++U;qYS00v+H z24En52I^+^Ro&FSQNA-4OP+c$+snNBJZR6<EA;8^1<BTl5=nMEZSlHe*VL+1?z||T zyQmp1b7Na0<NhV_+(vf7&#kY}WXEOk+@?O}=hjx~%l#{oxh=L`L(BWPi~2f!etK0p z_nw&@^l_Wo29+LP7td{I{XT9ZyZO7I-#7`kZ$3}1Qha=C$9QlnEVp8|!+hQPIQoy6 zF>n7VJh~H>S@r$)ih3VAJ~;Hu@w`*a-c<d#Vdsxq-e}>q@^k6&wXom6>ig}Q`n$te zuyT>1tx0_ybk=v;xR2MAyWX&Q4ZYy!)kLrBn03m_8;A8X$7~NX+vh1ZukiB}_c_h1 z-ON72`Qf~K3|kn00T_S*7=Qs7fB_hQ0T_S*7=Qs7fC04z=I7^M^O&jCYO$!%&&|#C zGVeYQ;!#~*UKU=Xr{u!I!gPbzVz$Qja=9$LMsIT)0q)xD?5yw_JtdiWBEY?}w6r9= zMsIVEdAT`m*4VfB8a+QJ^ImS=U$0iHVrxKdMrF>y0QUxeFXC(T%-kQ~-sCtrQB5;2 zpPQ$YZrSyArBVr9J3bBO#$$%A(Vr6Y*5cw~==Van&lgo&j)Ok-a^P{Z$@%(3?>SM$ zYR$`>vC125c-Q%u*!NIzJiPP7f|Y|-rM?al+3Te70I%5fhQ-T%3jtoy>pEtg3h-8? zub-K>hlhQh!oDlg&r{rd$*kSXJyR-`P@{LHU<(5<00S@p126ysFaQHE00S@p126ys ziVe_E<~8L~GjX|&o^qL9%BA;t5RWRo6@DE(w|rvG=?1UGOf;1KPWjuiYxEZPaN6*3 z=h8LG3%`!u;vPzW3~;Z|fbi?+?KsJd1-RGPxA+=84QKKJ?se+BC%#6{aWWX--r$%Q zU!&(7*w5StP4>(tjodp?jlMaTomZVa<>XkE``a|y5xPcyO3dsd6}m=$O3Yg{624!7 z;w4C;5zn4D<9HtE5L=^<Ti$4!pK~d(HG0m$@BPn{)T-3iL2lP+t?$PDylJuP4Tm>V z2=Izt*D>pqk9R0j5x?%wrFxjzIZufJubbm(IMr>R55B>5^sW<ZVE_hT00v+H24DaN zU;qYS00v+H24Fz70ra|8Yq-%1^;_I}by7ZYrf%qyUT)qO-4oUNNjkk;(d%AqRQqQ~ zuY11_)t~L5*S)PckemL|o4)yXMxwb7dfi7E<LGrCrOnp4(Cfa{NmNJB>pm)zN6%9) zYGrTUjzzC~Q+vbA@#}S8)Lx?3{n4?ATVMbNU;qYS00v+H24DaNU;qYS00v+{g#py) zRakA#>HH2Ce~-RtMC~4G^lJUKn;kX!c2?9KLyg{X>#f`T-+k2Rql|9U=%cjRIu~m6 qtxlpkf*O5PCXb#6HTt97M19LHYV=Vn#e6UT126ysFaQGz4g3W~>mIoP literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_commandlink_glyph_45px.svg b/dlls/light.msstyles/blue_commandlink_glyph_45px.svg new file mode 100644 index 00000000000..b724ef6bd96 --- /dev/null +++ b/dlls/light.msstyles/blue_commandlink_glyph_45px.svg @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:45-32" width="45" height="225" version="1.1" viewBox="0 0 11.906 59.531" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g stroke-width=".26458"> + <path d="m7.1834 3.175-0.57825 0.55959 1.8783 1.8217h-6.6314v0.79375h6.6314l-1.8824 1.8217 0.58235 0.55959 2.8707-2.7781z" fill="#3096fa"/> + <path d="m7.1834 15.081-0.57825 0.5596 1.8783 1.8217h-6.6314v0.79375h6.6314l-1.8824 1.8217 0.58235 0.55959 2.8707-2.7781z" fill="#3096fa"/> + <path d="m7.1834 26.988-0.57825 0.5596 1.8783 1.8217h-6.6314v0.79375h6.6314l-1.8824 1.8217 0.58235 0.55959 2.8707-2.7781z" fill="#2979ff"/> + <path d="m7.1834 50.8-0.57825 0.5596 1.8783 1.8217h-6.6314v0.79375h6.6314l-1.8824 1.8217 0.58235 0.55959 2.8707-2.7781z" fill="#3096fa"/> + <path d="m7.1834 38.894-0.57825 0.5596 1.8783 1.8217h-6.6314v0.79375h6.6314l-1.8824 1.8217 0.58235 0.55959 2.8707-2.7781z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_groupbox.bmp b/dlls/light.msstyles/blue_groupbox.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9ef6c2136a694370f4339982703425ade854f185 GIT binary patch literal 1898 zcmZ?r&0=Q&gDxOh1H@uLECR%g3<?a)K>7h2kiY={85kf4B=g_NJ*XH%2>}5XH2Jk_ z*UGP3w{8~@{{-Uy6k?DWJ6Ek*CAWV4`rSaYtAK2*K0$K^UM|QCpm{Ywv%&79hM6!6 zw{6?T4m9@%$lowAYSADwN6lqm7!3zViW&`v(QrU6TWFjfe$t?v1eNc5fw+PiW`oQC X)e)e&0*DoW=I#Mvs?<Z!`bQoBr@jye literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_groupbox.svg b/dlls/light.msstyles/blue_groupbox.svg new file mode 100644 index 00000000000..4354fac3d32 --- /dev/null +++ b/dlls/light.msstyles/blue_groupbox.svg @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:22-32" width="22" height="20" version="1.1" viewBox="0 0 5.8208 5.2917" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g transform="translate(0,-1)"> + <rect x=".13229" y="1.1323" width="5.5563" height="5.0271" rx=".52917" ry=".52917" fill="none" stroke="#aeaeae" stroke-width=".26458"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_radiobutton_13px.bmp b/dlls/light.msstyles/blue_radiobutton_13px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..636992294934772b6821a1bdebbc8c625c46c738 GIT binary patch literal 5546 zcmeHLyG~m{5OowDO;V;KkOB#8B76}gMv7=6#YBqo5jIV#NCbxz)F}~M$3<FWSv(tr zD{9O)a9v>Y0f2a1kT&P+Biz?Qq@;j|D<-ouduDfb_K2M@^}hZhCBN_Z_Z#FnWCrpi z^(yrg`jwu?Fz|^~O8w9$rrv)19GLv0Vb?9F_4V}}WChZOTtW^Z)wQ*?iD=mF?rs<S zF6LX%#d^Ko59y(XZ-#!z5^*M0;~QIBTRd*;qaQI1#&HrlhZxV`G0wxc2RWf$U0r=g zoQ`826B`>FHAsPejTgX%#KghRJgbnS&CSi1j6v*v6tC?)z2*RHSs$L4KG?^Wm}Aaw zZ*TWv{sPiLPJQ&<wU4f2J9r+%PbcjI%m=QCwTqaq;w+QU2Uz17{W`9R`BRLk^YpWB z7<=&LXk+YRtsN6bU+^>cL!9v&9&jDR7FfqhrP2+%k2d|p2YFy(nI|wc?B9X-)Y_K$ z7+g?`FC#foO0PiLkV{b-K7_7{(ol?}V&P2}=3Gcilrlxc_KSs)9;xRtGs>S{BF^lg z@eMIMl*m!~foVV_M|D1)!HciyJm&TwCt6F6>Nw;vGy#82%neJ9YP^6iDk@IpiSwn8 z#QbZ?QH=K!@Qjxn74zu<j8%PbUY-s1u_Z=wRD2rj#ry@NBW4FBM=`#AAJ$Xtb90{3 z@HBkUv(T0tmG>a;D>I4l0q#R`6!(a@;U;jWQlpMCZ&h!Pb=K#=eP(t{9DTtra6i8} z8sLG)y0ea=Fy75`O1qTyu&*2BfmsuKAy3>F>rzVlTGvcI1{c&<%h{aoW>>CUr|rAW z<yF}^^vg~aI+3HmxR91#&KA!r<NcyO(nIaLV>8n4Iw6h{f9X06@zcUl_&E=p<fzKW z@eKajb@G_ogPc%b|8Nx75C^-(Jh68TW64pC7qCNO;$)sUAND*tTUH$Pm!176UfYtR z=SyP)ran9`>xcPcON`>^;$Sc4FA&!`TO5@fy>lPbQSB2rPdPiCv=8!^9OXU8`*KGo zfjbb(ilf&mt_j~Mq{+H4Z`KvI$2#kC;C{w-OdNf|k9d7QA&z1V^1y=>SVvJA@8&sa zYkwj~uVkKMHP!_<UuoDnpWxnR%-{Ktd;8WSPu7-PInnyow_fAX9kD|SiHyTpV{bih z`w^^(wZ8ShlZyry)YiBDu6>f;dc;gy_PO<~*KtkgQwX)>=tF$#9{@*D-uP$hN8`w_ z$HLJtC}N?viuI!rNX$&?M`NIf!@|)BDr_RR#C|l4y0IQ2M|J;qZ~M`k>V`+Qel(1V zTOy$!jibVzq<%Dvh+9ehXdD&x;4WhQXc!T<Z2f2)sXV%FkNs%i|4isP{;D6f*4omK z+VIAo)Q_4un@;LSZCK+M3H_*<vuXDA(SFp1HGW$^YUZQ*u^;{Se|w77*w~M6y{g3j H`quvf$~kDv literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_radiobutton_13px.svg b/dlls/light.msstyles/blue_radiobutton_13px.svg new file mode 100644 index 00000000000..41f2b6e976a --- /dev/null +++ b/dlls/light.msstyles/blue_radiobutton_13px.svg @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:13-32" width="13" height="104" version="1.1" viewBox="0 0 13 104" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <path d="m10 58.5a3.5 3.5 0 0 1-3.5 3.5 3.5 3.5 0 0 1-3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z"/> + <g fill="none"> + <ellipse cx="6.5" cy="6.5" rx="6" ry="6" stroke="#aeaeae"/> + <ellipse cx="6.5" cy="19.5" rx="6" ry="6" stroke="#3096fa"/> + <ellipse cx="6.5" cy="32.5" rx="6" ry="6" stroke="#2979ff"/> + <ellipse cx="6.5" cy="45.5" rx="6" ry="6" stroke="#aeaeae"/> + <ellipse cx="6.5" cy="58.5" rx="6" ry="6" stroke="#aeaeae"/> + <ellipse cx="6.5" cy="71.5" rx="6" ry="6" stroke="#3096fa"/> + <ellipse cx="6.5" cy="84.5" rx="6" ry="6" stroke="#2979ff"/> + <ellipse cx="6.5" cy="97.5" rx="6" ry="6" stroke="#aeaeae"/> + </g> + <g> + <path d="m10 71.5a3.5 3.5 0 0 1-3.5 3.5 3.5 3.5 0 0 1-3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="#3096fa"/> + <path d="m10 84.5a3.5 3.5 0 0 1-3.5 3.5 3.5 3.5 0 0 1-3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="#2979ff"/> + <path d="m10 97.5a3.5 3.5 0 0 1-3.5 3.5 3.5 3.5 0 0 1-3.5-3.5 3.5 3.5 0 0 1 3.5-3.5 3.5 3.5 0 0 1 3.5 3.5z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_radiobutton_16px.bmp b/dlls/light.msstyles/blue_radiobutton_16px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9b8ffe570b308de67845223ad0c3d1d409f430ac GIT binary patch literal 8330 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 literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_radiobutton_16px.svg b/dlls/light.msstyles/blue_radiobutton_16px.svg new file mode 100644 index 00000000000..158279ee557 --- /dev/null +++ b/dlls/light.msstyles/blue_radiobutton_16px.svg @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:16-32" width="16" height="128" version="1.1" viewBox="0 0 16 128" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <path d="m13 72a5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5 5 5 0 0 1 5 5z"/> + <g fill="none"> + <circle cx="8" cy="8" r="7.5" stroke="#aeaeae"/> + <circle cx="8" cy="24" r="7.5" stroke="#3096fa"/> + <circle cx="8" cy="40" r="7.5" stroke="#2979ff"/> + <circle cx="8" cy="56" r="7.5" stroke="#aeaeae"/> + <circle cx="8" cy="72" r="7.5" stroke="#aeaeae"/> + <circle cx="8" cy="88" r="7.5" stroke="#3096fa"/> + <circle cx="8" cy="104" r="7.5" stroke="#2979ff"/> + <circle cx="8" cy="120" r="7.5" stroke="#aeaeae"/> + </g> + <g> + <path d="m13 88a5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5 5 5 0 0 1 5 5z" fill="#3096fa" stroke="#3096fa"/> + <path d="m13 104a5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5 5 5 0 0 1 5 5z" fill="#2979ff"/> + <path d="m13 120a5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5 5 5 0 0 1 5 5z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/blue_radiobutton_25px.bmp b/dlls/light.msstyles/blue_radiobutton_25px.bmp new file mode 100644 index 0000000000000000000000000000000000000000..cab87f62316ed9d409412a5b32a1c30b394a6e1b GIT binary patch literal 20138 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 literal 0 HcmV?d00001 diff --git a/dlls/light.msstyles/blue_radiobutton_25px.svg b/dlls/light.msstyles/blue_radiobutton_25px.svg new file mode 100644 index 00000000000..f105f57095c --- /dev/null +++ b/dlls/light.msstyles/blue_radiobutton_25px.svg @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg id="bitmap:25-32" width="25" height="200" version="1.1" viewBox="0 0 25 200" xmlns="
http://www.w3.org/2000/svg
" xmlns:cc="
http://creativecommons.org/ns#
" xmlns:dc="
http://purl.org/dc/elements/1.1/
" xmlns:rdf="
http://www.w3.org/1999/02/22-rdf-syntax-ns#
"> + <metadata> + <rdf:RDF> + <cc:Work rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="
http://purl.org/dc/dcmitype/StillImage
"/> + <dc:title/> + </cc:Work> + </rdf:RDF> + </metadata> + <g fill="none" stroke-width="2"> + <ellipse cx="12.5" cy="12.5" rx="11.5" ry="11.5" stroke="#aeaeae"/> + <ellipse cx="12.5" cy="37.5" rx="11.5" ry="11.5" stroke="#3096fa"/> + <ellipse cx="12.5" cy="62.5" rx="11.5" ry="11.5" stroke="#2979ff"/> + <ellipse cx="12.5" cy="87.5" rx="11.5" ry="11.5" stroke="#aeaeae"/> + <ellipse cx="12.5" cy="112.5" rx="11.5" ry="11.5" stroke="#aeaeae"/> + <ellipse cx="12.5" cy="137.5" rx="11.5" ry="11.5" stroke="#3096fa"/> + <ellipse cx="12.5" cy="162.5" rx="11.5" ry="11.5" stroke="#2979ff"/> + <ellipse cx="12.5" cy="187.5" rx="11.5" ry="11.5" stroke="#aeaeae"/> + </g> + <path d="m20 112.5a7.5 7.5 0 0 1-7.5 7.5 7.5 7.5 0 0 1-7.5-7.5 7.5 7.5 0 0 1 7.5-7.5 7.5 7.5 0 0 1 7.5 7.5z"/> + <g> + <path d="m20 137.5a7.5 7.5 0 0 1-7.5 7.5 7.5 7.5 0 0 1-7.5-7.5 7.5 7.5 0 0 1 7.5-7.5 7.5 7.5 0 0 1 7.5 7.5z" fill="#3096fa"/> + <path d="m20 162.5a7.5 7.5 0 0 1-7.5 7.5 7.5 7.5 0 0 1-7.5-7.5 7.5 7.5 0 0 1 7.5-7.5 7.5 7.5 0 0 1 7.5 7.5z" fill="#2979ff"/> + <path d="m20 187.5a7.5 7.5 0 0 1-7.5 7.5 7.5 7.5 0 0 1-7.5-7.5 7.5 7.5 0 0 1 7.5-7.5 7.5 7.5 0 0 1 7.5 7.5z" fill="#aeaeae"/> + </g> +</svg> diff --git a/dlls/light.msstyles/light.rc b/dlls/light.msstyles/light.rc index dccda341b7c..cc5b371da8c 100644 --- a/dlls/light.msstyles/light.rc +++ b/dlls/light.msstyles/light.rc @@ -179,8 +179,157 @@ BLUE_INI TEXTFILE "\r\n; Flat menus\r\n" "FlatMenus = true\r\n" + +"\r\n; Button\r\n" +"[Button.Pushbutton]\r\n" +"BgType = ImageFile\r\n" +"SizingMargins = 8, 8, 8, 8\r\n" +"SizingType = Stretch\r\n" +"ContentMargins = 3, 3, 3, 3\r\n" +"ImageFile = blue_button.bmp\r\n" +"ImageCount = 6\r\n" +"ImageLayout = Vertical\r\n" +"TextColor = 0 0 0\r\n" +"MinSize = 10, 5\r\n" + +"[Button.Pushbutton(Pressed)]\r\n" +"TextColor = 255 255 255\r\n" + +"[Button.Pushbutton(Disabled)]\r\n" +"TextColor = 166 166 166\r\n" + +"[Button.Checkbox]\r\n" +"BgType = ImageFile\r\n" +"ImageLayout = Vertical\r\n" +"SizingType = TrueSize\r\n" +"SizingMargins = 0, 0, 0, 0\r\n" +"ContentMargins = 0, 0, 0, 0\r\n" +"ImageCount = 12\r\n" +"MirrorImage = False\r\n" +"ImageSelectType = Dpi\r\n" +"UniformSizing = True\r\n" +"Transparent = True\r\n" +"ImageFile1 = blue_checkbox_13px.bmp\r\n" +"ImageFile2 = blue_checkbox_16px.bmp\r\n" +"ImageFile3 = blue_checkbox_25px.bmp\r\n" +"MinDpi1 = 96\r\n" +"MinDpi2 = 118\r\n" +"MinDpi3 = 185\r\n" + +"[Button.Checkbox(Checkeddisabled)]\r\n" +"TextColor = 189 189 189\r\n" + +"[Button.Checkbox(Uncheckeddisabled)]\r\n" +"TextColor = 189 189 189\r\n" + +"[Button.Checkbox(Mixeddisabled)]\r\n" +"TextColor = 189 189 189\r\n" + +"[Button.Radiobutton]\r\n" +"BgType = ImageFile\r\n" +"ImageLayout = Vertical\r\n" +"Transparent = True\r\n" +"SizingType = TrueSize\r\n" +"SizingMargins = 0, 0, 0, 0\r\n" +"ContentMargins = 0, 0, 0, 0\r\n" +"ImageCount = 8\r\n" +"ImageSelectType = Dpi\r\n" +"UniformSizing = True\r\n" +"ImageFile1 = blue_radiobutton_13px.bmp\r\n" +"ImageFile2 = blue_radiobutton_16px.bmp\r\n" +"ImageFile3 = blue_radiobutton_25px.bmp\r\n" +"MinDpi1 = 96\r\n" +"MinDpi2 = 118\r\n" +"MinDpi3 = 185\r\n" + +"[Button.Radiobutton(Checkeddisabled)]\r\n" +"TextColor = 189 189 189\r\n" + +"[Button.Radiobutton(Uncheckeddisabled)]\r\n" +"TextColor = 189 189 189\r\n" + +"[Button.Groupbox]\r\n" +"TextColor = 0 0 0\r\n" +"BgType = ImageFile\r\n" +"SizingMargins = 5, 5, 5, 5\r\n" +"SizingType = Tile\r\n" +"ImageFile = blue_groupbox.bmp\r\n" +"BorderOnly = True\r\n" +"Transparent = True\r\n" + +"[Button.Commandlink]\r\n" +"BgType = ImageFile\r\n" +"BorderSize = 0\r\n" +"ContentMargins = 7, 7, 10, 10\r\n" +"Font = Tahoma, 10\r\n" +"BodyFont = Tahoma, 8\r\n" +"ImageFile = blue_commandlink.bmp\r\n" +"ImageCount = 6\r\n" +"ImageLayout = Vertical\r\n" +"SizingType = Stretch\r\n" +"SizingMargins = 5, 5, 24, 24\r\n" +"Transparent = True\r\n" +"TextColor = 0 0 0\r\n" +"MinSize = 10, 5\r\n" + +"[Button.Commandlink(Hot)]\r\n" +"TextColor = 48 150 250\r\n" + +"[Button.Commandlink(Pressed)]\r\n" +"TextColor = 41 121 255\r\n" + +"[Button.Commandlink(Disabled)]\r\n" +"TextColor = 174 174 174\r\n" + +"[Button.CommandlinkGlyph]\r\n" +"BgType = ImageFile\r\n" +"SizingType = TrueSize\r\n" +"ImageCount = 5\r\n" +"Transparent = True\r\n" +"ImageLayout = Vertical\r\n" +"ImageSelectType = Dpi\r\n" +"Transparent = True\r\n" +"UniformSizing = True\r\n" +"ImageFile1 = blue_commandlink_glyph_30px.bmp\r\n" +"ImageFile2 = blue_commandlink_glyph_45px.bmp\r\n" +"MinDpi1 = 96\r\n" +"MinDpi2 = 144\r\n" } +/* Button */ +/* @makedep: blue_button.bmp */ +BLUE_BUTTON_BMP BITMAP "blue_button.bmp" + +/* @makedep: blue_checkbox_13px.bmp */ +BLUE_CHECKBOX_13PX_BMP BITMAP "blue_checkbox_13px.bmp" + +/* @makedep: blue_checkbox_16px.bmp */ +BLUE_CHECKBOX_16PX_BMP BITMAP "blue_checkbox_16px.bmp" + +/* @makedep: blue_checkbox_25px.bmp */ +BLUE_CHECKBOX_25PX_BMP BITMAP "blue_checkbox_25px.bmp" + +/* @makedep: blue_radiobutton_13px.bmp */ +BLUE_RADIOBUTTON_13PX_BMP BITMAP "blue_radiobutton_13px.bmp" + +/* @makedep: blue_radiobutton_16px.bmp */ +BLUE_RADIOBUTTON_16PX_BMP BITMAP "blue_radiobutton_16px.bmp" + +/* @makedep: blue_radiobutton_25px.bmp */ +BLUE_RADIOBUTTON_25PX_BMP BITMAP "blue_radiobutton_25px.bmp" + +/* @makedep: blue_groupbox.bmp */ +BLUE_GROUPBOX_BMP BITMAP "blue_groupbox.bmp" + +/* @makedep: blue_commandlink.bmp */ +BLUE_COMMANDLINK_BMP BITMAP "blue_commandlink.bmp" + +/* @makedep: blue_commandlink_glyph_30px.bmp */ +BLUE_COMMANDLINK_GLYPH_30PX_BMP BITMAP "blue_commandlink_glyph_30px.bmp" + +/* @makedep: blue_commandlink_glyph_45px.bmp */ +BLUE_COMMANDLINK_GLYPH_45PX_BMP BITMAP "blue_commandlink_glyph_45px.bmp" + /* File version */ #define WINE_FILEDESCRIPTION_STR "Light Theme" #define WINE_FILENAME_STR "light.msstyles" -- 2.30.2
[View Less]
1
0
0
0
[PATCH 5/5] nsi/tests: Add tests for the NDIS ifinfo table.
by Huw Davies
24 Jun '21
24 Jun '21
Signed-off-by: Huw Davies <huw(a)codeweavers.com> --- dlls/nsi/tests/Makefile.in | 5 ++ dlls/nsi/tests/nsi.c | 146 +++++++++++++++++++++++++++++++++++++ include/ifmib.h | 72 ++++++++++++++++++ 3 files changed, 223 insertions(+) create mode 100644 dlls/nsi/tests/Makefile.in create mode 100644 dlls/nsi/tests/nsi.c diff --git a/dlls/nsi/tests/Makefile.in b/dlls/nsi/tests/Makefile.in new file mode 100644 index 00000000000..98129935198 --- /dev/null +++ b/dlls/nsi/
…
[View More]
tests/Makefile.in @@ -0,0 +1,5 @@ +TESTDLL = nsi.dll +IMPORTS = nsi uuid iphlpapi + +C_SRCS = \ + nsi.c diff --git a/dlls/nsi/tests/nsi.c b/dlls/nsi/tests/nsi.c new file mode 100644 index 00000000000..96806e444de --- /dev/null +++ b/dlls/nsi/tests/nsi.c @@ -0,0 +1,146 @@ +/* + * Network Store Interface tests + * + * Copyright 2021 Huw Davies + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "winsock2.h" +#include "winternl.h" +#include "ws2ipdef.h" +#include "iphlpapi.h" +#include "netioapi.h" +#include "iptypes.h" +#include "netiodef.h" + +#include "wine/test.h" + +static int bounded( ULONG64 val, ULONG64 lo, ULONG64 hi ) +{ + return lo <= val && val <= hi; +} + +static void test_ndis_ifinfo( void ) +{ + DWORD rw_sizes[] = { FIELD_OFFSET(struct nsi_ndis_ifinfo_rw, name2), FIELD_OFFSET(struct nsi_ndis_ifinfo_rw, unk), + sizeof(struct nsi_ndis_ifinfo_rw) }; + struct nsi_ndis_ifinfo_rw *rw_tbl; + struct nsi_ndis_ifinfo_dynamic *dyn_tbl, *dyn_tbl_2; + struct nsi_ndis_ifinfo_static *stat_tbl; + DWORD err, count, i, rw_size; + NET_LUID *luid_tbl, *luid_tbl_2; + MIB_IF_TABLE2 *table; + + /* Contents of GetIfTable2() keyed by luids */ + + for (i = 0; i < ARRAY_SIZE(rw_sizes); i++) + { + err = NsiAllocateAndGetTable( 1, &NPI_MS_NDIS_MODULEID, NSI_NDIS_IFINFO_TABLE, (void **)&luid_tbl, sizeof(*luid_tbl), + (void **)&rw_tbl, rw_sizes[i], (void **)&dyn_tbl, sizeof(*dyn_tbl), + (void **)&stat_tbl, sizeof(*stat_tbl), &count, 0 ); + if (!err) break; + } +todo_wine + ok( !err, "got %d\n", err ); + if (err) return; + rw_size = rw_sizes[i]; + + err = GetIfTable2( &table ); + ok( !err, "got %d\n", err ); + ok( table->NumEntries == count, "table entries %d count %d\n", table->NumEntries, count ); + + /* Grab the dyn table again to provide an upper bound for the stats returned from GetIfTable2(). + (The luids must be retrieved again otherwise NsiAllocateAndGetTable() fails). */ + err = NsiAllocateAndGetTable( 1, &NPI_MS_NDIS_MODULEID, NSI_NDIS_IFINFO_TABLE, (void **)&luid_tbl_2, sizeof(*luid_tbl_2), + NULL, 0, (void **)&dyn_tbl_2, sizeof(*dyn_tbl_2), + NULL, 0, &count, 0 ); + ok( !err, "got %d\n", err ); + ok( table->NumEntries == count, "table entries %d count %d\n", table->NumEntries, count ); + + for (i = 0; i < count; i++) + { + MIB_IF_ROW2 *row = table->Table + i; + NET_LUID *luid = luid_tbl + i; + struct nsi_ndis_ifinfo_rw *rw = (struct nsi_ndis_ifinfo_rw *)((BYTE *)rw_tbl + i * rw_size); + struct nsi_ndis_ifinfo_dynamic *dyn = dyn_tbl + i, *dyn_2 = dyn_tbl_2 + i; + struct nsi_ndis_ifinfo_static *stat = stat_tbl + i; + + ok( row->InterfaceLuid.Value == luid->Value, "%d: mismatch\n", i ); + ok( row->InterfaceIndex == stat->if_index, "%d: mismatch\n", i ); + ok( IsEqualGUID( &row->InterfaceGuid, &stat->if_guid ), "%d: mismatch\n", i ); + ok( !memcmp( row->Alias, rw->alias.String, rw->alias.Length ), "%d: mismatch\n", i ); + ok( lstrlenW( row->Alias ) * 2 == rw->alias.Length, "%d: mismatch\n", i ); + ok( !memcmp( row->Description, stat->descr.String, sizeof(row->Description) ), "%d: mismatch\n", i ); + ok( lstrlenW( row->Description ) * 2 == stat->descr.Length, "%d: mismatch\n", i ); + ok( row->PhysicalAddressLength == rw->phys_addr.Length, "%d: mismatch\n", i ); + ok( !memcmp( row->PhysicalAddress, rw->phys_addr.Address, IF_MAX_PHYS_ADDRESS_LENGTH ), "%d: mismatch\n", i ); + ok( row->PhysicalAddressLength == stat->perm_phys_addr.Length, "%d: mismatch\n", i ); + ok( !memcmp( row->PermanentPhysicalAddress, stat->perm_phys_addr.Address, IF_MAX_PHYS_ADDRESS_LENGTH ), "%d: mismatch\n", i ); + ok( row->Mtu == dyn->mtu, "%d: mismatch\n", i ); + ok( row->Type == stat->type, "%d: mismatch\n", i ); + /* TunnelType */ + ok( row->MediaType == stat->media_type, "%d: mismatch\n", i ); + ok( row->PhysicalMediumType == stat->phys_medium_type, "%d: mismatch\n", i ); + ok( row->AccessType == stat->access_type, "%d: mismatch\n", i ); + /* DirectionType */ + ok( row->InterfaceAndOperStatusFlags.HardwareInterface == stat->flags.hw, "%d: mismatch\n", i ); + ok( row->InterfaceAndOperStatusFlags.FilterInterface == stat->flags.filter, "%d: mismatch\n", i ); + ok( row->InterfaceAndOperStatusFlags.ConnectorPresent == stat->conn_present, "%d: mismatch\n", i ); + /* NotAuthenticated */ + ok( row->InterfaceAndOperStatusFlags.NotMediaConnected == dyn->flags.not_media_conn, "%d: mismatch\n", i ); + /* Paused */ + /* LowPower */ + /* EndPointInterface */ + ok( row->OperStatus == dyn->oper_status, "%d: mismatch\n", i ); + ok( row->AdminStatus == rw->admin_status, "%d: mismatch\n", i ); + ok( row->MediaConnectState == dyn->media_conn_state, "%d: status mismatch\n", i ); + ok( IsEqualGUID( &row->NetworkGuid, &rw->network_guid ), "%d: mismatch\n", i ); + ok( row->ConnectionType == stat->conn_type, "%d: mismatch\n", i ); + if (dyn->xmit_speed == ~0ULL) dyn->xmit_speed = 0; + ok( row->TransmitLinkSpeed == dyn->xmit_speed, "%d: mismatch\n", i ); + if (dyn->rcv_speed == ~0ULL) dyn->rcv_speed = 0; + ok( row->ReceiveLinkSpeed == dyn->rcv_speed, "%d: mismatch\n", i ); + ok( bounded( row->InOctets, dyn->in_octets, dyn_2->in_octets ), "%d: mismatch\n", i ); + ok( bounded( row->InUcastPkts, dyn->in_ucast_pkts, dyn_2->in_ucast_pkts ), "%d: mismatch\n", i ); + ok( bounded( row->InNUcastPkts, dyn->in_mcast_pkts + dyn->in_bcast_pkts, + dyn_2->in_mcast_pkts + dyn_2->in_bcast_pkts ), "%d: mismatch\n", i ); + ok( bounded( row->InDiscards, dyn->in_discards, dyn_2->in_discards ), "%d: mismatch\n", i ); + ok( bounded( row->InErrors, dyn->in_errors, dyn_2->in_errors ), "%d: mismatch\n", i ); + /* InUnknownProtos */ + ok( bounded( row->InUcastOctets, dyn->in_ucast_octs, dyn_2->in_ucast_octs ), "%d: mismatch\n", i ); + ok( bounded( row->InMulticastOctets, dyn->in_mcast_octs, dyn_2->in_mcast_octs ), "%d: mismatch\n", i ); + ok( bounded( row->InBroadcastOctets, dyn->in_bcast_octs, dyn_2->in_bcast_octs ), "%d: mismatch\n", i ); + ok( bounded( row->OutOctets, dyn->out_octets, dyn_2->out_octets ), "%d: mismatch\n", i ); + ok( bounded( row->OutUcastPkts, dyn->out_ucast_pkts, dyn_2->out_ucast_pkts ), "%d: mismatch\n", i ); + ok( bounded( row->OutNUcastPkts, dyn->out_mcast_pkts + dyn->out_bcast_pkts, + dyn_2->out_mcast_pkts + dyn_2->out_bcast_pkts ), "%d: mismatch\n", i ); + ok( bounded( row->OutDiscards, dyn->out_discards, dyn_2->out_discards ), "%d: mismatch\n", i ); + ok( bounded( row->OutErrors, dyn->out_errors, dyn_2->out_errors ), "%d: mismatch\n", i ); + ok( bounded( row->OutUcastOctets, dyn->out_ucast_octs, dyn_2->out_ucast_octs ), "%d: mismatch\n", i ); + ok( bounded( row->OutMulticastOctets, dyn->out_mcast_octs, dyn_2->out_mcast_octs ), "%d: mismatch\n", i ); + ok( bounded( row->OutBroadcastOctets, dyn->out_bcast_octs, dyn_2->out_bcast_octs ), "%d: mismatch\n", i ); + /* OutQLen */ + } + + FreeMibTable( table ); + NsiFreeTable( luid_tbl_2, NULL, dyn_tbl_2, NULL ); + NsiFreeTable( luid_tbl, rw_tbl, dyn_tbl, stat_tbl ); +} + +START_TEST( nsi ) +{ + test_ndis_ifinfo(); +} diff --git a/include/ifmib.h b/include/ifmib.h index 440ed144037..83f2c090945 100644 --- a/include/ifmib.h +++ b/include/ifmib.h @@ -66,5 +66,77 @@ typedef struct _MIB_IFTABLE MIB_IFROW table[1]; } MIB_IFTABLE, *PMIB_IFTABLE; +/* Undocumented NSI NDIS tables */ +#define NSI_NDIS_IFINFO_TABLE 0 +#define NSI_NDIS_INDEX_LUID_TABLE 2 + +struct nsi_ndis_ifinfo_rw +{ + GUID network_guid; + DWORD admin_status; + IF_COUNTED_STRING alias; /* .Length in bytes not including '\0' */ + IF_PHYSICAL_ADDRESS phys_addr; + USHORT pad; + IF_COUNTED_STRING name2; + DWORD unk; +}; + +struct nsi_ndis_ifinfo_dynamic +{ + DWORD oper_status; + struct + { + DWORD unk : 1; + DWORD not_media_conn : 1; + DWORD unk2 : 30; + } flags; + DWORD media_conn_state; + DWORD unk; + DWORD mtu; + ULONG64 xmit_speed; + ULONG64 rcv_speed; + ULONG64 in_errors; + ULONG64 in_discards; + ULONG64 out_errors; + ULONG64 out_discards; + ULONG64 unk2; + ULONG64 in_octets; + ULONG64 in_ucast_pkts; + ULONG64 in_mcast_pkts; + ULONG64 in_bcast_pkts; + ULONG64 out_octets; + ULONG64 out_ucast_pkts; + ULONG64 out_mcast_pkts; + ULONG64 out_bcast_pkts; + ULONG64 unk3[2]; + ULONG64 in_ucast_octs; + ULONG64 in_mcast_octs; + ULONG64 in_bcast_octs; + ULONG64 out_ucast_octs; + ULONG64 out_mcast_octs; + ULONG64 out_bcast_octs; + ULONG64 unk4; +}; + +struct nsi_ndis_ifinfo_static +{ + DWORD if_index; + IF_COUNTED_STRING descr; + DWORD type; + DWORD access_type; + DWORD unk; + DWORD conn_type; + GUID if_guid; + USHORT conn_present; + IF_PHYSICAL_ADDRESS perm_phys_addr; + struct + { + DWORD hw : 1; + DWORD filter : 1; + DWORD unk : 30; + } flags; + DWORD media_type; + DWORD phys_medium_type; +}; #endif /* __WINE_IFMIB_H */ -- 2.23.0
[View Less]
1
0
0
0
[PATCH 4/5] nsi: Add stub implementations of NsiAllocateAndGetTable() and NsiFreeTable().
by Huw Davies
24 Jun '21
24 Jun '21
Signed-off-by: Huw Davies <huw(a)codeweavers.com> --- dlls/nsi/Makefile.in | 3 +++ dlls/nsi/nsi.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ dlls/nsi/nsi.spec | 4 ++-- include/netiodef.h | 6 ++++++ 4 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 dlls/nsi/nsi.c diff --git a/dlls/nsi/Makefile.in b/dlls/nsi/Makefile.in index 634c4011ed9..68126cab6c6 100644 --- a/dlls/nsi/Makefile.in +++ b/dlls/nsi/Makefile.in @@ -2,3 +2,6 @@ MODULE = nsi.
…
[View More]
dll IMPORTLIB = nsi EXTRADLLFLAGS = -mno-cygwin + +C_SRCS = \ + nsi.c diff --git a/dlls/nsi/nsi.c b/dlls/nsi/nsi.c new file mode 100644 index 00000000000..3d6429a9113 --- /dev/null +++ b/dlls/nsi/nsi.c @@ -0,0 +1,44 @@ +/* + * Network Store Interface + * + * Copyright 2021 Huw Davies + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ +#include "winsock2.h" +#include "winternl.h" +#include "ws2ipdef.h" +#include "iphlpapi.h" +#include "netioapi.h" +#include "iptypes.h" +#include "netiodef.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(nsi); + +DWORD WINAPI NsiAllocateAndGetTable( DWORD unk, const NPI_MODULEID *module, DWORD table, void **key_data, DWORD key_size, + void **rw_data, DWORD rw_size, void **dynamic_data, DWORD dynamic_size, + void **static_data, DWORD static_size, DWORD *count, DWORD unk2 ) +{ + FIXME( "%d %p %d %p %d %p %d %p %d %p %d %p %d: stub\n", unk, module, table, key_data, key_size, + rw_data, rw_size, dynamic_data, dynamic_size, static_data, static_size, count, unk2 ); + return ERROR_CALL_NOT_IMPLEMENTED; +} + +void WINAPI NsiFreeTable( void *key_data, void *rw_data, void *dynamic_data, void *static_data ) +{ + FIXME( "%p %p %p %p: stub\n", key_data, rw_data, dynamic_data, static_data ); +} diff --git a/dlls/nsi/nsi.spec b/dlls/nsi/nsi.spec index 2d500d30e94..fc2db9e35c1 100644 --- a/dlls/nsi/nsi.spec +++ b/dlls/nsi/nsi.spec @@ -1,5 +1,5 @@ @ stub NsiAllocateAndGetPersistentDataWithMaskTable -@ stub NsiAllocateAndGetTable +@ stdcall NsiAllocateAndGetTable(long ptr long ptr long ptr long ptr long ptr long ptr long) @ stub NsiCancelChangeNotification @ stub NsiDeregisterChangeNotification @ stub NsiDeregisterChangeNotificationEx @@ -7,7 +7,7 @@ @ stub NsiEnumerateObjectsAllParametersEx @ stub NsiEnumerateObjectsAllPersistentParametersWithMask @ stub NsiFreePersistentDataWithMaskTable -@ stub NsiFreeTable +@ stdcall NsiFreeTable(ptr ptr ptr ptr) @ stub NsiGetAllParameters @ stub NsiGetAllParametersEx @ stub NsiGetAllPersistentParametersWithMask diff --git a/include/netiodef.h b/include/netiodef.h index 3089685bef1..2bc05399b63 100644 --- a/include/netiodef.h +++ b/include/netiodef.h @@ -96,4 +96,10 @@ DEFINE_NPI_MS_MODULEID( NPI_MS_NDIS_MODULEID, 0x11 ); #undef _U #undef __U +/* Undocumented Nsi api */ +DWORD WINAPI NsiAllocateAndGetTable( DWORD unk, const NPI_MODULEID *module, DWORD table, void **key_data, DWORD key_size, + void **rw_data, DWORD rw_size, void **dynamic_data, DWORD dynamic_size, + void **static_data, DWORD static_size, DWORD *count, DWORD unk2 ); +void WINAPI NsiFreeTable( void *key_data, void *rw_data, void *dynamic_data, void *static_data ); + #endif /* __WINE_NETIODEF_H */ -- 2.23.0
[View Less]
1
0
0
0
[PATCH 3/5] nsi: Add a stub dll.
by Huw Davies
24 Jun '21
24 Jun '21
Signed-off-by: Huw Davies <huw(a)codeweavers.com> --- dlls/nsi/Makefile.in | 4 ++++ dlls/nsi/nsi.spec | 26 ++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 dlls/nsi/Makefile.in create mode 100644 dlls/nsi/nsi.spec diff --git a/dlls/nsi/Makefile.in b/dlls/nsi/Makefile.in new file mode 100644 index 00000000000..634c4011ed9 --- /dev/null +++ b/dlls/nsi/Makefile.in @@ -0,0 +1,4 @@ +MODULE = nsi.dll +IMPORTLIB = nsi + +EXTRADLLFLAGS = -mno-cygwin
…
[View More]
diff --git a/dlls/nsi/nsi.spec b/dlls/nsi/nsi.spec new file mode 100644 index 00000000000..2d500d30e94 --- /dev/null +++ b/dlls/nsi/nsi.spec @@ -0,0 +1,26 @@ +@ stub NsiAllocateAndGetPersistentDataWithMaskTable +@ stub NsiAllocateAndGetTable +@ stub NsiCancelChangeNotification +@ stub NsiDeregisterChangeNotification +@ stub NsiDeregisterChangeNotificationEx +@ stub NsiEnumerateObjectsAllParameters +@ stub NsiEnumerateObjectsAllParametersEx +@ stub NsiEnumerateObjectsAllPersistentParametersWithMask +@ stub NsiFreePersistentDataWithMaskTable +@ stub NsiFreeTable +@ stub NsiGetAllParameters +@ stub NsiGetAllParametersEx +@ stub NsiGetAllPersistentParametersWithMask +@ stub NsiObjectSecurity +@ stub NsiGetParameter +@ stub NsiGetParameterEx +@ stub NsiRegisterChangeNotification +@ stub NsiRegisterChangeNotificationEx +@ stub NsiRequestChangeNotification +@ stub NsiRequestChangeNotificationEx +@ stub NsiSetAllParameters +@ stub NsiSetAllParametersEx +@ stub NsiSetAllPersistentParametersWithMask +@ stub NsiSetObjectSecurity +@ stub NsiSetParameter +@ stub NsiSetParameterEx -- 2.23.0
[View Less]
1
0
0
0
← Newer
1
...
14
15
16
17
18
19
20
...
61
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Results per page:
10
25
50
100
200