systemWindow, topLevel, palette stack
Posted: Tue May 25, 2021 12:33 pm
Hello everyone,
I've almost finished my project and am now scratching my head over window layering.
My project needs to have its main window float above another application, which is some exam software that runs in kiosk mode. Half of the exam software's window is redundant (the practice software the examining body provides simply shows an "exam goes here" placeholder!) yet they would still like students to practise with the software. It's bit a silly if they can't actually see any exam papers to do so.
The simple solution is to float a window over the top using systemWindow, which is what my app does. This means they can have the exam we provide on the left and the remaining interface to create an answer on the right (it's masters-level, professional exam, case study, write a report, four hours long exam kinda stuff!).
Anyway, so far so good. However, one of the features I needed to implement is the ability to make notes on the exam paper. I've coded these to take the form of windows themselves (no titlebar, about 200 x 200 pixels in size) and want these to float above the main window.
Currently, all windows created have their systemWindow property set to true so they float above the exam software. However, because they all exist in the same layer, when the user interacts with the exam paper, it covers the note windows. I need the notes windows to sit on top of the main stack at all times.
I've tried using topLevel and palette on the note stacks but to no avail. When using palettes, I've tried setting raisePalettes to true but they still won't float over a system window.
Would anybody have any tips? I know this is a bit of strange one. I'm trying to overcome the limitations of someone else's application design!
Thanks,
Steve
I've almost finished my project and am now scratching my head over window layering.
My project needs to have its main window float above another application, which is some exam software that runs in kiosk mode. Half of the exam software's window is redundant (the practice software the examining body provides simply shows an "exam goes here" placeholder!) yet they would still like students to practise with the software. It's bit a silly if they can't actually see any exam papers to do so.
The simple solution is to float a window over the top using systemWindow, which is what my app does. This means they can have the exam we provide on the left and the remaining interface to create an answer on the right (it's masters-level, professional exam, case study, write a report, four hours long exam kinda stuff!).
Anyway, so far so good. However, one of the features I needed to implement is the ability to make notes on the exam paper. I've coded these to take the form of windows themselves (no titlebar, about 200 x 200 pixels in size) and want these to float above the main window.
Currently, all windows created have their systemWindow property set to true so they float above the exam software. However, because they all exist in the same layer, when the user interacts with the exam paper, it covers the note windows. I need the notes windows to sit on top of the main stack at all times.
I've tried using topLevel and palette on the note stacks but to no avail. When using palettes, I've tried setting raisePalettes to true but they still won't float over a system window.
Would anybody have any tips? I know this is a bit of strange one. I'm trying to overcome the limitations of someone else's application design!
Thanks,
Steve