Commit Graph

172 Commits (590a486343aa78d7cba00051b1f09a43ce4bf6ec)

Author SHA1 Message Date
jp9000 25acf095ab Remove from list based upon data, not string
- Added an extra comment regarding source removal

 - Made is so that when a scene item is removed from the sources list
   box, it removes the item based upon the GetClientData rather than by
   its string name.  This is done because there may be duplicate sources
   in a particular scene, and it's important to remove the right one.
2014-01-04 19:26:15 -07:00
jp9000 717a2538f4 Implement source removal via GUI
- When the remove source tool icon is clicked, it will now remove the
   source from the scene.

 - Fixed a bug where the scene item removal callback would add the scene
   item to the list instead of removing it.

 - Changed AddSourcePopup to AddSourcePopupMenu.  Name actually confused
   me once despite being the writer, so it was clearly a bad name.
2014-01-04 18:53:02 -07:00
jp9000 dcde1dcf2a Implemented adding sources to scenes via GUI
Sources can now be added to scenes via user interface.  It's a little
convoluted because everything has to work through OBS signals to ensure
that plugins/etc can modify the scenes/sources exernally.

  Also, when switching scenes, it will properly list sources for the
scene you changed to.
2014-01-04 13:53:36 -07:00
jp9000 41a73ceeea Added WX_UTF8 macro
The WX_UTF8 macro is primarily for convenience so you can input a
UTF-8 string into a wxWidgets function without having to do
wxString(string, wxConvUTF8) each time.
2014-01-04 13:50:16 -07:00
Ján Mlynek e38f9d22f6 fix check_path not using path variable 2014-01-03 23:22:49 +01:00
Palana e846d0395c remove duplicate lines and reformat for 80 columns limit 2014-01-03 01:50:36 +01:00
Zachary Lund 80b8176e29 GLX implementation and *nix-specific file handling implementation
I added gl-x11 which allows compatibility with X11 (Xlib-based) and GLX.
I also added various functions to handle file finding based on FHS.
Various changes to autotools to both install files correctly and to configure correctly.
2014-01-02 18:20:58 -06:00
Palana 4dfee68dd7 fix warnings in window-namedialog and mark methods as override 2014-01-01 04:06:59 +01:00
jp9000 843a092fae fixed starting GL context size to use GetClientSize over GetMinSize 2013-12-31 07:26:24 -07:00
jp9000 e1a32f8eac make it use GetClientSize instead of GetMinSize for when resizing the panel (though at this point I don't think it's going to help anymore) 2013-12-31 07:12:38 -07:00
jp9000 1302e65ee6 create a sizing callback for the preview panel specifically, apparently on macos the window size isn't guaranteed to be the size it's set to in the main window size handler 2013-12-31 07:10:47 -07:00
jp9000 c71eb041b6 fix startup resize issue on osx 2013-12-31 04:02:07 -07:00
jp9000 36041e9d80 display a test source on startup 2013-12-30 15:47:20 -07:00
jp9000 f03d90639a macos cannot have widgets/items with ID of 0 2013-12-30 13:33:13 -07:00
Palana 683585938c add infrastructure for app bundle target and unmark as advanced 2013-12-30 20:52:44 +01:00
jp9000 c2593eb390 make window automatically resize the graphics display to ensure sources draw properly 2013-12-30 08:55:01 -07:00
jp9000 c129cc37cb update API and implement preliminary ability to add sources to scenes 2013-12-30 06:56:39 -07:00
jp9000 146912d5b8 add wrapper for popup menus so you aren't forced to write a god forsaken function handler whenever you just want to do a basic popup menu 2013-12-30 06:55:58 -07:00
jp9000 4af0d7ac04 update main form files for basic UI window 2013-12-30 06:54:58 -07:00
jp9000 d917745cea make it so that when a scene is clicked it becomes active 2013-12-30 01:17:57 -07:00
jp9000 0131cebc8c add form callbacks for selecting scenes/sources 2013-12-30 01:17:29 -07:00
jp9000 3f3abf20c0 implement 'remove scene' button 2013-12-29 20:01:19 -07:00
Palana e8ee39560c update data files copy in cmake project 2013-12-30 03:31:55 +01:00
Palana 3462a9b8b9 add newline to non-windows log output 2013-12-30 03:26:09 +01:00
Palana c093f04c58 add static linking options for ffmpeg and wxwidgets to cmake 2013-12-30 03:02:11 +01:00
jp9000 534ed54cf1 make OK button the default button for when using the 'enter name' dialog 2013-12-29 09:56:25 -07:00
jp9000 6fe59f77ec make sure another source by the same name doesn't already exist when choosing a name for that scene 2013-12-29 09:17:00 -07:00
jp9000 c4af3e2a75 change obs_scene_destroy to obs_scene_release, add ability to add scenes, fix name dialog sizing 2013-12-29 08:54:06 -07:00
jp9000 e5ef03954e added name dialog code, moved 'using namespace std;' out of headers and into source files 2013-12-29 04:40:53 -07:00
jp9000 6526c47907 update callbacks for name dialog 2013-12-29 03:56:07 -07:00
jp9000 7a4bc231eb added a name entry dialog to the form files 2013-12-28 22:29:48 -07:00
jp9000 65c3207ba3 added a SceneRemoved handler 2013-12-28 22:29:13 -07:00
jp9000 10aa94f00e Add ability to use two desktop audio devices at once in basic UI 2013-12-28 22:00:32 -07:00
jp9000 1c7272115a fixed project file settings for those renamed files and fixed a typo 2013-12-28 21:53:38 -07:00
jp9000 aea35a30f8 renamed some window files to ensure they sort a bit better 2013-12-28 21:51:18 -07:00
jp9000 cec94b042e implement scene adding callbacks, make a few API tweaks 2013-12-28 05:33:16 -07:00
Zachary Lund 5f5404f8cb Fixes issues with autoconf
In particular, it removes any deprecated functionality
wxWidgets only documents their deprecated m4 macros and gives a poor example
Also to note in regard to wxWidgets, I removed any unneeded libraries from the linker line.

