Commit graph

374 commits

Author SHA1 Message Date
Edward Hervey
1450d539d4 GESTimelineObject: Subclass from GInitiallyUnowned
The floating reference will be owned by the Layer
2010-12-20 12:03:48 +01:00
Edward Hervey
11887e0058 GESTimelineLayer: Subclass from GInitiallyUnowned
The floating reference will be owned by the Timeline
2010-12-20 12:03:48 +01:00
Edward Hervey
c90f399bfb TimelineObject: Hold a reference to the controlled TrackObject 2010-12-20 12:03:48 +01:00
Edward Hervey
648f8802db tests: Put clearer names on tests
Makes it easier to figure out which test failed :)
2010-12-20 12:03:48 +01:00
Brandon Lewis
42f4253ee2 GESSimpleTimelineLayer: add test for _index() method 2010-12-16 19:37:06 +01:00
Edward Hervey
e970c86753 GESTimelineObject: Add mapping/offset support [start/priority properties]
Allows moving independently (or not) timelineobjects and trackobjects and
have them synchronized with the offsets taken into account.

Right now only the start and priority properties are synchronized. The duration
and in-point properties will require more thoughts.
2010-12-16 19:29:14 +01:00
Edward Hervey
e6aeb97040 GESTrackObject: Add a 'locked' property for position synchronization
And update all code using it
2010-12-16 16:27:26 +01:00
Edward Hervey
8ca6f66f4c GESTrackObject: Hide more variables and provide accessors for them 2010-12-16 15:00:46 +01:00
Edward Hervey
5a170091e6 GESTimelineLayer: Hide the object list and priority
Add needed setters/getters
2010-12-16 12:41:26 +01:00
Edward Hervey
7ef6f365d9 GESSimpleTimelineLayer: _nth() returns a const
The refcount isn't incremented.
2010-12-15 19:18:16 +01:00
Edward Hervey
ed6b2ce4c4 GESTrack: Make more properties private
And ensure exported symbols are properly documented and have
argument checking.
2010-12-15 19:05:48 +01:00
Brandon Lewis
4dae5c83f4 GESSimpleTimelineLayer: add test for _nth() method 2010-12-15 18:01:33 +01:00
Edward Hervey
0486623e30 test: Disable the text_properties_in_layer test until it's properly implemented 2010-12-15 15:56:38 +01:00
Edward Hervey
4c63aa21f2 ges: Switch to encoding-profile API from base
Remove dependency on gst-convenience.
2010-12-15 12:38:03 +01:00
Edward Hervey
7a098a423d GESTimelineSource: Remove textoverlay properties
This will be made more generic by allowing any overlay/effect to
be put on any source object.
2010-12-09 19:36:44 +01:00
Edward Hervey
a5261d23d2 tests: Make sure gst_bin_add succeeds
And detect when we're trying to add contents to a gnlsource which
already has something
2010-12-09 17:43:08 +01:00
Edward Hervey
ef7eb9efdd GESTransition: Make it a base class and add GESTimelineStandardTransition
This is to ensure people can create their own Layer Transition subclass.

