Changes between Version 3 and Version 4 of BASE_HALOS_R1
- Timestamp:
- 05/09/09 17:18:51 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BASE_HALOS_R1
v3 v4 9 9 Halo menus are laid out with absolute coordinates defined by the halo menu. This means that there is no coordination going on between halo menus to prevent them from overlapping. This happens now when the user zooms the book out ot 10%, but it can happen later if plugins are allowed to provide their own halo menus. 10 10 11 This task should change the way halos lay out so they don't overlap when there is a small frame or the page work area is zoomed in. 12 11 13 == Task requirements == 12 14 13 15 * Determine how to handle overlapping halo menus, or more importantly how to layout halo menus in ways other than absolute coordinates 16 * For now, a simple minimal bounding rectangle, aligned with the selection topLeft will suffice 14 17 15 18 == Task result == 16 ^(List the end product of the task (for example "Source code", "Wiki page", etc.))^ 19 20 * The result of this task is code 17 21 18 22 == Implementation idea == … … 24 28 25 29 == How to demo == 26 Demo how the halo menus lay out properly when the page work area is zoomed to 10% 30 31 * Demo how the halo menus lay out properly when the page work area is zoomed to 10%, or a small frame is created 27 32 28 33 = Design = 29 Due to time constraints, we decided to not implement a new halo menu layout system. Instead, I will add two static ints to AppHaloUtil that determine the smallest width and height of a rectangle that the halo menus should use 34 35 * Due to time constraints, we decided to not implement a new halo menu layout system. Instead, I will add two static ints to AppHaloUtil that determine the smallest width and height of a rectangle that the halo menus should use 30 36 31 I'll then write a method to return the selection bounds constrained by this minimal rectangle, and utilize it in the halo menus that wrap frames.37 * I'll then write a method to return the selection bounds constrained by this minimal rectangle, and utilize it in the halo menus that wrap frames. 32 38 33 39 = Implementation =