So it is managed by a layout which might explain why your own geometry management fails. If you wish to do your own moving/resizing, you can't use layouts at the same time.
I suggest you forget about docks for now and implement your solution as working for any possible widget. When you have that done you can adjust the code to work for your specific case. mapToGlobal() and mapFromGlobal() both work fine so if they fail in your case then it has to be caused by your own code. Move the popup code out of your specific use-case, make it work as a standalone solution and then integrate it back to your main project.We are trying to position the popup widget so that it's corners align with one of the corners of the reference widget (posWgt), based on the orientation of the divider bar and the quadrant that the reference widget.
Examples:
posWgt Quadrant: Bottom-Right
Dock Bar Orientation: Horizontal
Alignment: popupWgt's bottom-right corner should align with posWgt's top-right corner
posWgt Quadrant: Bottom-Right
Dock Bar Orientation: Vertical
Alignment: popupWgt's bottom-right corner should align with posWgt's top-left corner
posWgt Quadrant: Top-Left
Dock Bar Orientation: Horizontal
Alignment: popupWgt's top-left corner should align with posWgt's bottom-left corner






Reply With Quote

Bookmarks