#include "bitmaps/update_info.xpm"
#include "bitmaps/update_source.xpm"
-#include "vlc_block.h"
-#include "vlc_stream.h"
-
-#define UPDATE_VLC_DOWNLOAD_BUFFER_SIZE 2048
-
/*****************************************************************************
* Event Table.
*****************************************************************************/
* Constructor.
*****************************************************************************/
UpdateVLC::UpdateVLC( intf_thread_t *_p_intf, wxWindow *p_parent ):
- wxFrame( p_parent, -1, wxU(_("VLC media player - Updates")),
+ wxFrame( p_parent, -1, wxU(_("Updates")),
wxDefaultPosition, wxDefaultSize,
- wxSYSTEM_MENU|wxCLOSE_BOX|wxFRAME_FLOAT_ON_PARENT|wxFRAME_TOOL_WINDOW)
+ wxSYSTEM_MENU|wxCLOSE_BOX|wxFRAME_FLOAT_ON_PARENT
+ |wxFRAME_TOOL_WINDOW|wxCAPTION )
{
/* Initializations */
p_intf = _p_intf;
wxBoxSizer *main_sizer = new wxBoxSizer( wxVERTICAL );
wxButton *update_button =
new wxButton( this, CheckForUpdate_Event,
- wxU(_("Check for updates now !")) );
+ wxU(_("Check for updates")) );
main_sizer->Add( update_button );
SetSizerAndFit( main_sizer );
wxListCtrl *list =
new wxListCtrl( this, ChooseItem_Event,
wxDefaultPosition, wxSize( 400, 300 ),
- wxLC_AUTOARRANGE|wxLC_SINGLE_SEL );
+ wxLC_SINGLE_SEL|wxLC_LIST );
wxImageList *images = new wxImageList( 32, 32, TRUE );
images->Add( wxIcon( update_ascii_xpm ) );
images->Add( wxIcon( update_info_xpm ) );
list->AssignImageList( images, wxIMAGE_LIST_SMALL );
while( update_iterator_Action( p_uit, UPDATE_FILE ) != UPDATE_FAIL )
{
- /*wxButton *update_button =
- new wxButton( this, Download_Event,
- wxU(p_uit->file.psz_description) );
- main_sizer->Add( update_button, 0, wxALIGN_CENTER );*/
int i_image;
switch( p_uit->file.i_type )
{
default:
i_image = 0;
}
+ char *psz_tmp = NULL;
+ if( p_uit->file.l_size )
+ {
+ if( p_uit->file.l_size > 1024 * 1024 * 1024 )
+ asprintf( &psz_tmp, "(%ld GB)",
+ p_uit->file.l_size / (1024*1024*1024) );
+ if( p_uit->file.l_size > 1024 * 1024 )
+ asprintf( &psz_tmp, "(%ld MB)",
+ p_uit->file.l_size / (1024*1024) );
+ else if( p_uit->file.l_size > 1024 )
+ asprintf( &psz_tmp, "(%ld kB)",
+ p_uit->file.l_size / 1024 );
+ else
+ asprintf( &psz_tmp, "(%ld B)", p_uit->file.l_size );
+ }
list->InsertItem( list->GetItemCount(),
wxU(p_uit->file.psz_description)+wxU("\n")
- + wxU(p_uit->release.psz_version)+wxU(" (")
- + wxU(p_uit->release.psz_svn_revision)+wxU(")"),
+ + wxU(p_uit->release.psz_version)+wxU(" ")
+ + wxU(psz_tmp),
i_image );
+ if( psz_tmp ) free( psz_tmp );
}
- main_sizer->Add( new wxStaticText( this, -1, wxU( _("\nAvailable updates and related downloads:\n(Double click on a file to download it)\n" ) ) ) );
- main_sizer->Add( list/*, 0, wxEXPAND */);
+ main_sizer->Add( new wxStaticText( this, -1, wxU( _("\nAvailable "
+ "updates and related downloads.\n"
+ "(Double click on a file to download it)\n" ) ) ) );
+ main_sizer->Add( list );
SetSizerAndFit( main_sizer );
Layout();
update_iterator_Delete( p_uit );
}
wxString url = wxU( p_uit->file.psz_url );
wxFileDialog *filedialog =
- new wxFileDialog( this, wxU(_("Save file ...")),
+ new wxFileDialog( this, wxU(_("Save file...")),
wxT(""), url.AfterLast( '/' ), wxT("*.*"),
wxSAVE | wxOVERWRITE_PROMPT );
if( filedialog->ShowModal() == wxID_OK )
{
- char *psz_dest = ToLocale( filedialog->GetPath().mb_str() );
-
- update_download( p_uit, psz_dest );
- LocaleFree( psz_dest );
+ update_download( p_uit, filedialog->GetPath().mb_str(wxConvUTF8) );
}
update_iterator_Delete( p_uit );
delete filedialog;