playlist.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * playlist.h: MacOS X interface module
00003  *****************************************************************************
00004  * Copyright (C) 2002-2006 the VideoLAN team
00005  * $Id: 96cee08f15b3f482fe5d709d0413bc106f0c0a85 $
00006  *
00007  * Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
00008  *          Derk-Jan Hartman <hartman at videolan dot org>
00009  *
00010  * This program is free software; you can redistribute it and/or modify
00011  * it under the terms of the GNU General Public License as published by
00012  * the Free Software Foundation; either version 2 of the License, or
00013  * (at your option) any later version.
00014  *
00015  * This program is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018  * GNU General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU General Public License
00021  * along with this program; if not, write to the Free Software
00022  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
00023  *****************************************************************************/
00024 
00025 /*****************************************************************************
00026  * VLCPlaylistView interface
00027  *****************************************************************************/
00028 @interface VLCPlaylistView : NSOutlineView
00029 {
00030 }
00031 
00032 @end
00033 
00034 /*****************************************************************************
00035  * VLCPlaylistCommon interface
00036  *****************************************************************************/
00037 @interface VLCPlaylistCommon : NSObject
00038 {
00039     IBOutlet id o_tc_name;
00040     IBOutlet id o_tc_author;
00041     IBOutlet id o_tc_duration;
00042     IBOutlet id o_outline_view;
00043 
00044     IBOutlet id o_tc_name_other;
00045     IBOutlet id o_tc_author_other;
00046     IBOutlet id o_tc_duration_other;
00047     IBOutlet id o_outline_view_other;
00048 
00049     NSMutableDictionary *o_outline_dict;
00050 }
00051 
00052 - (void)initStrings;
00053 - (playlist_item_t *)selectedPlaylistItem;
00054 - (NSOutlineView *)outlineView;
00055 - (void)swapPlaylists:(id)newList;
00056 @end
00057 
00058 /*****************************************************************************
00059  * VLCPlaylistWizard interface
00060  *****************************************************************************/
00061 @interface VLCPlaylistWizard : VLCPlaylistCommon
00062 {
00063 }
00064 
00065 - (IBAction)reloadOutlineView;
00066 
00067 @end
00068 
00069 /*****************************************************************************
00070  * VLCPlaylist interface
00071  *****************************************************************************/
00072 @interface VLCPlaylist : VLCPlaylistCommon
00073 {
00074     IBOutlet id o_controller;
00075     IBOutlet id o_playlist_wizard;
00076 
00077     IBOutlet id o_btn_playlist;
00078     IBOutlet id o_playlist_view;
00079     IBOutlet id o_sidebar;
00080     IBOutlet id o_status_field;
00081     IBOutlet id o_status_field_embed;
00082     IBOutlet id o_search_field;
00083     IBOutlet id o_search_field_other;
00084     IBOutlet id o_mi_save_playlist;
00085     IBOutlet id o_ctx_menu;
00086 
00087     IBOutlet id o_mi_play;
00088     IBOutlet id o_mi_delete;
00089     IBOutlet id o_mi_info;
00090     IBOutlet id o_mi_preparse;
00091     IBOutlet id o_mi_revealInFinder;
00092     IBOutlet id o_mm_mi_revealInFinder;
00093     IBOutlet id o_mi_dl_cover_art;
00094     IBOutlet id o_mi_selectall;
00095     IBOutlet id o_mi_sort_name;
00096     IBOutlet id o_mi_sort_author;
00097     IBOutlet id o_mi_recursive_expand;
00098 
00099     /* "services discovery" menu in the playlist menu */
00100     IBOutlet id o_mi_services;
00101     IBOutlet id o_mu_services;
00102 
00103     /* "services discovery" menu in the main menu */
00104     IBOutlet id o_mm_mi_services;
00105     IBOutlet id o_mm_mu_services;
00106 
00107     IBOutlet id o_save_accessory_view;
00108     IBOutlet id o_save_accessory_popup;
00109     IBOutlet id o_save_accessory_text;
00110 
00111 
00112     NSImage *o_descendingSortingImage;
00113     NSImage *o_ascendingSortingImage;
00114 
00115     NSMutableArray *o_nodes_array;
00116     NSMutableArray *o_items_array;
00117 
00118     BOOL b_selected_item_met;
00119     BOOL b_isSortDescending;
00120     id o_tc_sortColumn;
00121 
00122     /* "add node" button and menu entry */
00123     IBOutlet id o_mi_addNode;
00124     IBOutlet id o_btn_addNode;
00125 }
00126 
00127 - (void)searchfieldChanged:(NSNotification *)o_notification;
00128 - (NSMenu *)menuForEvent:(NSEvent *)o_event;
00129 
00130 - (IBAction)searchItem:(id)sender;
00131 
00132 - (void)playlistUpdated;
00133 - (void)playModeUpdated;
00134 - (void)sortNode:(int)i_mode;
00135 - (void)updateRowSelection;
00136 
00137 - (BOOL)isSelectionEmpty;
00138 
00139 - (IBAction)servicesChange:(id)sender;
00140 - (IBAction)playItem:(id)sender;
00141 - (IBAction)revealItemInFinder:(id)sender;
00142 - (IBAction)preparseItem:(id)sender;
00143 - (IBAction)downloadCoverArt:(id)sender;
00144 - (IBAction)savePlaylist:(id)sender;
00145 - (IBAction)deleteItem:(id)sender;
00146 - (IBAction)selectAll:(id)sender;
00147 - (IBAction)sortNodeByName:(id)sender;
00148 - (IBAction)sortNodeByAuthor:(id)sender;
00149 - (IBAction)recursiveExpandNode:(id)sender;
00150 
00151 - (IBAction)addNode:(id)sender;
00152 
00153 - (void)playSidebarItem:(id)item;
00154 - (id)playingItem;
00155 
00156 - (void)appendArray:(NSArray*)o_array atPos:(int)i_position enqueue:(BOOL)b_enqueue;
00157 - (void)appendNodeArray:(NSArray*)o_array inNode:(playlist_item_t *)p_node atPos:(int)i_position enqueue:(BOOL)b_enqueue;
00158 
00159 @end

Generated on Tue May 25 08:04:56 2010 for VLC by  doxygen 1.5.6