595 Commits

Author SHA1 Message Date
jp9000
6c44291693 Implement settings interface for plugins
Add a fairly easy to use settings interface that can be passed to
plugins, and replaced the old character string system that was being
used before.  The new data interface allows for an easier method of
getting/altering settings for plugins, and is built to be serializable
to/from JSON.

Also, removed another wxFormBuilder file that was no longer in use.
2014-01-27 23:14:58 -07:00
jp9000
de288ac541 Rename obs_data structure to obs_program_data
I'm doing this because I might create another data structure called
obs_data for a different purpose.  That and obs_program_data feels a bit
less vague for what it does.
2014-01-27 09:07:13 -07:00
jp9000
563613db8f Rename obs-data.h to obs-internal.h
Renaming obs-data.h to avoid confusion about its usage
2014-01-26 18:48:14 -07:00
jp9000
a5372e9757 Finish the rest of the settings dialog code
- Move over the last of the original settings dialog code to QT.  It was
  actually a bit easier to write in the QT version.  wxWidgets was
  definitely not ideal for that because the pages would fully
  create/destroy every time.

- [Win32] Fix os_dlopen so that it only appends .dll if not present

- [MacOS] Fix name dialog text edit widget issue (it would be better if
  we could just use the list widget for editing labels, will have to
  look in to that in the future)

- Tweak the settings UI a bit more and make 30 FPS default

- Add a macro to convert a QString to a UTF-8 const char * string

- Rename build/plugins to build/obs-plugins

- Remove the last of the wxWidgets code
2014-01-26 15:36:15 -07:00
Anry
842b8c8591 obs.icns now corresponds to Table 5-1:
icon_512x512@2x	-	1024 x 1024
icon_512x512	-	512 x 512
icon_256x256@2x	-	512 x 512
icon_256x256	-	256 x 256
icon_128x128@2x	-	256 x 256
icon_128x128	-	128 x 128
icon_32x32@2x	-	64 x 64
icon_32x32	-	32 x 32
icon_16x16@2x	-	32 x 32
icon_16x16	-	16 x 16
2014-01-26 18:28:28 +04:00
Zachary Lund
cc44c93fbf Fixed missed boolean check 2014-01-26 01:53:59 -06:00
Zachary Lund
488c90b3d2 Removed mercurial leftovers 2014-01-26 00:53:12 -06:00
computerquip
2d5758f758 Merge pull request #32 from jp9000/alt-ogl-loader
Alternative OGL loader. GLEW was bulky, slow, and sometimes didn't do its job that well. This is the replacement.
2014-01-25 22:05:41 -08:00
Zachary Lund
666f0be14f Merge branch 'alt-ogl-loader' of https://github.com/jp9000/obs-studio into alt-ogl-loader 2014-01-25 23:59:26 -06:00
Zachary Lund
ae17c457a7 Regenerated files 2014-01-25 23:58:43 -06:00
Zachary Lund
f4379d7889 Changed constness on passed argument, updated VC++ project files 2014-01-25 23:23:26 -06:00
Zachary Lund
1c48834cb5 Fixed signedness issue on GLX 2014-01-25 22:27:02 -06:00
Zachary Lund
469f217e6b Removed tools used to generate the GL headers/implementations as we never use them to build 2014-01-25 22:26:55 -06:00
Zachary Lund
001f0b10a4 Fixed Windows goofy macros 2014-01-25 22:26:55 -06:00
Zachary Lund
f33e693a6e Fixed cmake for Windows 2014-01-25 22:26:55 -06:00
Zachary Lund
74ab96a3ad I removed GLEW, added glLoadGen (renamed to GL here), and added implementations for all platforms. Hopefully this goes better than GLAD did. 2014-01-25 22:26:43 -06:00
Palana
83872829f9 Remove 64bit directory reference from osx plugin path
This should have been in c1599a069a2e80d41a9d6014ce98c00c5f9e8fcf
2014-01-26 05:25:54 +01:00
Jim
31f9e3ef53 Merge pull request #31 from BtbN/cmake
More cmake adjustments
2014-01-25 17:13:19 -08:00
BtbN
668812ca3e Adjust file finding functions to also search the install root dir on Windows
This is because the installed versions of OBS is allways executed in the install root instead of inside the bin dir.
2014-01-26 02:04:37 +01:00
BtbN
cfc3609a4e Fix/Workaround a cmake path seperator escaping bug on Windows 2014-01-26 02:04:36 +01:00
jp9000
4bf0855590 Add settings window files to VS project 2014-01-25 16:43:24 -07:00
jp9000
2fecfdb663 Add window-main.hpp to main VS project 2014-01-25 14:46:55 -07:00
Palana
c1599a069a Remove unnecessary distinction between 32bit and 64bit on osx 2014-01-25 20:39:09 +01:00
Palana
8cd49b705f Update osx bundle info
OBS should not run as agent app
2014-01-25 20:37:53 +01:00
Palana
2aa4c1665a Remove Qt focus frame from various controls 2014-01-25 20:37:53 +01:00
jp9000
93d15ef254 Fix some formatting issues and fix cmake file 2014-01-25 12:34:37 -07:00
Jim
584e47e467 Merge pull request #30 from andy-kliman/master
add new icon for os x bundle
2014-01-25 10:49:23 -08:00
Jim
143f5e4bd6 Merge pull request #29 from BtbN/cmake
Restructure installation and package generation
2014-01-25 10:39:33 -08:00
BtbN
6a9dda87bd Restructure installation and package generation 2014-01-25 19:13:33 +01:00
jp9000
e964bea518 Update obs/CMakeLists.txt (forgot again) 2014-01-25 09:18:40 -07:00
jp9000
a801aac172 Merge branch 'master' of https://github.com/jp9000/obs-studio 2014-01-25 09:16:06 -07:00
jp9000
f09a9ed435 Apply a number of fixes to the main window
- Fix the size issue with list boxes on mac.  Was displaying the list
  boxes with an improper size.  Turns out it was just the wrong size
  policies on the frame below.

