0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

22 Commits

Author SHA1 Message Date
jp9000
9d1204a8bc UI: Add editable list property to properties view
Implemented as a multi-selection QListWidget.  Individual values in the
list are saved to the settings in an obs_data_array_t item.
2015-06-02 17:01:39 -07:00
jp9000
cce2eb9387 UI: Add "Show" button to password text properties
Allows the user to be able to optionally toggle the password text if
they wish.  Mostly useful for troubleshooting purposes.
2015-05-24 22:26:51 -07:00
jp9000
81d671f106 UI: Add int/float slider to property view 2015-03-22 19:18:15 -07:00
jp9000
dc36f6f420 UI: Implement deferred update flag (properties) 2015-03-19 15:57:19 -05:00
jp9000
efe31c9fe9 UI: Keep prop. view scroll positions if modified
If the properties view is scrolled down or right and a widget triggers
it to repaint, it would reset its scroll position, making editing a bit
awkward.  This simply saved/restores the position before and after
rebuilding the properties view.
2015-02-06 00:01:21 -08:00
jp9000
ac1651c7d3 UI: Add OBSPropertiesView::GetSettings
Allows the ability to get the current settings of a properties view
2015-02-04 16:52:03 -08:00
jp9000
cb70a531b7 UI: Add 'Changed' signal to properties view 2015-02-04 16:52:03 -08:00
jp9000
baaa061344 UI: Allow prop. view to be created via identifier
Allows a properties view control to be created only with an identifier
string instead of only being created with a pointer to an object.  This
way, we don't necessarily have to have an object for some arbitrary
settings we want the user to be able to modify.
2015-02-04 16:52:02 -08:00
jp9000
88d3c506ae UI: Use class member initialization for prop. view
Instead of setting every variable in the initializer list, use class
member initialization by default
2015-02-04 16:52:02 -08:00
jp9000
0a481d5bcc UI: Use VScrollArea for properties view 2015-01-03 03:03:04 -08:00
Palana
088a05db8f Move properties loading to OBSPropertiesView 2014-10-01 15:39:57 +02:00
Palana
7c0018d4bc Remove destructor from OBSPropertiesView 2014-10-01 15:39:57 +02:00
jp9000
c9df41c1e2 (API Change) Remove pointers from all typedefs
Typedef pointers are unsafe.  If you do:
typedef struct bla *bla_t;
then you cannot use it as a constant, such as: const bla_t, because
that constant will be to the pointer itself rather than to the
underlying data.  I admit this was a fundamental mistake that must
be corrected.

All typedefs that were pointer types will now have their pointers
removed from the type itself, and the pointers will be used when they
are actually used as variables/parameters/returns instead.

This does not break ABI though, which is pretty nice.
2014-09-25 21:48:11 -07:00
jp9000
354614a7e8 Basic UI: Signal resize of properties view
If the properties view changed in the properties window, the viewport of
the properties would not trigger a resize because the size of the window
itself does not change.  This creates a signal that allows the parent to
know whether or not to update a viewport, if any.
2014-08-27 18:18:26 -07:00
jp9000
1a5eca34db Add font property to properties widget
Displays the full name of the font in the font's designated settings,
with a "Select Font" button which brings up a font chooser dialog.
2014-08-18 00:14:02 -07:00
Palana
adf6beb03f Add color property implementation 2014-07-21 04:31:19 +02:00
jp9000
51e9704385 Implement 'path' property in to properties view 2014-06-28 10:12:58 -07:00
Palana
b5f56ff579 Highlight label in properties-view when a disabled list item is selected 2014-06-21 22:31:23 +02:00
jp9000
90f0bd6887 UI: Add support for buttons in properties view. 2014-05-30 02:44:14 -07:00
jp9000
21db94656e Fix an issue with properties view
If a control changed the properties layout, it would lose focus on the
control.  Also, fiddled with the sizing policy a bit, because it wasn't
expanding when I used it in other windows.
2014-04-24 01:43:54 -07:00
jp9000
1bca7e0a3e Improve properties API
Improve the properties API so that it can actually respond somewhat to
user input.  Maybe later this might be further improved or replaced with
something script-based.

When creating a property, you can now add a callback to that property
that notifies when the property has been changed in the user interface.
Return true if you want the properties to be refreshed, or false if not.
Though now that I think about it I doubt there would ever be a case
where you would have this callback and *not* refresh the properties.

Regardless, this allows functions to change the values of properties or
settings, or enable/disable/hide other property controls from view
dynamically.
2014-04-04 00:30:37 -07:00
jp9000
d9251f9e87 Add source properties window (very preliminary)
- Add a properties window for sources so that you can now actually edit
   the settings for sources.  Also, display the source by itself in the
   window (Note: not working on mac, and possibly not working on linux).

   When changing the settings for a source, it will call
   obs_source_update on that source when you have modified any values
   automatically.

 - Add a properties 'widget', eventually I want to turn this in to a
   regular nice properties view like you'd see in the designer, but
   right now it just uses a form layout in a QScrollArea with regular
   controls to display the properties.  It's clunky but works for the
   time being.

 - Make it so that swap chains and the main graphics subsystem will
   automatically use at least one backbuffer if none was specified

 - Fix bug where displays weren't added to the main display array

 - Make it so that you can get the properties of a source via the actual
   pointer of a source/encoder/output in addition to being able to look
   up properties via identifier.

 - When registering source types, check for required functions (wasn't
   doing it before).  getheight/getwidth should not be optional if it's
   a video source as well.

 - Add an RAII OBSObj wrapper to obs.hpp for non-reference-counted
   libobs pointers

 - Add an RAII OBSSignal wrapper to obs.hpp for libobs signals to
   automatically disconnect them on destruction

 - Move the "scale and center" calculation in window-basic-main.cpp to
   its own function and in its own source file

 - Add an 'update' callback to WASAPI audio sources
2014-03-23 01:07:54 -07:00