Bug 565679 - [Win32] SWT requests WS_EX_CLIENTEDGE and then tries to make it look like WS_BORDER

This patch addresses problems in Tree:

* Border type is now `WS_BORDER` instead if incorrect `WS_EX_CLIENTEDGE`
  `WS_BORDER` is a flat 1px border.
  `WS_EX_CLIENTEDGE` is a 3D 2px border.
  Workarounds forced Tree to appear as if it had `WS_BORDER`.

* When `hwndParent` is created, border is removed on Tree and added to
  `hwndParent` instead. This is more reasonable and allows to remove
  workaround in `Tree.setScrollWidth()` which moved unwanted borders
  outside the visible area.

Side effects:

* Tree contents moved one pixel left/up, because border is now 1px
  thinner. I think that this is fine.

* Border is now darker, matching original Windows appearance for
  borders. I consider this to be a good change, because it brings SWT
  in line with native applications.

Change-Id: I551cd86d746392b625dfd5cc70130fb89b1d0ca5
Signed-off-by: Alexandr Miloslavskiy <alexandr.miloslavskiy@syntevo.com>
4 files changed
tree: 4fa3043241546923541e282c2d64a0438c622f6c
  1. bundles/
  2. container/
  3. examples/
  4. features/
  5. local-build/
  6. tests/
  7. .gitignore
  10. NOTICE
  11. pom.xml
  12. README.md

Contributing to SWT

Thanks for your interest in this project.

Developer resources:

See the following description for how to contribute a feature or a bug fix to SWT.

Information regarding source code management, builds, coding standards, and more and be found under the following link.

Contributor License Agreement:

Before your contribution can be accepted by the project, you need to create and electronically sign the Eclipse Foundation Contributor License Agreement (CLA).


Contact the project developers via the project's “dev” list.

Search for bugs:

This project uses Bugzilla to track ongoing development and issues.

Create a new bug:

Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!