Multi-window application - python-3.x

I want to create a application in python using wxpython library with multiple windows which will be inter-related to each other using buttons, i.e. we can go from one window to other and again come back to the previous window using buttons just like an app.
There should be one window on the screen at any time if possible. Is this possible using wxpython library. If so then can you suggest me how.

It is really simple. Normally you create one window (usually a frame or a dialog). If you want more windows, you will just create more frames or dialogs.

Related

Displaying a Classification Banner at the top of each computer monitor in Gnome Desktop

I work in an environment where we have to have a security classification banner displayed at the top of each monitor on our Gnome Desktops. Currently, I am using a Perl/Tk window to display the classification of the system. However, that window cannot be moved because of the way it is built (no decorations) and occasionally overlays open windows making it difficult for users to manage those windows.
I would like to be able to do something different, but I'm not sure where to start. Three ideas I have are this:
An icon or something in the Top Bar showing the classification
A banner, like the Top Bar, that sits above the Top Bar
A window, like I already have, but relocatable
I figure the first option would be easiest, but since the Top Bar isn't shown on every monitor, that may not be the best option. I don't even know if the second option is even possible. The third option would require me to use something other than Perl/Tk but that's the only language I'm fluent in at the moment.
So I'm looking for suggestions or examples or Gnome extensions I can use to solve this problem.
Thanks.
There is a classification-banner python utility at https://github.com/fcaviggia/classification-banner. It's no longer maintained, but we've been using it without change for a few years now. It's OK. One problem is that it doesn't "shrink" the desktop screen, so application windows can overlap it; it's set to Always On Top, but it would be nicer if it actually couldn't be overlaid at all.
A simple solution, of sorts, would be to change the desktop background image. This can have issues if you're displaying on multiple resolutions (I don't know if Gnome supports SVG for such purposes) and of course it can be obscured by windows covering it.
Older versions of Gnome let you create multiple bars that worked perfectly, but that disappeared - along with many other customizations - in Gnome 3.

Disabling minimize feature in qml

Is there a way to make a Qt window (qml with pyside2) to never minimize?
(Not the minimize button)
I'm trying to achieve something like conky (Linux) or rainmeter (Windows) with python 3 and qml (Qt).
I want a borderless window to stay on the back of the screen and stay there no matter what as if it's part of the wallpaper. Making the window borderless was achieved with the Qt.SplashScreen flag but disabling minimize turns out to be much harder than I initially thought. All the methods I've tried hides the window when win+D is pressed.

Electron: Is it possible to set the current window to be frameless?

I would like to be able to toggle between framed and frameless window in my Electron app, without needing to construct a new window. This is because this option is a different view than what would be initially loaded, therefore it would be nice if there is a way to change the current window to be frameless.
I have found window.setFullscreen() for toggling between full screen mode. I've not been able to find anything similar for frameless window. Is there any such method or workaround that I'm not seeing?
As the docs go, you enable or disable window frame at the time of creation of browser window. After that, there are no methods you can call to enable or disable frame. However, if you really really want that option, there may be a workaround. And a workaround, is well, a workaround.
Create 2 browser windows, one over the other. The first one being transparent window(with frame and click-through) and the second one being your content window(without frame).
Implement your custom solution to keep size and position of both the windows in sync. Use ipc to share data between the windows.
Toggle the visibility of the transparent browser window to show/hide frame.
Some relevant resources:
Creating frameless window : https://electronjs.org/docs/api/frameless-window#create-a-frameless-window
Creating transparent window : https://electronjs.org/docs/api/frameless-window#transparent-window

PyQt inside Scene 3D of Blender

I import the PyQt5 library under blender and I created a command interface.
My problem is that I found myself with two windows (one of blender of course and one of PyQt)
Is there any way to automatically embed (in the script) the PyQt window inside the Blender 3D scene?
Thanks
I don't believe you will get that to work unless you alter blender's source code and build your own version of blender. While you have access to using a range of widgets that blender uses for it's UI, there aren't any ways to incorporate other GUI toolkits into blender's UI.
Blender uses python to define it's user interface and provide access to it's internal data. You can define your own panels, which are collapsible groups of UI widgets, that will be incorporated into blender's UI with the existing panels. You can define operators to perform custom actions, which are then attached to buttons displayed in your custom panels. You can also create addons so that your additions can be enabled every time blender is run.
To get more control over customising the UI appearance you could use the bgl module, I'm not certain if this can be used outside of a 3DView but you could turn a 3DView into your custom drawing area.

FXML window without native window frame

I am trying to display a screen without its native frame.
I created an small application using JavaFx and their design in FXML, When the application launch at that time the first screen display but it take the operating system default frame and button and I want a screen without native frame, Like this screen will display same in MAC and Windows.
Please help me if anyone having the solution.
Thanks in Advance.
stage.initStyle(StageStyle.UNDECORATED);
See the javadocs for Stage for more options.

Resources