#include <wx/listctrl.h>
#include <wx/statline.h>
-#include <network.h>
-#include <charset.h>
+#include <vlc_network.h>
+#include <vlc_charset.h>
class wizHelloPage;
class wizInputPage;
{
public:
wizInputPage( wxWizard *, wxWizardPage *, intf_thread_t *);
- wizInputPage::~wizInputPage();
+ ~wizInputPage();
void OnWizardPageChanging(wxWizardEvent& event);
void OnInputChange( wxCommandEvent& event );
void OnEnablePartial(wxCommandEvent& event);
public:
wizTranscodeCodecPage( wxWizard *parent, wxWizardPage *next);
~wizTranscodeCodecPage();
- void wizTranscodeCodecPage::OnWizardPageChanging(wxWizardEvent& event);
+ void OnWizardPageChanging(wxWizardEvent& event);
virtual wxWizardPage *GetPrev() const;
virtual wxWizardPage *GetNext() const;
void SetPrev( wxWizardPage *page);
{
public:
wizEncapPage( wxWizard *parent);
- wizEncapPage::~wizEncapPage();
+ ~wizEncapPage();
void OnWizardPageChanging(wxWizardEvent& event);
virtual wxWizardPage *GetPrev() const;
virtual wxWizardPage *GetNext() const;
void OnWizardPageChanging( wxWizardEvent& event );
protected:
DECLARE_EVENT_TABLE()
- void wizTranscodeExtraPage::OnSelectFile(wxCommandEvent&);
+ void OnSelectFile(wxCommandEvent&);
wxTextCtrl *file_text;
WizardDialog *p_parent;
wxWizardPage *p_prev;
wxU( INPUT_OPEN ) );
radioSizer->Add( input_radios[0], 0, wxALL, 5 );
input_radios[1] = new wxRadioButton( radio_panel, InputRadio1_Event ,
- wxU( INPUT_PL ) );
+ wxU( INPUT_PL ) );
radioSizer->Add( input_radios[1], 0, wxALL, 5 );
radio_panel->SetSizer( radioSizer );
openSizer->Fit(open_panel);
mainSizer->Add( open_panel );
- playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_intf,
- VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
-
+ playlist_t *p_playlist = pl_Yield( p_intf );
if( p_playlist )
{
- if( p_playlist->i_size > 0)
+ if( !playlist_IsEmpty( p_playlist ) )
{
listview = new wxListView( this, ListView_Event,
wxDefaultPosition, wxDefaultSize,
listview->InsertColumn( 1, wxU(_("URI")) );
listview->SetColumnWidth( 0, 250 );
listview->SetColumnWidth( 1, 100 );
-#if 0
- for( int i=0 ; i < p_playlist->i_size ; i++ )
- {
- wxString filename = wxL2U( p_playlist->pp_items[i]->input.
- psz_name );
- listview->InsertItem( i, filename );
- listview->SetItem( i, 1, wxL2U( p_playlist->pp_items[i]->
- input.psz_uri) );
- listview->SetItemData( i,
- (long)p_playlist->pp_items[i]->input.i_id );
- }
- listview->Select( p_playlist->i_index , TRUE);
-#endif
mainSizer->Add( listview, 1, wxALL|wxEXPAND, 5 );
listview->Hide();
{
input_radios[1]->Disable();
}
- vlc_object_release( p_playlist );
+ pl_Release( p_intf );
}
else
{
}
else
{
- p_parent->SetMrl( (const char *)mrl_text->GetValue().mb_str() );
+ p_parent->SetMrl( (const char *)mrl_text->GetValue().mb_str(wxConvUTF8) );
}
}
else
if( i != -1 )
{
long data = listview->GetItemData( i );
- playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_intf,
- VLC_OBJECT_PLAYLIST, FIND_ANYWHERE);
+ playlist_t *p_playlist = pl_Yield( p_intf );
if( p_playlist )
{
- playlist_item_t * p_item = playlist_LockItemGetById(
- p_playlist, (int)data );
+ playlist_item_t * p_item = playlist_ItemGetById( p_playlist, (int)data, false );
if( p_item )
{
- p_parent->SetMrl( (const char*)p_item->p_input->psz_uri );
+ const char *psz_uri = input_item_GetURI( p_item->p_input );
+ p_parent->SetMrl( psz_uri );
+ free( psz_uri );
}
else
event.Veto();
+ pl_Release( p_intf );
}
else
event.Veto();
}
if( enable_checkbox->IsChecked() )
{
- int i_from = atoi( from_text->GetValue().mb_str() );
- int i_to = atoi( to_text->GetValue().mb_str() );
+ int i_from = atoi( from_text->GetValue().mb_str(wxConvUTF8) );
+ int i_to = atoi( to_text->GetValue().mb_str(wxConvUTF8) );
p_parent->SetPartial( i_from, i_to );
}
return;
/* Line 2 : codec */
video_sizer1->Add( new wxStaticText(this, -1, wxU(_("Codec"))),0,wxLEFT ,5);
video_combo = new wxComboBox( this, VideoCodec_Event, wxT(""),
- wxDefaultPosition, wxSize(200,25), 0, NULL,
+ wxDefaultPosition, wxSize(200,25), 0, NULL,
wxCB_DROPDOWN| wxCB_READONLY );
for( i= 0; vcodecs_array[i].psz_display != NULL; i++ )
{
/* Line 2 : codec */
audio_sizer1->Add( new wxStaticText(this, -1, wxU(_("Codec"))),0,wxLEFT,5);
audio_combo = new wxComboBox( this, AudioCodec_Event, wxT(""),
- wxDefaultPosition, wxSize(200,25), 0, NULL,
+ wxDefaultPosition, wxSize(200,25), 0, NULL,
wxCB_DROPDOWN| wxCB_READONLY );
for( i= 0; acodecs_array[i].psz_display != NULL; i++ )
{
wizTranscodeCodecPage::~wizTranscodeCodecPage()
{
- if( acodec ) free( acodec );
- if( vcodec ) free( vcodec );
+ free( acodec );
+ free( vcodec );
}
void wizTranscodeCodecPage::OnEnableVideo(wxCommandEvent& event)
audio_combo->GetSelection() : i_audio_codec ));
acodec = strdup(c->psz_codec);
- int vb = atoi(vb_combo->GetValue().mb_str() );
+ int vb = atoi(vb_combo->GetValue().mb_str(wxConvUTF8) );
if( vb == 0 )
{
vb = 1024;
}
- int ab = atoi(ab_combo->GetValue().mb_str() );
+ int ab = atoi(ab_combo->GetValue().mb_str(wxConvUTF8) );
if( ab == 0)
{
ab = 192;
if( !event.GetDirection() ) return;
/* Check valid address */
- if( i_method == 1
- && !net_AddressIsMulticast( (vlc_object_t *)p_intf,
- address_txtctrl->GetValue().mb_str()) )
- {
- wxMessageBox( wxU( INVALID_MCAST_ADDRESS ) , wxU( ERROR_MSG ),
- wxICON_WARNING | wxOK, this->p_parent );
- event.Veto();
-
- }
- else if( i_method == 0 && address_txtctrl->GetValue().IsEmpty() )
+ if( i_method == 0 && address_txtctrl->GetValue().IsEmpty() )
{
wxMessageBox( wxU( NO_ADDRESS_TEXT ) , wxU( ERROR_MSG ),
wxICON_WARNING | wxOK, this->p_parent );
}
}
p_parent->SetStream( methods_array[i_method].psz_access ,
- address_txtctrl->GetValue().mb_str() );
+ address_txtctrl->GetValue().mb_str(wxConvUTF8) );
/* Set the action for the muxer page */
((wizEncapPage*)GetNext())->SetAction( p_parent->GetAction() );
if( file_dialog && file_dialog->ShowModal() == wxID_OK )
{
- if( file_dialog->GetFilename().mb_str() )
+ if( file_dialog->GetFilename().mb_str(wxConvUTF8) )
{
file_text->SetValue( file_dialog->GetPath() );
}
}
if( event.GetDirection() )
{
- p_parent->SetTranscodeOut( file_text->GetValue().mb_str());
+ p_parent->SetTranscodeOut( file_text->GetValue() );
}
}
else
{
p_parent->SetSAP( true,
- (const char *)sap_text->GetValue().mb_str() );
+ (const char *)sap_text->GetValue().mb_str(wxConvUTF8) );
}
}
else
this->address = strdup( address );
}
-void WizardDialog::SetTranscodeOut( char const *address )
+void WizardDialog::SetTranscodeOut( wxString address )
{
- char *psz_utf8 = FromLocale( address );
+ char *psz_utf8 = wxFromLocale( address );
this->address = strdup( psz_utf8 );
- LocaleFree( psz_utf8 );
+ wxLocaleFree( psz_utf8 );
}
void WizardDialog::SetMux( char const *mux )
/* Add brackets automatically for IPv6 if they are missing */
v6 = ( address[0] != '[' ) && ( strchr( address, ':' ) != NULL );
asprintf( &psz_opt,
- ":sout=#standard{mux=%s,dst=%s%s%s,access=%s%s}",
- mux, v6 ? "[" : "", address, v6 ? "]" : "", method,
+ ":sout=#%smux=%s,dst=%s%s%s%s}", method,
+ mux, v6 ? "[" : "", address, v6 ? "]" : "",
psz_sap_option ?: "" );
- if( psz_sap_option ) free( psz_sap_option );
+ free( psz_sap_option );
}
- playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_intf,
- VLC_OBJECT_PLAYLIST, FIND_ANYWHERE);
+ playlist_t *p_playlist = pl_Yield( p_intf );
if( p_playlist )
{
input_item_t *p_input = input_ItemNew( p_playlist, mrl,
snprintf( psz_ttl, 20, "ttl=%i",i_ttl );
input_ItemAddOption( p_input, psz_ttl );
- playlist_PlaylistAddInput( p_playlist, p_input,
- PLAYLIST_GO, PLAYLIST_END );
- vlc_object_release(p_playlist);
+ /* FIXME: playlist_AddInput() can fail */
+ playlist_AddInput( p_playlist, p_input,
+ PLAYLIST_GO, PLAYLIST_END, true, pl_Unlocked );
+ vlc_gc_decref( p_input );
+ pl_Release( p_intf );
}
else
{