On Thu, 21 Jul 2022 00:27:04 GMT, Harshitha Onkar <[email protected]> wrote:

>> Additional position setting (TOP_LEFT_CORNER) and a method to obtain bounds 
>> of test instruction frame are added to PassFailJFrame to handle positioning 
>> of multiple test frames.
>> 
>> In scenarios where multiple test windows might be present, the test windows 
>> might overlap the instruction frame. In order to fix this TOP_LEFT_CORNER 
>> position option is added that positions the test instruction frame at top 
>> left corner with main test window below it.
>> 
>> Additionally `getInstructionFrameBounds()` is added to obtain the position 
>> and dimensions of test instruction frame.
>
> Harshitha Onkar has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   added screen insets to account for taskbar position, doc changes

Another approach would be to use a 
[JSplitPane](https://docs.oracle.com/javase/tutorial/uiswing/components/splitpane.html)
 to have the instruction frame and the main test frame in one window. Left 
half/top as instruction frame and Right half/ bottom as the main test window 
and this also provides HORIZONTAL_SPLIT or VERTICAL_SPLIT orientation 
equivalent to HORIZONTAL and VERTICAL positioning of PassFailJFrame.

Advantage of this approach:
- No need to manually position the instruction frame and then the test window, 
as it will be one window - JSplitPane 
- Entire window (test + instruction frame) need to be positioned only once.
- With this change, we might no longer need positionTestWindow() method, 
additionally the framework code will be simple and straightforward.

-------------

PR: https://git.openjdk.org/jdk/pull/9525

Reply via email to