]> git.sesse.net Git - mlt/blobdiff - mlt++/src/MltProperties.cpp
Merge ../mlt++
[mlt] / mlt++ / src / MltProperties.cpp
index e6ebfa629604014f7922cdc9369300b53cea9bdc..078d69f4f1f012b4262810595a13aff10769d71a 100644 (file)
@@ -28,7 +28,7 @@ Properties::Properties( ) :
        instance = mlt_properties_new( );
 }
 
-Properties::Properties( bool dummy ) :
+Properties::Properties( bool /*dummy*/ ) :
        instance( NULL )
 {
 }
@@ -88,7 +88,7 @@ void Properties::unblock( void *object )
 
 void Properties::fire_event( const char *event )
 {
-       mlt_events_fire( get_properties( ), ( char * )event, NULL );
+       mlt_events_fire( get_properties( ), event, NULL );
 }
 
 bool Properties::is_valid( )
@@ -206,6 +206,9 @@ void Properties::load( const char *file )
 
 int Properties::save( const char *file )
 {
+#ifdef WIN32
+       return mlt_properties_save( get_properties( ), file );
+#else
        int error = 0;
        FILE *f = fopen( file, "w" );
        if ( f != NULL )
@@ -218,11 +221,12 @@ int Properties::save( const char *file )
                error = 1;
        }
        return error;
+#endif
 }
 
-#ifdef __DARWIN__
+#if defined( __DARWIN__ ) && GCC_VERSION < 40000
 
-Event *Properties::listen( char *id, void *object, void (*listener)( ... ) )
+Event *Properties::listen( const char *id, void *object, void (*listener)( ... ) )
 {
        mlt_event event = mlt_events_listen( get_properties( ), object, id, ( mlt_listener )listener );
        return new Event( event );
@@ -230,7 +234,7 @@ Event *Properties::listen( char *id, void *object, void (*listener)( ... ) )
 
 #else
 
-Event *Properties::listen( char *id, void *object, mlt_listener listener )
+Event *Properties::listen( const char *id, void *object, mlt_listener listener )
 {
        mlt_event event = mlt_events_listen( get_properties( ), object, id, listener );
        return new Event( event );
@@ -238,11 +242,16 @@ Event *Properties::listen( char *id, void *object, mlt_listener listener )
 
 #endif
 
-Event *Properties::setup_wait_for( char *id )
+Event *Properties::setup_wait_for( const char *id )
 {
        return new Event( mlt_events_setup_wait_for( get_properties( ), id ) );
 }
 
+void Properties::delete_event( Event *event )
+{
+       delete event;
+}
+
 void Properties::wait_for( Event *event, bool destroy )
 {
        mlt_events_wait_for( get_properties( ), event->get_event( ) );