Any warning messages provided by autoconf has been supressed in the most appropriate manner possible.
2013-12-27 16:41:01 -06:00
jp9000 6fcd5ce112 rename platform-nix.cpp to platform-x11.cpp 2013-12-26 23:14:03 -07:00
jp9000 03e1aaad3e fix OBSBasic::AddScene function declaration 2013-12-26 04:29:57 -07:00
jp9000 6ac6256ac5 fill in rest of signal/callback/proc 2013-12-26 04:26:17 -07:00
jp9000 bb53a39aee change os_get_home_path to a better and more clear function, os_get_config_path 2013-12-23 18:59:54 -07:00
jp9000 02f9647b6c change 'properties' icon on basic main window toolbars 2013-12-23 18:59:16 -07:00
jp9000 221ed7d92b make debug messages log to stdout on non-windows operating systems 2013-12-23 01:06:53 -07:00
jp9000 5f6cf61449 add 25 FPS to 'common FPS' list, clean up window initialization for it 2013-12-22 23:45:47 -07:00
jp9000 399b0c8d10 apply configure video settings on startup 2013-12-22 23:40:07 -07:00
jp9000 991b5739d6 move libobs C++ bindings to libobs 2013-12-22 17:42:02 -07:00
jp9000 5471625dd7 update form to add volume section to main window 2013-12-22 01:28:40 -07:00
jp9000 f41bb4b7e9 add support for texture_rect texture type in shaders, add new form, clear up a few things in the API 2013-12-20 11:58:09 -07:00
Palana eb8c2923f6 make opengl render stuff on osx without resizing the main window 2013-12-19 23:10:09 +01:00
jp9000 ab4e86cf5c fixed a bug where the GL context wouldn't load up on macos because the window wasn't shown first 2013-12-19 01:00:00 -07:00
jp9000 24c45458b5 use the preview window as the main window associated with the OpenGL context 2013-12-18 22:57:39 -07:00
jp9000 a8ada497b3 finish up preliminary settings stuff 2013-12-18 12:09:20 -07:00
jp9000 158f83dc96 make OK/cancel/apply buttons accessible on the settings form 2013-12-18 12:06:13 -07:00
jp9000 257cbd77ba use astrcmpi to prevent multiplatform clib incompatibility 2013-12-17 20:23:57 -07:00
jp9000 989e734025 made a few more settings UI tweaks 2013-12-17 18:19:24 -07:00
jp9000 984667a34a actually make it save settings 2013-12-17 17:07:40 -07:00
jp9000 b5bbe74120 add in code for OK/Cancel/Apply buttons in basic settings window 2013-12-17 13:56:58 -07:00
jp9000 495099d84e load english locale text first, then current locale (to prevent unfilled text entries) 2013-12-17 13:56:28 -07:00
jp9000 cb3426ae20 Add callbacks for OK/Cancel/Apply 2013-12-17 13:54:06 -07:00
jp9000 7e4355bbfb this is probably C-style but I prefer it over vague anonymous namespaces, don't kill me please 2013-12-17 11:29:46 -07:00
Palana e563931e9f filter duplicate resolutions 2013-12-17 18:44:02 +01:00
jp9000 197c56c9ae add code to select renderer 2013-12-17 02:08:41 -07:00
jp9000 1b5444954a add 'renderer' option to video settings 2013-12-17 02:07:08 -07:00
Palana 9ac6f646b6 fix focus after dismissing settings dialog 2013-12-16 16:06:30 +01:00
Palana 8c19ad4b14 updated obs platform files 2013-12-16 16:04:51 +01:00
jp9000 3d88a43520 add video settings code and set up default video setting values for the config 2013-12-16 00:07:08 -07:00
jp9000 f27dfb6809 add platform functions for querying monitor information 2013-12-16 00:06:13 -07:00
jp9000 af5db87ea1 update video settings form for fps/video variables 2013-12-16 00:04:33 -07:00
Palana 7bc325d90b updated BPtr semantics to be more in line with stl smart pointers 2013-12-16 01:59:08 +01:00
Palana 06227327f8 updated c++11 compatibility for raii wrappers 2013-12-16 01:59:07 +01:00
jp9000 dd1c5b4342 add some preliminary resolution data to video settings (will need to query monitors in the future) 2013-12-14 21:30:16 -07:00
jp9000 f50fbfd166 add more accessible variables for form items 2013-12-14 21:27:37 -07:00
jp9000 a526afd047 remove unused STL include 2013-12-13 23:16:05 -07:00
jp9000 7ba497fe61 add move constructor to wx connector class, add simple connector list class, add initial video settings class, update build files 2013-12-13 23:11:23 -07:00
jp9000 02c32f9c5e update form data, made it so that that the warning messages display by default because their position seems to go out of whack if they're hidden by default 2013-12-13 23:09:49 -07:00
jp9000 fa00c6fa47 add a RAII wx connect wrapper 2013-12-13 08:15:50 -07:00
jp9000 40f922ca37 initialize dataChanged variables in SettingsData base class 2013-12-12 22:16:45 -07:00
jp9000 375bc18377 make SettingsData a subclass of wxEvtHandler and add a callback for the language combo box 2013-12-12 22:14:27 -07:00
jp9000 c5f497ec1d add settings data for general page, query available languages 2013-12-12 21:47:42 -07:00
jp9000 454d800c9f updated settings form again with new callbacks 2013-12-12 21:43:30 -07:00
Palana fd5b00871f add GetDataFilePath implementation for osx 2013-12-12 11:44:17 +01:00
jp9000 467362f584 added new settings management base class, updated main settings form, added to build files 2013-12-11 21:50:10 -07:00
jp9000 c902eab4db fix a typo in the main program automake file 2013-12-10 21:17:58 -07:00
jp9000 dc4d1db4ea update formbuilder file 2013-12-10 21:15:51 -07:00
jp9000 1e6c518700 change a few names for some of the control callbacks 2013-12-10 21:14:45 -07:00
jp9000 b0df5cf29c add settings window subclass files 2013-12-10 21:14:20 -07:00
jp9000 c2604baea0 added more button callbacks 2013-12-10 11:22:33 -07:00
jp9000 f9e9626ee6 Added preliminary settings window form 2013-12-10 11:21:34 -07:00
jp9000 70290b8c2b fixed locale code, added locale files, made wx use locale files, fixed some bugs, and added platform-specific files to the main program 2013-12-07 10:22:56 -07:00
Palana e6017ec1ba changed allocation counter to uint64_t
also avoids format string confusion for bnum_allocs
2013-12-07 17:39:43 +01:00
Palana 968f9c03bd use %u for size_t on microsoft compilers 2013-12-07 16:50:05 +01:00
Palana 0f484c4620 fix warning for OBSSource::operator= 2013-12-06 21:43:51 +01:00
Palana 499eaa4840 check for __APPLE__ instead of __WXCOCOA__ 2013-12-06 21:31:42 +01:00
Palana ad1abd45e8 fix format string 2013-12-06 21:31:42 +01:00
jp9000 78e581a3c1 update makefiles for previous name changes 2013-12-06 09:18:47 -07:00
jp9000 0434ef0f62 change naming for some main program files for consistency 2013-12-06 09:16:33 -07:00
jp9000 2c886a9d83 fix references to subclass files within forms 2013-12-06 06:51:14 -07:00
jp9000 00b55c9d95 moved wx forms and generated files into a discrete 'forms' directory 2013-12-06 06:48:21 -07:00
jp9000 85374daa94 made it so that preview panel scales based upon window size 2013-12-06 06:39:19 -07:00
jp9000 a8d9c5b25c updated UI files 2013-12-06 06:38:50 -07:00