Commit 57e1951e authored by Jon Lech Johansen's avatar Jon Lech Johansen

* MacOS X changes:

    - added messages and playlist panel
    - simple dock menu (play, pause, stop)
    - context menu in video view
    - localization support: http://nanocrew.net/vlc/vlc-osx-ja.png
    - no longer broken :)
parent 9bf934af
......@@ -5,6 +5,8 @@
0.5.0
Not released yet
* MacOS X: added messages and playlist panel, dock menu, context menu
in video view and localization support.
* ./README: removed much outdated data.
* ./debian/*: great package renaming - names should make more sense now.
* ./plugins/mad/mad_libmad.c: prevent the MAD decoder from looping endlessly
......
......@@ -8163,7 +8163,7 @@ if test "${enable_macosx+set}" = set; then
if test x$enable_macosx = xyes
then
BUILTINS="${BUILTINS} macosx"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework AGL -framework QuickTime -lobjc -ObjC"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC"
fi
else
for ac_hdr in Cocoa/Cocoa.h
......@@ -8201,7 +8201,7 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
#define $ac_tr_hdr 1
EOF
BUILTINS="${BUILTINS} macosx"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework AGL -framework QuickTime -lobjc -ObjC"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC"
else
echo "$ac_t""no" 1>&6
......
......@@ -1457,11 +1457,11 @@ AC_ARG_ENABLE(macosx,
[if test x$enable_macosx = xyes
then
BUILTINS="${BUILTINS} macosx"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework AGL -framework QuickTime -lobjc -ObjC"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC"
fi],
[AC_CHECK_HEADERS(Cocoa/Cocoa.h,
BUILTINS="${BUILTINS} macosx"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework AGL -framework QuickTime -lobjc -ObjC"
macosx_LDFLAGS="${macosx_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC"
)])
dnl
......
B/* Localized versions of Info.plist keys */
......
......@@ -3,36 +3,85 @@
{CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
{
ACTIONS = {
deinterlace = id;
eject = id;
faster = id;
fullscreen = id;
loop = id;
maxvolume = id;
mute = id;
next = id;
nextChannel = id;
pause = id;
play = id;
prev = id;
prevChannel = id;
quit = id;
slower = id;
stop = id;
timesliderUpdate = id;
toggleChapter = id;
toggleLanguage = id;
toggleProgram = id;
toggleSubtitle = id;
toggleTitle = id;
volumeDown = id;
volumeUp = id;
};
CLASS = Intf_Controller;
CLASS = VLCControls;
LANGUAGE = ObjC;
OUTLETS = {o_open = id; };
SUPERCLASS = NSObject;
},
{
ACTIONS = {clearRecentItems = id; };
CLASS = VLCMain;
LANGUAGE = ObjC;
OUTLETS = {
o_pause = NSButton;
o_play = NSButton;
o_playlistds = Intf_PlaylistDS;
o_stepf = NSButton;
o_stepr = NSButton;
o_stop = NSButton;
o_time = NSTextField;
o_timeslider = NSSlider;
o_window = NSWindow;
o_controls = id;
o_dmi_pause = id;
o_dmi_play = id;
o_dmi_stop = id;
o_messages = id;
o_mi_about = id;
o_mi_bring_atf = id;
o_mi_chapter = id;
o_mi_clear = id;
o_mi_copy = id;
o_mi_cut = id;
o_mi_faster = id;
o_mi_fullscreen = id;
o_mi_hide = id;
o_mi_hide_others = id;
o_mi_language = id;
o_mi_loop = id;
o_mi_messages = id;
o_mi_minimize = id;
o_mi_mute = id;
o_mi_next = id;
o_mi_open_disc = id;
o_mi_open_file = id;
o_mi_open_net = id;
o_mi_open_quickly = id;
o_mi_open_recent = id;
o_mi_open_recent_cm = id;
o_mi_paste = id;
o_mi_pause = id;
o_mi_play = id;
o_mi_playlist = id;
o_mi_previous = id;
o_mi_program = id;
o_mi_quit = id;
o_mi_select_all = id;
o_mi_show_all = id;
o_mi_slower = id;
o_mi_stop = id;
o_mi_subtitle = id;
o_mi_title = id;
o_mi_vol_down = id;
o_mi_vol_up = id;
o_msgs_btn_ok = id;
o_msgs_panel = id;
o_mu_controls = id;
o_mu_edit = id;
o_mu_file = id;
o_mu_view = id;
o_mu_window = id;
o_playlist = id;
o_window = id;
};
SUPERCLASS = NSObject;
},
......@@ -42,34 +91,48 @@
openDiscTypeChanged = id;
openFile = id;
openNet = id;
openNetProtocol = id;
openNetModeChanged = id;
openQuickly = id;
panelCancel = id;
panelOk = id;
};
CLASS = Intf_Open;
CLASS = VLCOpen;
LANGUAGE = ObjC;
OUTLETS = {
o_disc_btn_cancel = id;
o_disc_btn_ok = id;
o_disc_chapter = id;
o_disc_device = id;
o_disc_lbl_sp = id;
o_disc_lbl_type = id;
o_disc_panel = id;
o_disc_title = id;
o_disc_type = id;
o_net_address = id;
o_net_box_addr = id;
o_net_box_mode = id;
o_net_btn_cancel = id;
o_net_btn_ok = id;
o_net_mode = id;
o_net_panel = id;
o_net_protocol = id;
o_net_server_addr = id;
o_net_server_addr_label = id;
o_net_server_port = id;
o_net_server_port_label = id;
o_net_server_pstepper = id;
o_net_port = id;
o_net_port_lbl = id;
o_net_port_stp = id;
o_playlist = id;
o_quickly_btn_cancel = id;
o_quickly_btn_ok = id;
o_quickly_panel = id;
o_quickly_source = id;
};
SUPERCLASS = NSObject;
},
{
CLASS = Intf_PlaylistDS;
CLASS = VLCPlaylist;
LANGUAGE = ObjC;
OUTLETS = {o_table = NSTableView; };
OUTLETS = {o_btn_close = id; o_panel = id; o_table_view = id; };
SUPERCLASS = NSObject;
}
},
{CLASS = VLCPlaylistView; LANGUAGE = ObjC; SUPERCLASS = NSTableView; }
);
IBVersion = 1;
}
\ No newline at end of file
......@@ -3,26 +3,22 @@
<plist version="0.9">
<dict>
<key>IBDocumentLocation</key>
<string>28 196 500 426 0 0 1152 746 </string>
<string>98 729 428 434 0 0 1600 1178 </string>
<key>IBEditorPositions</key>
<dict>
<key>235</key>
<string>401 417 350 182 0 0 1152 746 </string>
<key>29</key>
<string>367 465 262 44 0 0 1152 746 </string>
<key>445</key>
<string>347 561 370 117 0 0 1152 746 </string>
<key>460</key>
<string>84 279 104 66 0 0 1152 746 </string>
<string>642 1081 308 44 0 0 1600 1178 </string>
<key>303</key>
<string>93 566 72 114 0 0 1600 1178 </string>
</dict>
<key>IBFramework Version</key>
<string>248.0</string>
<string>263.2</string>
<key>IBOpenObjects</key>
<array>
<integer>528</integer>
<integer>29</integer>
<integer>21</integer>
</array>
<key>IBSystem Version</key>
<string>5Q125</string>
<string>5S66</string>
</dict>
</plist>
......@@ -3,42 +3,24 @@
archiveVersion = 1;
classes = {
};
objectVersion = 34;
objectVersion = 38;
objects = {
F510A6CC01738ED001A80A1F = {
isa = PBXFileReference;
name = intf_vlc_wrapper.h;
path = plugins/macosx/intf_vlc_wrapper.h;
refType = 4;
};
F510A6CD01738ED001A80A1F = {
isa = PBXFileReference;
name = intf_vlc_wrapper.m;
path = plugins/macosx/intf_vlc_wrapper.m;
refType = 4;
};
F511306E0170620B01A80A1F = {
buildStyles = (
F51130710170620B01A80A1F,
);
isa = PBXProject;
mainGroup = F511306F0170620B01A80A1F;
productRefGroup = F511306F0170620B01A80A1F;
projectDirPath = "";
targets = (
F52EEB23017E3F0701A80A1F,
);
014CEA410018CDE011CA2923 = {
isa = PBXBundleReference;
path = vlc.bundle;
refType = 3;
};
F511306F0170620B01A80A1F = {
children = (
F5121224017062C501A80A1F,
F5121225017062C501A80A1F,
F52EEB22017E3F0701A80A1F,
014CEA420018CDE011CA2923 = {
buildRules = (
);
isa = PBXGroup;
refType = 4;
buildSettings = {
COPY_PHASE_STRIP = NO;
OPTIMIZATION_CFLAGS = "-O0";
};
isa = PBXBuildStyle;
name = Development;
};
F51130710170620B01A80A1F = {
014CEA430018CDE011CA2923 = {
buildRules = (
);
buildSettings = {
......@@ -47,145 +29,69 @@
isa = PBXBuildStyle;
name = Deployment;
};
F51212220170627901A80A1F = {
children = (
F51212230170627901A80A1F,
//010
//011
//012
//013
//014
//080
//081
//082
//083
//084
089C1669FE841209C02AAC07 = {
buildStyles = (
014CEA420018CDE011CA2923,
014CEA430018CDE011CA2923,
);
isa = PBXProject;
mainGroup = 089C166AFE841209C02AAC07;
projectDirPath = "";
targets = (
089C1673FE841209C02AAC07,
);
isa = PBXVariantGroup;
name = MainMenu.nib;
path = "";
refType = 4;
};
F51212230170627901A80A1F = {
isa = PBXFileReference;
name = English;
path = English.lproj/MainMenu.nib;
refType = 4;
};
F5121224017062C501A80A1F = {
089C166AFE841209C02AAC07 = {
children = (
F512122B0170635601A80A1F,
F512122C0170635601A80A1F,
F512122D0170635601A80A1F,
F51212300170635601A80A1F,
F51212310170635601A80A1F,
F51212320170635601A80A1F,
F510A6CC01738ED001A80A1F,
F510A6CD01738ED001A80A1F,
F6799746020DCC2A01A80112,
F6799747020DCC2A01A80112,
F6799748020DCC2A01A80112,
F6799749020DCC2A01A80112,
F679974A020DCC2A01A80112,
F6EA76F5024171E201A80112,
F6EA76F6024171E201A80112,
F66B34EC0271A5AF01A80112,
F66B34ED0271A5AF01A80112,
08FB77AFFE84173DC02AAC07,
089C167CFE841241C02AAC07,
089C1671FE841209C02AAC07,
19C28FB8FE9D52D311CA2CBB,
);
isa = PBXGroup;
name = Files;
path = ../..;
refType = 2;
name = vlc;
refType = 4;
};
F5121225017062C501A80A1F = {
089C1671FE841209C02AAC07 = {
children = (
F51212220170627901A80A1F,
F51352740170655D01A80A1F,
F513527F0170659801A80A1F,
F51352800170659801A80A1F,
F51352810170659801A80A1F,
F51352820170659801A80A1F,
F52EEB2F017E3F8C01A80A1F,
F5C6804202B407B701B7B2C9,
F5C6804302B407B701B7B2C9,
F5C6804402B407B701B7B2C9,
F5C6804502B407B701B7B2C9,
F5C6804602B407B701B7B2C9,
F5C6804702B407B701B7B2C9,
1058C7ACFEA557BF11CA2CBB,
1058C7AEFEA557BF11CA2CBB,
);
isa = PBXGroup;
path = Resources;
refType = 2;
};
F512122B0170635601A80A1F = {
isa = PBXFileReference;
name = aout_macosx.m;
path = plugins/macosx/aout_macosx.m;
name = "Frameworks and Libraries";
refType = 4;
};
F512122C0170635601A80A1F = {
isa = PBXFileReference;
name = intf_controller.m;
path = plugins/macosx/intf_controller.m;
refType = 4;
};
F512122D0170635601A80A1F = {
isa = PBXFileReference;
name = intf_controller.h;
path = plugins/macosx/intf_controller.h;
refType = 4;
089C1672FE841209C02AAC07 = {
isa = PBXFrameworkReference;
name = Foundation.framework;
path = /System/Library/Frameworks/Foundation.framework;
refType = 0;
};
F51212300170635601A80A1F = {
isa = PBXFileReference;
name = macosx.m;
path = plugins/macosx/macosx.m;
refType = 4;
};
F51212310170635601A80A1F = {
isa = PBXFileReference;
name = macosx.h;
path = plugins/macosx/macosx.h;
refType = 4;
};
F51212320170635601A80A1F = {
isa = PBXFileReference;
name = vout_macosx.m;
path = plugins/macosx/vout_macosx.m;
refType = 4;
};
F51352740170655D01A80A1F = {
isa = PBXFileReference;
path = pause.png;
refType = 4;
};
F513527F0170659801A80A1F = {
isa = PBXFileReference;
path = play.png;
refType = 4;
};
F51352800170659801A80A1F = {
isa = PBXFileReference;
path = stepf.png;
refType = 4;
};
F51352810170659801A80A1F = {
isa = PBXFileReference;
path = stepr.png;
refType = 4;
};
F51352820170659801A80A1F = {
isa = PBXFileReference;
path = stop.png;
refType = 4;
};
F52EEB22017E3F0701A80A1F = {
isa = PBXBundleReference;
path = vlc.bundle;
refType = 3;
};
F52EEB23017E3F0701A80A1F = {
089C1673FE841209C02AAC07 = {
buildPhases = (
F52EEB24017E3F0701A80A1F,
F52EEB25017E3F0701A80A1F,
F52EEB2C017E3F0701A80A1F,
F52EEB2D017E3F0701A80A1F,
F52EEB2E017E3F0701A80A1F,
089C1674FE841209C02AAC07,
089C1675FE841209C02AAC07,
089C1676FE841209C02AAC07,
089C1677FE841209C02AAC07,
089C1679FE841209C02AAC07,
);
buildSettings = {
DEBUGGING_SYMBOLS = NO;
OPTIMIZATION_CFLAGS = "-O3";
FRAMEWORK_SEARCH_PATHS = "";
HEADER_SEARCH_PATHS = "";
INSTALL_PATH = "$(HOME)/Library/Bundles";
LIBRARY_SEARCH_PATHS = "";
OTHER_CFLAGS = "";
OTHER_LDFLAGS = "-bundle -undefined suppress";
OTHER_LDFLAGS = "";
OTHER_REZFLAGS = "";
PRODUCT_NAME = vlc;
SECTORDER_FLAGS = "";
......@@ -196,9 +102,9 @@
);
isa = PBXBundleTarget;
name = vlc;
productInstallPath = "$(USER_LIBRARY_DIR)/Bundles";
productName = vlc.app;
productReference = F52EEB22017E3F0701A80A1F;
productInstallPath = "$(HOME)/Library/Bundles";
productName = vlc;
productReference = 014CEA410018CDE011CA2923;
productSettingsXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<!DOCTYPE plist SYSTEM \"file://localhost/System/Library/DTDs/PropertyList.dtd\">
<plist version=\"0.9\">
......@@ -213,7 +119,7 @@
<string>vob</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>vlc.icns</string>
<string>generic.icns</string>
<key>CFBundleTypeName</key>
<string>VOB File (DVD Video)</string>
<key>CFBundleTypeRole</key>
......@@ -226,7 +132,7 @@
<string>mpeg</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>vlc.icns</string>
<string>mpeg.icns</string>
<key>CFBundleTypeName</key>
<string>MPEG File</string>
<key>CFBundleTypeRole</key>
......@@ -240,7 +146,7 @@
<key>CFBundleTypeIconFile</key>
<string>divx.icns</string>
<key>CFBundleTypeName</key>
<string>DivX File</string>
<string>DivX file</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
......@@ -268,261 +174,314 @@
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>mp4</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>mpeg4.icns</string>
<key>CFBundleTypeName</key>
<string>MPEG-4 File</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
</array>
<key>CFBundleExecutable</key>
<string>vlc</string>
<key>CFBundleGetInfoString</key>
<string>VideoLAN Client, © 1996-2002 VideoLAN project</string>
<key>CFBundleIconFile</key>
<string>vlc.icns</string>
<key>CFBundleIdentifier</key>
<string>org.videolan.vlc</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>vlc</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.4.2</string>
<string>BNDL</string>
<key>CFBundleSignature</key>
<string>VLC#</string>
<key>CFBundleVersion</key>
<string>0.4.2</string>
<string>0.5.0</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<string>VLCApplication</string>
</dict>
</plist>
";
shouldUseHeadermap = 0;
shouldUseHeadermap = 1;
};
F52EEB24017E3F0701A80A1F = {
089C1674FE841209C02AAC07 = {
buildActionMask = 2147483647;
files = (
);
isa = PBXHeadersBuildPhase;
name = Headers;
};
F52EEB25017E3F0701A80A1F = {
089C1675FE841209C02AAC07 = {
buildActionMask = 2147483647;
files = (
F52EEB26017E3F0701A80A1F,
F52EEB27017E3F0701A80A1F,
F52EEB28017E3F0701A80A1F,
F52EEB29017E3F0701A80A1F,
F52EEB2A017E3F0701A80A1F,
F52EEB2B017E3F0701A80A1F,
F52EEB30017E3F8C01A80A1F,
F5C6804802B407B701B7B2C9,
F5C6804902B407B701B7B2C9,
F5C6804A02B407B701B7B2C9,
F5C6804B02B407B701B7B2C9,
F5C6804C02B407B701B7B2C9,
F5C6804D02B407B701B7B2C9,
F74F13E002C2A53401EE194C,
F74F13EC02C2A79C01EE194C,
F6E4F91002D2648B01A80112,
F6E4F91102D2648B01A80112,
F6E4F91202D2648B01A80112,
F6E4F91302D2648B01A80112,
F6E4F91402D2648B01A80112,
F6E4F91502D2648B01A80112,
F69B0CA802E24F6401A80112,
);
isa = PBXResourcesBuildPhase;
name = "Bundle Resources";
};
F52EEB26017E3F0701A80A1F = {
fileRef = F51212220170627901A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB27017E3F0701A80A1F = {
fileRef = F51352740170655D01A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB28017E3F0701A80A1F = {
fileRef = F513527F0170659801A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB29017E3F0701A80A1F = {
fileRef = F51352800170659801A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB2A017E3F0701A80A1F = {
fileRef = F51352810170659801A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB2B017E3F0701A80A1F = {
fileRef = F51352820170659801A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F52EEB2C017E3F0701A80A1F = {
089C1676FE841209C02AAC07 = {
buildActionMask = 2147483647;
files = (
);
isa = PBXSourcesBuildPhase;
name = Sources;
};
F52EEB2D017E3F0701A80A1F = {
089C1677FE841209C02AAC07 = {
buildActionMask = 2147483647;
files = (
1058C7AFFEA557BF11CA2CBB,
);
isa = PBXFrameworksBuildPhase;
name = "Frameworks & Libraries";
};
F52EEB2E017E3F0701A80A1F = {
089C1679FE841209C02AAC07 = {
buildActionMask = 2147483647;
files = (
);
isa = PBXRezBuildPhase;
name = "ResourceManager Resources";
};
F52EEB2F017E3F8C01A80A1F = {
089C167CFE841241C02AAC07 = {
children = (
F74F13EA02C2A79C01EE194C,
F74F13DF02C2A53401EE194C,
F6E4F90A02D2648B01A80112,
F6E4F90B02D2648B01A80112,
F6E4F90C02D2648B01A80112,
F6E4F90D02D2648B01A80112,
F6E4F90E02D2648B01A80112,
F6E4F90F02D2648B01A80112,
F69B0CA602E24F6401A80112,
);
isa = PBXGroup;
name = Resources;
refType = 4;
};
089C167FFE841241C02AAC07 = {
isa = PBXFrameworkReference;</