-
Notifications
You must be signed in to change notification settings - Fork 191
Added documentation about SWT's Coordinate System #3014
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Added documentation about SWT's Coordinate System #3014
Conversation
597134b to
4caea9a
Compare
This Commit adds the documentation about SWT's new Coordinate system which aids to the monitor specific scaling on windows.
4caea9a to
1a6a6e1
Compare
HeikoKlare
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having documentation of the coordinate system specifics is a good idea. Thank you.
The current text more sounds like an experience report / article than a documentation of results. It also does align with the terminology in the rest of the documentation. Can we align that?
As an example, the documentation introduced the "static" and the "dynamic" HiDPI support, for which the different coordinate system apply. So explaining the relation between those terms of the different coordinate system would be helpful. Actually, the current description is not completely correct in that regard, as it states that when all monitors have the same zoom, the SingleZoomCoordinateSystemMapper is used, but it only depends on the used HiDPI mode and not on the zooms of the monitors.
The images are also quite nice, but in my opinion they would be more helpful if they reflected how the coordinate systems actually work and not how a wrong coordinate system would look like.
|
|
||
| SWT addresses this challenge with two coordinate system mappers: | ||
|
|
||
| **`MultiZoomCoordinatesSystemMapper`** (used when monitors have different zoom levels): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MultiZoomCoordinateSystemMapper
| **`MultiZoomCoordinatesSystemMapper`** (used when monitors have different zoom levels): | ||
| - **Top-left position:** Stored in absolute pixels to preserve monitor boundaries | ||
| - **Width and height:** Stored in points, adjusted for the monitor's zoom factor | ||
| - **MontiorAwareRectangle and MonitorAwarePoint:** To deal with the ambiguity, all the rectangles and points created by the mapper are monitor-aware. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MonitorAwareRectangle
This PR adds the documentation about SWT's new Coordinate system which aids to the monitor specific scaling on windows.