As all the .ui files follow a set schema, providing a way to validate
that schema is useful for manual XML modifications.
XML-Schema-Qt5.15.xsd source: https://doc.qt.io/qt-5/designer-ui-file-format.html
Note: some lines had to be commented out as they are not valid in XSD.
When a new version of Qt is used, compare the diff and update as necessary.
This file doesn't do anything on its own, but can be paired with an IDE
or a standalone linter to perform validation.
Adds a new setting to the general OBS settings, which can be checked
in order to no longer show the "confirm close" dialog when there are
still streams/recordings running.
#5187 added a minimum size enforcement on the source toolbar to ensure
it remains functional at lower window sizes.
That minimum size was set to 800 pixels, which causes issues for
users on 1366x768 monitors in a vertical orientation.
This is still a rather common resolution, so this reduces the minimum
size below 768
Setting this to zero breaks reconnecting (and OBS) entirely as various
parts of the reconnect system do not handle zero values properly, and
there are also possible race conditions with the reconnect thread. Set a
minimum of 1 second to avoid this.
#5125 added icons to the source toolbar but no icon is displayed when nothing is selected.
This adds a spacer on the right side of the label that gets toggled inversely to the source icon, to maintain the same width
Sets a minimum size on the source toolbar itself to prevent shrinking the main window too small for it to be useable in some cases.
Also sets some sane limits on the toolbars with dropdown menus and the image source toolbar filepath
The helper link associated with starting a scheduled broadcast was not
helpful, as it linked to developer API documentation. Instead, have the
helper widget pop up a tooltip so the user understands what it is doing,
and adjust the wording slightly so that the user knows it's a setting
primarily used for scheduled broadcasts (normal streams always start
right away)
Adds an entry to the "Scene Collection" tab of the menu bar that makes
the missing files dialog come back in case it got dismissed of files got
removed while OBS was open
This is part of a larger pass I'll be making over the UI to make it behave better with qss
The Source Toolbar previously had a fixed height that made styling it difficult. It now takes up the minimum amount of space it needs, but can grow to accommodate larger buttons, padding, etc.
QWidgets that contain property definitions as well as a layout child item do not properly show up in the Qt Creator hierarchy.
These properties are still invisibly applied but the QWidgets are not shown in Qt Creator and will get removed from the file after saving.
Fixes some QWidgets that Qt Creator tries to clobber. As a result, there is a new spacer added now to ensure the controls remain grouped at the top of the window.
This re-adds the native attribute for the OBSQTDisplay that was removed in #3782. I believe this particular removal was an error, and there is no way around this entry being native since OBSQTDisplay extends QWidget
Fixes some QWidgets that Qt Creator tries to clobber. As a result, there are a couple spacers added now for the toolbars to align properly and a stretch policy on the main layout.
This re-adds the native attribute for the OBSQTDisplay that was removed in #3782. I believe this particular removal was an error, and there is no way around this entry being native since OBSQTDisplay extends QWidget
This continues work from #5133 to correct UI file markup and save correctly in Qt Creator
Defining alignment as an attribute in the <item> tag seems to be old behaviour that current versions of Qt Creator do not respect and will clobber these entries on save.
The correct approach is to have alignment as a property element in the widget.
As well, QWidgets that contain property definitions as well as a layout child item do not properly show up in the Qt Creator hierarchy.
These properties are still invisibly applied but the QWidgets are not shown in Qt Creator and will get removed from the file after saving.
Implements the Undo/Redo for scenes and sources, ranging from renaming,
deletion, addition. It also adds several elements to libobs that were
designed to facilitate undo/redo, and should not affect the rest of
libobs.