48
49
// -------------------------------------------------------------------------------- //
49
50
guGenericDirCtrl::guGenericDirCtrl( wxWindow * parent, const int showpaths ) :
50
51
wxGenericDirCtrl( parent, wxID_ANY, wxDirDialogDefaultFolderStr,
51
wxDefaultPosition, wxDefaultSize, wxDIRCTRL_DIR_ONLY|wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER,
52
wxDefaultPosition, wxDefaultSize, wxDIRCTRL_DIR_ONLY|wxDIRCTRL_3D_INTERNAL|wxNO_BORDER,
52
53
wxEmptyString, 0, wxTreeCtrlNameStr )
54
55
m_ShowPaths = showpaths;
163
164
// guFileBrowserDirCtrl
164
165
// -------------------------------------------------------------------------------- //
165
166
guFileBrowserDirCtrl::guFileBrowserDirCtrl( wxWindow * parent, guDbLibrary * db, const wxString &dirpath ) :
166
wxPanel( parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL )
167
wxPanel( parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL | wxNO_BORDER )
169
170
m_AddingFolder = false;
189
190
m_ShowRecPathsBtn = new wxToggleBitmapButton( this, wxID_ANY, guImage( guIMAGE_INDEX_tiny_record ), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
190
191
m_ShowRecPathsBtn->SetToolTip( _( "Switch between see all filesystem and only recording locations" ) );
191
192
m_ShowRecPathsBtn->SetValue( ShowPaths & guFILEBROWSER_SHOWPATH_RECORDS );
192
DirBtnSizer->Add( m_ShowRecPathsBtn, 0, wxALL, 5 );
193
DirBtnSizer->Add( m_ShowRecPathsBtn, 0, wxTOP|wxBOTTOM|wxLEFT|wxRIGHT, 5 );
194
195
m_ShowPodPathsBtn = new wxToggleBitmapButton( this, wxID_ANY, guImage( guIMAGE_INDEX_tiny_podcast ), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
195
196
m_ShowPodPathsBtn->SetToolTip( _( "Switch between see all filesystem and only podcast locations" ) );
196
197
m_ShowPodPathsBtn->SetValue( ShowPaths & guFILEBROWSER_SHOWPATH_PODCASTS );
197
DirBtnSizer->Add( m_ShowPodPathsBtn, 0, wxALL, 5 );
198
DirBtnSizer->Add( m_ShowPodPathsBtn, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
199
200
m_ShowLibPathsBtn = new wxToggleBitmapButton( this, wxID_ANY, guImage( guIMAGE_INDEX_tiny_library ), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
200
201
m_ShowLibPathsBtn->SetToolTip( _( "Switch between see all filesystem and only library locations" ) );
201
202
m_ShowLibPathsBtn->SetValue( ShowPaths & guFILEBROWSER_SHOWPATH_LIBRARY );
202
DirBtnSizer->Add( m_ShowLibPathsBtn, 0, wxALL, 5 );
203
DirBtnSizer->Add( m_ShowLibPathsBtn, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
204
205
MainSizer->Add( DirBtnSizer, 0, wxEXPAND, 5 );
287
288
MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_doc_save ) );
288
289
Menu.Append( MenuItem );
290
MenuItem = new wxMenuItem( &Menu, ID_FILESYSTEM_FOLDER_COPYTO, _( "Copy to..." ), _( "Copy the selected folder to a folder or device" ) );
291
MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_edit_copy ) );
292
Menu.Append( MenuItem );
291
Menu.AppendSeparator();
293
// MenuItem = new wxMenuItem( &Menu, ID_FILESYSTEM_FOLDER_COPYTO, _( "Copy to..." ), _( "Copy the selected folder to a folder or device" ) );
294
// MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_edit_copy ) );
295
// Menu.Append( MenuItem );
296
guMainFrame * MainFrame = ( guMainFrame * ) wxTheApp->GetTopWindow();
297
MainFrame->CreateCopyToMenu( &Menu, ID_FILESYSTEM_FOLDER_COPYTO );
294
299
Menu.AppendSeparator();
971
976
MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_doc_save ) );
972
977
Menu->Append( MenuItem );
974
MenuItem = new wxMenuItem( Menu, ID_FILESYSTEM_ITEMS_COPYTO, _( "Copy to..." ), _( "Copy the selected files to a folder or device" ) );
975
MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_edit_copy ) );
976
Menu->Append( MenuItem );
979
Menu->AppendSeparator();
980
// MenuItem = new wxMenuItem( Menu, ID_FILESYSTEM_ITEMS_COPYTO, _( "Copy to..." ), _( "Copy the selected files to a folder or device" ) );
981
// MenuItem->SetBitmap( guImage( guIMAGE_INDEX_tiny_edit_copy ) );
982
// Menu->Append( MenuItem );
983
guMainFrame * MainFrame = ( guMainFrame * ) wxTheApp->GetTopWindow();
984
MainFrame->CreateCopyToMenu( Menu, ID_FILESYSTEM_ITEMS_COPYTO );
978
986
Menu->AppendSeparator();
1386
1394
Connect( ID_FILESYSTEM_FOLDER_PASTE, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderPaste ), NULL, this );
1387
1395
Connect( ID_FILESYSTEM_FOLDER_EDITTRACKS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderEditTracks ), NULL, this );
1388
1396
Connect( ID_FILESYSTEM_FOLDER_SAVEPLAYLIST, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderSaveToPlayList ), NULL, this );
1389
Connect( ID_FILESYSTEM_FOLDER_COPYTO, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCopyTo ), NULL, this );
1397
Connect( ID_FILESYSTEM_FOLDER_COPYTO, ID_FILESYSTEM_FOLDER_COPYTO + 199, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCopyTo ), NULL, this );
1391
1399
Connect( ID_FILESYSTEM_FOLDER_COMMANDS, ID_FILESYSTEM_FOLDER_COMMANDS + 99, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCommand ) );
1395
1403
Connect( ID_FILESYSTEM_ITEMS_ENQUEUE_ASNEXT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsEnqueueAsNext ), NULL, this );
1396
1404
Connect( ID_FILESYSTEM_ITEMS_EDITTRACKS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsEditTracks ), NULL, this );
1397
1405
Connect( ID_FILESYSTEM_ITEMS_SAVEPLAYLIST, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsSaveToPlayList ), NULL, this );
1398
Connect( ID_FILESYSTEM_ITEMS_COPYTO, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsCopyTo ), NULL, this );
1406
Connect( ID_FILESYSTEM_ITEMS_COPYTO, ID_FILESYSTEM_ITEMS_COPYTO + 199, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsCopyTo ), NULL, this );
1399
1407
Connect( ID_FILESYSTEM_ITEMS_RENAME, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsRename ), NULL, this );
1400
1408
Connect( ID_FILESYSTEM_ITEMS_DELETE, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsDelete ), NULL, this );
1401
1409
Connect( ID_FILESYSTEM_ITEMS_COPY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsCopy ), NULL, this );
1427
1435
Disconnect( ID_FILESYSTEM_FOLDER_PASTE, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderPaste ), NULL, this );
1428
1436
Disconnect( ID_FILESYSTEM_FOLDER_EDITTRACKS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderEditTracks ), NULL, this );
1429
1437
Disconnect( ID_FILESYSTEM_FOLDER_SAVEPLAYLIST, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderSaveToPlayList ), NULL, this );
1430
Disconnect( ID_FILESYSTEM_FOLDER_COPYTO, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCopyTo ), NULL, this );
1438
Disconnect( ID_FILESYSTEM_FOLDER_COPYTO, ID_FILESYSTEM_FOLDER_COPYTO + 199, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCopyTo ), NULL, this );
1432
1440
Disconnect( ID_FILESYSTEM_FOLDER_COMMANDS, ID_FILESYSTEM_FOLDER_COMMANDS + 99, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnFolderCommand ) );
1436
1444
Disconnect( ID_FILESYSTEM_ITEMS_ENQUEUE_ASNEXT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsEnqueueAsNext ), NULL, this );
1437
1445
Disconnect( ID_FILESYSTEM_ITEMS_EDITTRACKS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsEditTracks ), NULL, this );
1438
1446
Disconnect( ID_FILESYSTEM_ITEMS_SAVEPLAYLIST, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsSaveToPlayList ), NULL, this );
1439
Disconnect( ID_FILESYSTEM_ITEMS_COPYTO, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsCopyTo ), NULL, this );
1447
Disconnect( ID_FILESYSTEM_ITEMS_COPYTO, ID_FILESYSTEM_ITEMS_COPYTO + 199, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsCopyTo ), NULL, this );
1440
1448
Disconnect( ID_FILESYSTEM_ITEMS_RENAME, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsRename ), NULL, this );
1441
1449
Disconnect( ID_FILESYSTEM_ITEMS_DELETE, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( guFileBrowser::OnItemsDelete ), NULL, this );
1710
1718
if( TrackEditor->ShowModal() == wxID_OK )
1712
1720
m_Db->UpdateSongs( &Tracks );
1713
UpdateImages( Tracks, Images );
1714
UpdateLyrics( Tracks, Lyrics );
1721
guUpdateImages( Tracks, Images );
1722
guUpdateLyrics( Tracks, Lyrics );
1716
1724
// Update the track in database, playlist, etc
1717
1725
( ( guMainFrame * ) wxTheApp->GetTopWindow() )->UpdatedTracks( guUPDATED_TRACKS_PLAYER_PLAYLIST, &Tracks );
1739
1747
if( Tracks.Count() )
1741
1749
guListItems PlayLists;
1742
m_Db->GetPlayLists( &PlayLists,GUPLAYLIST_STATIC );
1750
m_Db->GetPlayLists( &PlayLists,guPLAYLIST_TYPE_STATIC );
1743
1751
guPlayListAppend * PlayListAppendDlg = new guPlayListAppend( wxTheApp->GetTopWindow(), m_Db, &TrackIds, &PlayLists );
1744
1752
if( PlayListAppendDlg->ShowModal() == wxID_OK )
1783
1791
guTrackArray * Tracks = new guTrackArray();
1784
1792
m_FilesCtrl->GetAllSongs( Tracks );
1786
event.SetId( ID_MAINFRAME_COPYTO );
1794
int Index = event.GetId() - ID_FILESYSTEM_FOLDER_COPYTO;
1798
event.SetId( ID_MAINFRAME_COPYTODEVICE_TRACKS );
1802
event.SetId( ID_MAINFRAME_COPYTO );
1804
event.SetInt( Index );
1787
1805
event.SetClientData( ( void * ) Tracks );
1788
1806
wxPostEvent( wxTheApp->GetTopWindow(), event );
1843
1861
if( TrackEditor->ShowModal() == wxID_OK )
1845
1863
m_Db->UpdateSongs( &Tracks );
1846
UpdateImages( Tracks, Images );
1847
UpdateLyrics( Tracks, Lyrics );
1864
guUpdateImages( Tracks, Images );
1865
guUpdateLyrics( Tracks, Lyrics );
1849
1867
// Update the track in database, playlist, etc
1850
1868
( ( guMainFrame * ) wxTheApp->GetTopWindow() )->UpdatedTracks( guUPDATED_TRACKS_PLAYER_PLAYLIST, &Tracks );
1872
1890
if( Tracks.Count() )
1874
1892
guListItems PlayLists;
1875
m_Db->GetPlayLists( &PlayLists,GUPLAYLIST_STATIC );
1893
m_Db->GetPlayLists( &PlayLists, guPLAYLIST_TYPE_STATIC );
1876
1894
guPlayListAppend * PlayListAppendDlg = new guPlayListAppend( wxTheApp->GetTopWindow(), m_Db, &TrackIds, &PlayLists );
1877
1895
if( PlayListAppendDlg->ShowModal() == wxID_OK )
1916
1934
guTrackArray * Tracks = new guTrackArray();
1917
1935
m_FilesCtrl->GetSelectedSongs( Tracks );
1919
event.SetId( ID_MAINFRAME_COPYTO );
1937
int Index = event.GetId() - ID_FILESYSTEM_ITEMS_COPYTO;
1941
event.SetId( ID_MAINFRAME_COPYTODEVICE_TRACKS );
1945
event.SetId( ID_MAINFRAME_COPYTO );
1947
event.SetInt( Index );
1920
1948
event.SetClientData( ( void * ) Tracks );
1921
1949
wxPostEvent( wxTheApp->GetTopWindow(), event );