API : GESTimelineTransition is now GESTimelineStandardTransition
2010-12-09 17:09:11 +01:00
Thibault Saunier
dfeb7afe85 GESTimelineObject: add private structure 2010-12-08 13:00:21 +01:00
Thibault Saunier
7fc3be7d44 GESSimpleTimelineLayer: add private structure 2010-12-08 13:00:15 +01:00
Brandon Lewis
2b63a52a6a Tests: fix CMP_FAIL on 32-bit machines 2010-12-03 12:39:42 +01:00
Edward Hervey
9e1877a083 tests: Make sure we specify guint64 with g_object_set arguments
Yup, had missed those because of weird macros :(
2010-12-02 12:28:15 +01:00
Thibault Saunier
4add2937de SimpleTimelineLayer: Remove bogus check and extend unit test to validate it 2010-12-02 11:55:44 +01:00
Edward Hervey
098a2294f3 tests: Make sure we specify guint64 with g_object_set arguments
Avoids crashers on 32bit machines
2010-12-02 11:54:03 +01:00
Brandon Lewis
107b5fcf5e ges-ui: allow enabling/disabling audio/video tracks 2010-11-27 18:14:06 +01:00
Brandon Lewis
c91d1dd32d ges-ui: implement save as command in gtk demo 2010-11-27 18:12:50 +01:00
Brandon Lewis
ae098803fc ges-ui: implement load command 2010-11-27 18:12:50 +01:00
Brandon Lewis
02da3a8cba ges-ui: don't assume we always have 1 layer and two tracks 2010-11-27 18:12:49 +01:00
Brandon Lewis
a4f315274c ges-ui: add new command, remove quit command (closing last window quits app) 2010-11-27 18:12:49 +01:00
Edward Hervey
e557592074 test: Fix typo in simplelayer test 2010-11-27 18:12:49 +01:00
Edward Hervey
f3904653b7 check: Small cleanup of the save/load test 2010-11-27 18:12:49 +01:00
Brandon Lewis
d1bdd2ddf2 tests: add save->load test case 2010-11-27 18:08:20 +01:00
Brandon Lewis
a2dcf03f86 tests: use ges_formatter_{get,set}_data accessors in unit tests 2010-11-27 18:08:20 +01:00
Brandon Lewis
cc57dcf681 tests: update unit tests 2010-11-27 18:08:20 +01:00
Brandon Lewis
4f0136c5ac tests: Add save/load tests 2010-11-27 18:08:19 +01:00
Brandon Lewis
9f2f21d8df tests: test for track removal while timeline contains timeline objects 2010-11-27 17:23:30 +01:00
Brandon Lewis
d7af7f630a tests: test that adding tracks after adding layers works 2010-11-27 17:23:30 +01:00
Brandon Lewis
8cee3b95ba tests: unit test to check that objects in layers are properly added to the timeline 2010-11-27 17:23:29 +01:00
Edward Hervey
d4b5e6d6ab tests: Ignore more files 2010-11-23 17:33:32 +01:00
Edward Hervey
99e7180e0c examples: Fix for latest GstDiscoverer API changes 2010-11-09 16:27:06 +01:00
Edward Hervey
6364e8ec2c all: Changes for discoverer being merged upstream
Along with a whole bunch of Makefile fixups
2010-09-23 18:42:48 +02:00
Edward Hervey
a02a5c2320 Update for factorylist/convertframe being merged to gst core/base 2010-09-16 08:39:46 +02:00
Edward Hervey
d76535bc59 Update to moved gst-convenience 2010-09-16 08:39:01 +02:00
Brandon Lewis
e56ed70a68 relax restrictions on adding transitions
We don't need these any more: the valid property tells us whether it is safe
to go to GST_STATE_PLAYING or not.
2010-09-02 18:08:44 +02:00
Brandon Lewis
dad81a6f32 move a callback into the proper section of the file 2010-09-02 18:08:44 +02:00
Brandon Lewis
6533e038c9 fix bug in time format regex 2010-09-02 18:08:44 +02:00
Brandon Lewis
c8d243b931 show duration text entry for all object types 2010-09-02 18:08:43 +02:00
Brandon Lewis
e98e10bad8 connect to delete event instead of destroy 2010-09-02 18:08:43 +02:00
Brandon Lewis
e0dbbcce6f hide empty menus 2010-09-02 18:08:43 +02:00
Brandon Lewis
6103645f38 ignore some UI signals when selection changes 2010-09-02 18:08:43 +02:00
Brandon Lewis
92e1ae637e disable playback when layer is in invalid state 2010-09-02 18:08:43 +02:00
Brandon Lewis
6e844f877f layer is also invalid when there are transitoins at the beginning/end 2010-09-02 18:08:43 +02:00
Brandon Lewis
03e488ac74 add vaid property and unit tests 2010-09-02 18:08:43 +02:00
Brandon Lewis
11bb201e9d update list store layer emits object-moved 2010-09-02 18:08:43 +02:00
Brandon Lewis
4fd305cbec add unit tests for 'object-moved' signal 2010-09-02 18:08:43 +02:00
Brandon Lewis
98e070d412 implement move up/down commands 2010-09-02 18:04:30 +02:00
Brandon Lewis
848b15eb8c connect to move_{up,down actions 2010-09-02 18:04:30 +02:00
Brandon Lewis
d14f1f11c5 also disallow moving past the start or end of timeline 2010-09-02 18:04:30 +02:00
Brandon Lewis
9e2352332a can move only when exactly one clip is selected (and not in playback/paused) 2010-09-02 18:04:30 +02:00
Brandon Lewis
a6968fc33a add move up/down actions 2010-09-02 18:04:29 +02:00
Brandon Lewis
d799e7720a re-arrange tool-bar buttons 2010-09-02 18:04:29 +02:00
Brandon Lewis
8975053255 don't allow changes to timeline if we're paused 2010-09-02 18:04:29 +02:00
Brandon Lewis
081dc24869 implement the stop button 2010-09-02 18:04:29 +02:00
Brandon Lewis
c94b446766 add stop button 2010-09-02 18:04:29 +02:00
Brandon Lewis
6377906e12 code clean-up and comments 2010-09-02 18:04:29 +02:00
Brandon Lewis
5f67510bf6 eliminate unecessary function prototypes 2010-09-02 18:04:29 +02:00
Brandon Lewis
de28ea361e move UI callbacks to end of file 2010-09-02 18:04:29 +02:00
Brandon Lewis
9b1fa9c8cc clean up application struct 2010-09-02 18:04:29 +02:00
Brandon Lewis
029f6b8228 more xml tweaks 2010-09-02 18:04:29 +02:00
Brandon Lewis
678d5fd710 don't connect to selected objects unless selection is homogenous 2010-09-02 18:04:29 +02:00
Brandon Lewis
634babbeb7 UI layout tweaks 2010-09-02 18:04:29 +02:00
Brandon Lewis
004e30a72c only allow transitions to be added when the last object isn't a transition 2010-09-02 18:04:29 +02:00
Brandon Lewis
6da49412d3 use a private struct with get_selection_foreach 2010-09-02 18:04:28 +02:00
Brandon Lewis
36428f8c5a disable add_transition 2010-09-02 18:04:28 +02:00
Brandon Lewis
31464faad9 get add_transition action from xml 2010-09-02 18:04:28 +02:00
Brandon Lewis
43f8f04cf5 menu/toolbar for adding transitions 2010-09-02 18:04:28 +02:00
Brandon Lewis
f519e156e8 allow multiple selections 2010-09-02 18:04:28 +02:00
Brandon Lewis
b05e5534df set pipeline to ready on EOS 2010-09-02 18:04:28 +02:00
Brandon Lewis
f11057246c make sure all actions that mutate timeline are disabled during playback 2010-09-02 18:04:28 +02:00
Brandon Lewis
ad7f430066 set frequency property when spin button changed 2010-09-02 18:04:28 +02:00
Brandon Lewis
cffbeec32b update frequency spin button when selection changed 2010-09-02 18:04:28 +02:00
Brandon Lewis
f2e3cba941 add frequency and volume widgets, with signal handlers 2010-09-02 18:04:28 +02:00
Brandon Lewis
d34e61d395 update source volume when slider is moved 2010-09-02 18:04:28 +02:00
Brandon Lewis
c9a9cabaec update volume slider when volume changes 2010-09-02 18:04:28 +02:00
Brandon Lewis
9bc26edc87 get freq/volume widgets 2010-09-02 18:04:27 +02:00
Brandon Lewis
335c93569b implement background widget 2010-09-02 18:04:27 +02:00
Brandon Lewis
ed079ed6f0 fill backround type table from enum values 2010-09-02 18:04:27 +02:00
Brandon Lewis
3b2659b6f9 adjust visibility calculations 2010-09-02 18:04:27 +02:00
Brandon Lewis
b37a92b255 allow adding test sources 2010-09-02 18:04:27 +02:00
Brandon Lewis
e21bce1843 get background widgets from xml 2010-09-02 18:04:27 +02:00
Brandon Lewis
3ada32eeac test sources 2010-09-02 18:04:27 +02:00
Brandon Lewis
d67801792d add text box to set durations from formatted strings 2010-09-02 18:04:27 +02:00
Brandon Lewis
496c654728 set sate of pipeline to NULL prior to exit 2010-09-02 18:04:27 +02:00
Brandon Lewis
fa60c9cb9d update text property from text widget 2010-09-02 18:04:27 +02:00
Brandon Lewis
aa7ff11b7f call ges_simple_timeline_layer_add_object intead of base method 2010-09-02 18:04:27 +02:00
Brandon Lewis
685cd40fa1 completely hide properties widgets when nothign is selected 2010-09-02 18:04:27 +02:00
Brandon Lewis
78120467e7 refactor connecto_to_* family of functions 2010-09-02 18:04:27 +02:00
Brandon Lewis
fbed7cf5f3 connect to text property widgets 2010-09-02 18:04:26 +02:00
Brandon Lewis
ab2bb1dce5 add widgets to UI for editing text properties 2010-09-02 18:04:26 +02:00
Brandon Lewis
28cef09736 add signal handlers for text properties 2010-09-02 18:04:26 +02:00
Brandon Lewis
59ecab2421 keep track of the type of selected objects 2010-09-02 18:04:26 +02:00
Brandon Lewis
5a8ce641ee add title source when action activates 2010-09-02 18:04:26 +02:00
Brandon Lewis
e34baad63d add text properties to UI 2010-09-02 18:04:26 +02:00
Brandon Lewis
91d8591a1e allow multiple files to be added 2010-09-02 18:04:26 +02:00
Brandon Lewis
a0be0475c5 use file-chooser dialog when adding files 2010-09-02 18:04:26 +02:00
Brandon Lewis
b20a89540f disable playback when there's nothing in the timeline 2010-09-02 18:04:26 +02:00
Brandon Lewis
921378b488 disable add_file during playback 2010-09-02 18:04:26 +02:00
Brandon Lewis
fccf1d4520 disable delete during playback 2010-09-02 18:04:26 +02:00
Brandon Lewis
fc93c3c870 disable properties during playback 2010-09-02 18:04:26 +02:00
Brandon Lewis
aae0e26508 update state from bus; set button icon from playback state 2010-09-02 18:04:25 +02:00
Brandon Lewis
b7c2956827 set the action sensitivity, not the menu item 2010-09-02 18:04:25 +02:00
Brandon Lewis
783ce7ac3b toggle playback when button clicked 2010-09-02 18:04:25 +02:00
Brandon Lewis
5cbd2f28a6 fix signal handler signatures 2010-09-02 18:04:25 +02:00
Brandon Lewis
79a939e3cf add play action/controls 2010-09-02 18:04:25 +02:00
Brandon Lewis
7bbde00c9b add toolbar; connect to action signals instead of menu items directly 2010-09-02 18:04:25 +02:00
Brandon Lewis
9107efb4ac also set state of delete menu item 2010-09-02 18:04:25 +02:00
Brandon Lewis
6a0c7da725 update in-point from in-point slider 2010-09-02 18:04:25 +02:00
Brandon Lewis
80119bc7c5 add in-point slider 2010-09-02 18:04:25 +02:00
Brandon Lewis
01f6795733 format duration nicely 2010-09-02 18:04:25 +02:00
Brandon Lewis
853c31e75e set slider range before setting duration 2010-09-02 18:04:25 +02:00
Brandon Lewis
c4219a9304 remove some unneeded function protos 2010-09-02 18:04:25 +02:00
Brandon Lewis
2e2d7e388a slider updates duration of selected object now 2010-09-02 18:04:25 +02:00
Brandon Lewis
2919d61bf8 connect to duration and max-duration changed of filesources 2010-09-02 18:04:24 +02:00
Brandon Lewis
8ae5872787 do housekeeping each time selection is updated 2010-09-02 18:04:24 +02:00
Brandon Lewis
b5affabc0c clean up the create_ui function a bit 2010-09-02 18:04:24 +02:00
Brandon Lewis
64d09470d0 disable properties editor when nothing is selected 2010-09-02 18:04:24 +02:00
Brandon Lewis
0767ac5e92 rename a few attributes 2010-09-02 18:04:24 +02:00
Brandon Lewis
1a72eb0fdc update list model when objects are removed from layer 2010-09-02 18:04:24 +02:00
Brandon Lewis
9c93c4e15f delete selected objects from layer when user issues delete command 2010-09-02 18:04:24 +02:00
Brandon Lewis
bdc7dc7cd7 store a pointer to the list selection 2010-09-02 18:04:24 +02:00
Brandon Lewis
c46c03504a display filename and duration of added clip 2010-09-02 18:04:24 +02:00
Brandon Lewis
fcd508559e don't create tree model in XML 2010-09-02 18:04:24 +02:00
Brandon Lewis
feca823168 make sure we get everythign we need from the XML file 2010-09-02 18:04:24 +02:00
Brandon Lewis
2cb291b191 connect to layer object-{added,removed} and display message 2010-09-02 18:04:24 +02:00
Brandon Lewis
db243a2499 add some simple code to add a source to the timeline 2010-09-02 18:04:23 +02:00
Brandon Lewis
cd1ebe9237 add liscence and some organizational comments 2010-09-02 18:04:23 +02:00
Brandon Lewis
d267841e41 we don't have to free all that much, in fact 2010-09-02 18:04:23 +02:00
Brandon Lewis
d236e92178 create a simple timeline layer 2010-09-02 18:04:23 +02:00
Brandon Lewis
c74b51f9b2 pass app instance to signal handlers 2010-09-02 18:04:23 +02:00
Brandon Lewis
789859cbc4 move app data to private struct 2010-09-02 18:04:23 +02:00
Brandon Lewis
37e895975d export dynamic symbols in examples so signal autoconnect works 2010-09-02 18:04:23 +02:00
Brandon Lewis
6c3e0b3f34 add protos so it builds under c90 mode 2010-09-02 18:04:23 +02:00
Brandon Lewis
f4826aa85c add ges-ui.c to build system 2010-09-02 18:04:23 +02:00
Brandon Lewis
da242d9f9a move ui to tests/examples 2010-09-02 18:03:38 +02:00
Edward Hervey
4d801d85fe tests: Fix a leak in test_filesource_images 2010-09-02 17:54:48 +02:00
Brandon Lewis
dd47b93587 update unit tests to catch an earlier bug 2010-09-01 16:56:04 +02:00
Brandon Lewis
01ba934522 check in text properties example 2010-09-01 16:56:04 +02:00
Brandon Lewis
a071cec612 add unit tests for text properties 2010-09-01 16:56:04 +02:00
Brandon Lewis
286c5f78db supply type param to _find_track_objects in unit tests 2010-09-01 16:56:03 +02:00
Brandon Lewis
739053e249 unref timeline in unit test 2010-09-01 16:56:03 +02:00
Brandon Lewis
efbc4a22cd increase default priority offset for sources; update unit tests 2010-09-01 16:56:03 +02:00