- Ensure the main windows are fully displayed *before* initializing
  subsystems.  This ensures that the graphics system will properly start
  up on macos, and allows the glitch fix.

- Made a workaround for weird QT glitch that would happen to the parent
  of a pure native widget that also has internal painting fully
  disabled.  (Should definitely write an example and report this bug on
  the QT forums)
2014-01-25 09:08:56 -07:00
Anry
99bf4bca85 added retina icon 2014-01-25 17:59:25 +04:00
Palana
3b664ae45c Mark method as override 2014-01-25 07:23:57 +01:00
Palana
88ad3777e3 Add Qt support for osx
Actual drawing fails due to initialization before there are any windows
2014-01-25 07:23:56 +01:00
jp9000
3922679bf4 Update CMakeLists.txt for last commit
Neglected to add the new files (window-settings-basic.*) to cmake.
2014-01-24 21:31:25 -07:00
jp9000
dd396c646a Merge branch 'master' of https://github.com/jp9000/obs-studio 2014-01-24 21:20:30 -07:00
jp9000
092f36fac4 Fix/update forms for main and settings window
- Had the wrong names set for the up/down widgets for sources/scenes

- Updated the settings dialog and gave most of the widgets actual object
  names

- Added code for the settings window.  Settings window should now at
  least display.
2014-01-24 21:19:50 -07:00
Zachary Lund
e3299d5662 Added rudimentary support for Qt on Linux 2014-01-24 21:55:10 -06:00
Palana
f2d0c98ffe Fix copy&paste error in AppKit cmake module
Only consider AppKit_LIBRARIES
2014-01-24 23:58:21 +01:00
Palana
b9330d48f2 Update osx bundle files
The bundle icon now includes all recommended image resolutions and OBS
is now started as high resoltion application for high dpi displays,
still need to add high resolution images for icons used inside OBS
2014-01-24 23:22:34 +01:00
Palana
0fc7b1bbdc Require cmake 2.8.12 on osx
This requirement is due to rpath usage in the project and SDK location
changes[1] in more recent osx versions

[1] i.e. http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1fce189e
2014-01-24 23:22:34 +01:00
Palana
b6c5a26f97 Add explicit AppKit dependency for obs/platform-osx 2014-01-24 23:22:34 +01:00
jp9000
9f1249326b Fix a few formatting issues
Fixed a few files that went over 80 columns, mostly just a nitpack on my
part.

libobs/obs-nix.c had a rather bad case of leading whitespace.

Also, fixed the x86 obs-studio project files so that it would properly
output to the right directory.  It couldn't find libobs.lib because
obs-studio's project settings had it outputting to a different place
than the rest of the projects.
2014-01-24 12:52:22 -07:00
Jim
017a16ac7f Merge pull request #27 from BtbN/cmake
CMake Rewrite
2014-01-24 11:36:29 -08:00
BtbN
bb35d2ce09 Fix building on non-MSVC compilers
This function is inline, and QVariant uses a copy-on-write like copying mechanism, like most datatypes in Qt.
2014-01-24 18:56:33 +01:00
BtbN
45ec80fb7d Full rewrite of all CMakeLists
CMake now works on all platforms
2014-01-24 18:56:32 +01:00
BtbN
8fa309c96e Clean old cmake files 2014-01-24 01:46:36 +01:00
jp9000
610d4415d5 Merge branch 'qt-ui' 2014-01-23 17:13:35 -07:00
jp9000
4cba9d336a Fix render issues with main preview widget
- I seem to have fixed ths issues with the main preview widget.  It
   seems you just need to set the right window attributes to stop it from
   breaking.  Though when opengl is enabled, there appears to be a weird
   background glitch in the Qt stuff -- I'm not entirely sure what's
   going on.  Bug in Qt?

   Also fixed the layout issues, and the widget now properly resizes and
   centers in to its parent widget.

 - Prevent the render loop from accessing data if the data isn't valid.
   Because obs->data is freed before the graphics stuff, it can cause
   the graphics to keep trying to query the obs->data.displays_mutex
   after it had already been destroyed.
2014-01-23 17:00:42 -07:00