Commit 85762c9e authored by Christophe Massiot's avatar Christophe Massiot

New interface for MacOS X, courtesy of Florian G. Pflug.

parent 19d2ac07
......@@ -133,6 +133,7 @@ clean: libdvdcss-clean plugins-clean vlc-clean
rm -f src/*/*.o extras/*/*.o
rm -f lib/*.so* lib/*.a
rm -f plugins/*.so plugins/*.a
rm -rf extras/MacOSX/build
libdvdcss-clean:
-cd extras/libdvdcss && $(MAKE) clean
......@@ -279,7 +280,7 @@ snapshot-nocss: snapshot-common
libdvdcss-snapshot: snapshot-common
# Remove vlc sources and icons, doc, debian directory...
rm -Rf tmp/vlc/src tmp/vlc/share tmp/vlc/plugins tmp/vlc/doc
rm -Rf tmp/vlc/extras/GNUgetopt tmp/vlc/extras/MacOSX_app
rm -Rf tmp/vlc/extras/GNUgetopt tmp/vlc/extras/MacOSX
rm -Rf tmp/vlc/debian
# Remove useless headers
rm -f tmp/vlc/include/*
......@@ -321,13 +322,11 @@ gnome-vlc gvlc kvlc qvlc: vlc
vlc.app: Makefile.opts
ifneq (,$(findstring darwin,$(SYS)))
rm -Rf vlc.app
mkdir -p vlc.app/Contents/Resources
mkdir -p vlc.app/Contents/MacOS/lib
mkdir -p vlc.app/Contents/MacOS/share
$(INSTALL) -m 644 extras/MacOSX_app/Contents/Info.plist vlc.app/Contents/
$(INSTALL) -m 644 extras/MacOSX_app/Contents/PkgInfo vlc.app/Contents/
cd extras/MacOSX ; pbxbuild | grep -v '^ ' | grep -v '^\t'
cp -r extras/MacOSX/build/vlc.bundle ./vlc.app
$(INSTALL) -d vlc vlc.app/Contents/MacOS/share
$(INSTALL) -d vlc vlc.app/Contents/MacOS/plugins
$(INSTALL) vlc vlc.app/Contents/MacOS/
$(INSTALL) share/vlc.icns vlc.app/Contents/Resources/
ifneq (,$(PLUGINS))
$(INSTALL) $(PLUGINS:%=plugins/%.so) vlc.app/Contents/MacOS/plugins
endif
......
This diff is collapsed.
......@@ -761,16 +761,14 @@ AC_ARG_ENABLE(macosx,
[ --enable-macosx MacOS X support (default enabled on MacOS X)],
[if test x$enable_macosx = xyes
then
BUILTINS="${BUILTINS} macosx macosx_qt"
LIB_MACOSX="-framework CoreAudio -framework Carbon -framework AGL -framework QuickTime"
LIB_TS="${LIB_TS} -framework AGL -framework Carbon"
LIB_SDL="${LIB_SDL} -framework AGL -framework Carbon"
BUILTINS="${BUILTINS} macosx"
LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime"
LIB="${LIB} -ObjC"
fi],
[AC_CHECK_HEADERS(Carbon/Carbon.h,
BUILTINS="${BUILTINS} macosx macosx_qt"
LIB_MACOSX="-framework CoreAudio -framework Carbon -framework AGL -framework QuickTime"
LIB_TS="${LIB_TS} -framework AGL -framework Carbon"
LIB_SDL="${LIB_SDL} -framework AGL -framework Carbon"
[AC_CHECK_HEADERS(Cocoa/Cocoa.h,
BUILTINS="${BUILTINS} macosx"
LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime"
LIB="${LIB} -ObjC"
)])
dnl
......
B/* Localized versions of Info.plist keys */
{
IBClasses = (
{CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
{
ACTIONS = {
fullscreen_toggle = id;
pause = id;
play = id;
speedslider_update = id;
timeslider_update = id;
};
CLASS = Intf_Controller;
LANGUAGE = ObjC;
OUTLETS = {
o_currenttime = id;
o_menu_fullscreen = id;
o_outputpanel = id;
o_pause = id;
o_play = id;
o_playlistds = id;
o_qdview = id;
o_stepf = id;
o_stepr = id;
o_stop = id;
o_timeslider = id;
};
SUPERCLASS = NSObject;
},
{
CLASS = Intf_PlaylistDS;
LANGUAGE = ObjC;
OUTLETS = {o_table = id; };
SUPERCLASS = NSObject;
},
{CLASS = VlcQuickDrawView; LANGUAGE = ObjC; SUPERCLASS = NSQuickDrawView; }
);
IBVersion = 1;
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>IBDocumentLocation</key>
<string>87 157 428 240 0 0 1280 938 </string>
<key>IBFramework Version</key>
<string>219.0</string>
<key>IBMainMenuLocation</key>
<string>420 524 257 44 0 0 1280 938 </string>
<key>IBSystem Version</key>
<string>5L14</string>
<key>IBUserGuides</key>
<dict/>
</dict>
</plist>
{
IBClasses = (
{CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
{
ACTIONS = {
fullscreen_toggle = id;
pause = id;
play = id;
speedslider_update = id;
timeslider_update = id;
};
CLASS = Intf_Controller;
LANGUAGE = ObjC;
OUTLETS = {
o_currenttime = id;
o_menu_fullscreen = id;
o_outputpanel = id;
o_pause = id;
o_play = id;
o_playlistds = id;
o_qdview = id;
o_stepf = id;
o_stepr = id;
o_stop = id;
o_timeslider = id;
};
SUPERCLASS = NSObject;
},
{
CLASS = Intf_PlaylistDS;
LANGUAGE = ObjC;
OUTLETS = {o_table = id; };
SUPERCLASS = NSObject;
},
{CLASS = VlcQuickDrawView; LANGUAGE = ObjC; SUPERCLASS = NSQuickDrawView; }
);
IBVersion = 1;
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>IBDocumentLocation</key>
<string>87 157 428 240 0 0 1280 938 </string>
<key>IBFramework Version</key>
<string>219.0</string>
<key>IBMainMenuLocation</key>
<string>420 524 257 44 0 0 1280 938 </string>
<key>IBSystem Version</key>
<string>5L14</string>
<key>IBUserGuides</key>
<dict/>
</dict>
</plist>
// !$*UTF8*$!
{
F510A6CD01738ED001A80A1F = {
uiCtxt = {
sepNavWindowFrame = "{{15, 431}, {750, 502}}";
};
};
F511306E0170620B01A80A1F = {
activeBuildStyle = F51130710170620B01A80A1F;
activeTarget = F52EEB23017E3F0701A80A1F;
addToTargets = (
F52EEB23017E3F0701A80A1F,
);
breakpoints = (
);
perUserDictionary = {
PBXWorkspaceConfiguration = {
ContentSize = "{1280, 819}";
LeftSlideOut = {
ActiveTab = 0;
Frame = "{{0, 23}, {1280, 796}}";
Split0 = {
ActiveTab = 2;
Frame = "{{323, 0}, {957, 796}}";
Split0 = {
Frame = "{{0, 75}, {957, 721}}";
};
SplitCount = 1;
Tab0 = {
Debugger = {
Frame = "{{0, 0}, {484, 208}}";
Split0 = {
Frame = "{{0, 25}, {484, 183}}";
Split0 = {
Frame = "{{0, 0}, {236, 183}}";
};
Split1 = {
Frame = "{{245, 0}, {239, 183}}";
};
SplitCount = 2;
};
SplitCount = 1;
Tab0 = {
Frame = "{{0, 0}, {100, 50}}";
};
Tab1 = {
Frame = "{{0, 0}, {100, 50}}";
};
TabCount = 2;
};
Frame = "{{0, 0}, {484, 208}}";
LauncherConfigVersion = 4;
};
Tab1 = {
Frame = "{{0, 0}, {484, 208}}";
LauncherConfigVersion = 3;
Runner = {
Frame = "{{0, 0}, {484, 208}}";
};
};
Tab2 = {
BuildMessageFrame = "{{0, 0}, {959, 43}}";
BuildTranscriptFrame = "{{0, 52}, {959, 0}}";
Frame = "{{0, 0}, {957, 50}}";
};
Tab3 = {
Frame = "{{0, 0}, {612, 295}}";
};
TabCount = 4;
};
SplitCount = 1;
Tab0 = {
Frame = "{{0, 0}, {298, 796}}";
};
Tab1 = {
ClassesFrame = "{{0, 0}, {202, 56}}";
Frame = "{{0, 0}, {200, 100}}";
MembersFrame = "{{0, 65}, {202, 35}}";
OptionsSetName = "Hierarchy, all classes";
};
Tab2 = {
Frame = "{{0, 0}, {200, 100}}";
};
Tab3 = {
Frame = "{{0, 0}, {200, 718}}";
Split0 = {
Frame = "{{0, 0}, {200, 349}}";
};
Split1 = {
Frame = "{{0, 358}, {200, 360}}";
};
SplitCount = 2;
};
Tab4 = {
Frame = "{{0, 0}, {250, 781}}";
};
TabCount = 5;
};
};
};
wantsIndex = 1;
wantsSCM = 0;
};
F52EEB23017E3F0701A80A1F = {
activeExec = 0;
customExecs = {
};
};
}
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 34;
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.c;
path = plugins/macosx/intf_vlc_wrapper.c;
refType = 4;
};
F511306E0170620B01A80A1F = {
buildStyles = (
F51130710170620B01A80A1F,
);
isa = PBXProject;
mainGroup = F511306F0170620B01A80A1F;
productRefGroup = F511306F0170620B01A80A1F;
projectDirPath = "";
targets = (
F52EEB23017E3F0701A80A1F,
);
};
F511306F0170620B01A80A1F = {
children = (
F5121224017062C501A80A1F,
F5121225017062C501A80A1F,
F52EEB22017E3F0701A80A1F,
);
isa = PBXGroup;
refType = 4;
};
F51130710170620B01A80A1F = {
buildRules = (
);
buildSettings = {
COPY_PHASE_STRIP = YES;
};
isa = PBXBuildStyle;
name = Deployment;
};
F51212220170627901A80A1F = {
children = (
F51212230170627901A80A1F,
);
isa = PBXVariantGroup;
name = MainMenu.nib;
path = "";
refType = 4;
};
F51212230170627901A80A1F = {
isa = PBXFileReference;
name = English;
path = English.lproj/MainMenu.nib;
refType = 4;
};
F5121224017062C501A80A1F = {
children = (
F512122B0170635601A80A1F,
F512122C0170635601A80A1F,
F512122D0170635601A80A1F,
F512122F0170635601A80A1F,
F51212300170635601A80A1F,
F51212310170635601A80A1F,
F51212320170635601A80A1F,
F510A6CC01738ED001A80A1F,
F510A6CD01738ED001A80A1F,
F53A3B49018DECF201A80A1F,
F53A3B4A018DECF201A80A1F,
);
isa = PBXGroup;
name = Files;
path = ../..;
refType = 2;
};
F5121225017062C501A80A1F = {
children = (
F51212220170627901A80A1F,
F51352740170655D01A80A1F,
F513527F0170659801A80A1F,
F51352800170659801A80A1F,
F51352810170659801A80A1F,
F51352820170659801A80A1F,
F52EEB2F017E3F8C01A80A1F,
);
isa = PBXGroup;
path = Resources;
refType = 2;
};
F512122B0170635601A80A1F = {
isa = PBXFileReference;
name = aout_macosx.c;
path = plugins/macosx/aout_macosx.c;
refType = 4;
};
F512122C0170635601A80A1F = {
isa = PBXFileReference;
name = intf_controller.c;
path = plugins/macosx/intf_controller.c;
refType = 4;
};
F512122D0170635601A80A1F = {
isa = PBXFileReference;
name = intf_controller.h;
path = plugins/macosx/intf_controller.h;
refType = 4;
};
F512122F0170635601A80A1F = {
isa = PBXFileReference;
name = intf_main.c;
path = plugins/macosx/intf_main.c;
refType = 4;
};
F51212300170635601A80A1F = {
isa = PBXFileReference;
name = macosx.c;
path = plugins/macosx/macosx.c;
refType = 4;
};
F51212310170635601A80A1F = {
isa = PBXFileReference;
name = macosx.h;
path = plugins/macosx/macosx.h;
refType = 4;
};
F51212320170635601A80A1F = {
isa = PBXFileReference;
name = vout_macosx.c;
path = plugins/macosx/vout_macosx.c;
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 = {
buildPhases = (
F52EEB24017E3F0701A80A1F,
F52EEB25017E3F0701A80A1F,
F52EEB2C017E3F0701A80A1F,
F52EEB2D017E3F0701A80A1F,
F52EEB2E017E3F0701A80A1F,
);
buildSettings = {
DEBUGGING_SYMBOLS = NO;
OPTIMIZATION_CFLAGS = "-O3";
OTHER_CFLAGS = "";
OTHER_LDFLAGS = "-bundle -undefined suppress";
OTHER_REZFLAGS = "";
PRODUCT_NAME = vlc;
SECTORDER_FLAGS = "";
WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas";
WRAPPER_EXTENSION = bundle;
};
dependencies = (
);
isa = PBXBundleTarget;
name = vlc;
productInstallPath = "$(USER_LIBRARY_DIR)/Bundles";
productName = vlc.app;
productReference = F52EEB22017E3F0701A80A1F;
productSettingsXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<!DOCTYPE plist SYSTEM \"file://localhost/System/Library/DTDs/PropertyList.dtd\">
<plist version=\"0.9\">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>VOB</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>vlc.icns</string>
<key>CFBundleTypeName</key>
<string>VOB File (DVD)</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
</array>
<key>CFBundleExecutable</key>
<string>vlc</string>
<key>CFBundleGetInfoString</key>
<string>VideoLan Client</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>vlc 0.2.90</string>
<key>CFBundleVersion</key>
<string>0.2.90</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>
";
shouldUseHeadermap = 0;
};
F52EEB24017E3F0701A80A1F = {
buildActionMask = 2147483647;
files = (
);
isa = PBXHeadersBuildPhase;
name = Headers;
};
F52EEB25017E3F0701A80A1F = {
buildActionMask = 2147483647;
files = (
F52EEB26017E3F0701A80A1F,
F52EEB27017E3F0701A80A1F,
F52EEB28017E3F0701A80A1F,
F52EEB29017E3F0701A80A1F,
F52EEB2A017E3F0701A80A1F,
F52EEB2B017E3F0701A80A1F,
F52EEB30017E3F8C01A80A1F,
);
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 = {
buildActionMask = 2147483647;
files = (
);
isa = PBXSourcesBuildPhase;
name = Sources;
};
F52EEB2D017E3F0701A80A1F = {
buildActionMask = 2147483647;
files = (
);
isa = PBXFrameworksBuildPhase;
name = "Frameworks & Libraries";
};
F52EEB2E017E3F0701A80A1F = {
buildActionMask = 2147483647;
files = (
);
isa = PBXRezBuildPhase;
name = "ResourceManager Resources";
};
F52EEB2F017E3F8C01A80A1F = {
isa = PBXFileReference;
path = vlc.icns;
refType = 4;
};
F52EEB30017E3F8C01A80A1F = {
fileRef = F52EEB2F017E3F8C01A80A1F;
isa = PBXBuildFile;
settings = {
};
};
F53A3B49018DECF201A80A1F = {
isa = PBXFileReference;
name = intf_qdview.h;