OS X build fixes

This commit is contained in:
Siana Gearz
2011-07-03 14:08:50 +02:00
parent af9259e626
commit 73fd876423
10 changed files with 58 additions and 38 deletions

View File

@@ -63,12 +63,21 @@ else (WINDOWS)
set(WINDOWS_API_LIBRARIES "")
endif (WINDOWS)
if (DARWIN)
include(CMakeFindFrameworks)
find_library(APPKIT_LIBRARY AppKit)
find_library(CARBON_LIBRARY Carbon)
find_library(IOKIT_LIBRARY IOKit)
set(OSX_FILE_LIBRARIES ${APPKIT_LIBRARY} ${CARBON_LIBRARY} ${IOKIT_LIBRARY})
endif (DARWIN)
target_link_libraries(basic_plugin_filepicker
${LLPLUGIN_LIBRARIES}
${LLCOMMON_LIBRARIES}
${BASIC_PLUGIN_BASE_LIBRARIES}
${UI_LIBRARIES}
${WINDOWS_API_LIBRARIES}
${OSX_FILE_LIBRARIES}
)
add_dependencies(basic_plugin_filepicker

View File

@@ -189,16 +189,12 @@ OSStatus LLDirPicker::doNavChooseDialog()
error = NavCreateChooseFolderDialog(&mNavOptions, &doNavCallbackEvent, NULL, NULL, &navRef);
gViewerWindow->mWindow->beforeDialog();
if (error == noErr)
{
PLS_FLUSH;
error = NavDialogRun(navRef);
}
gViewerWindow->mWindow->afterDialog();
if (error == noErr)
error = NavDialogGetReply(navRef, &navReply);
@@ -232,7 +228,7 @@ BOOL LLDirPicker::getDir(std::string const& folder)
BOOL success = FALSE;
OSStatus error = noErr;
mFileName = folder;
mFileName = const_cast<std::string*>(&folder);
// mNavOptions.saveFileName

View File

@@ -761,7 +761,7 @@ Boolean LLFilePickerBase::navOpenFilterProc(AEDesc *theItem, void *info, void *c
}
else if (filter == FFLOAD_XML)
{
if (fileInfo.filetype != 'XML' &&
if (fileInfo.filetype != 'XML ' &&
(fileInfo.extension && (CFStringCompare(fileInfo.extension, CFSTR("xml"), kCFCompareCaseInsensitive) != kCFCompareEqualTo))
)
{
@@ -785,7 +785,7 @@ Boolean LLFilePickerBase::navOpenFilterProc(AEDesc *theItem, void *info, void *c
}
else if (filter == FFLOAD_RAW)
{
if (fileInfo.filetype != L'\?\?\?\?' &&
if (fileInfo.filetype != '\?\?\?\?' &&
(fileInfo.extension && (CFStringCompare(fileInfo.extension, CFSTR("raw"), kCFCompareCaseInsensitive) != kCFCompareEqualTo))
)
{
@@ -952,14 +952,14 @@ OSStatus LLFilePickerBase::doNavSaveDialog(ESaveFilter filter, std::string const
extension = CFSTR(".png");
break;
case FFSAVE_AVI:
type = L'\?\?\?\?';
creator = L'\?\?\?\?';
type = '\?\?\?\?';
creator = '\?\?\?\?';
extension = CFSTR(".mov");
break;
case FFSAVE_ANIM:
type = L'\?\?\?\?';
creator = L'\?\?\?\?';
type = '\?\?\?\?';
creator = '\?\?\?\?';
extension = CFSTR(".xaf");
break;
@@ -971,26 +971,26 @@ OSStatus LLFilePickerBase::doNavSaveDialog(ESaveFilter filter, std::string const
break;
#endif
case FFSAVE_RAW:
type = L'\?\?\?\?';
creator = L'\?\?\?\?';
type = '\?\?\?\?';
creator = '\?\?\?\?';
extension = CFSTR(".raw");
break;
case FFSAVE_J2C:
type = L'\?\?\?\?';
type = '\?\?\?\?';
creator = 'prvw';
extension = CFSTR(".j2c");
break;
case FFSAVE_ALL:
default:
type = L'\?\?\?\?';
creator = L'\?\?\?\?';
type = '\?\?\?\?';
creator = '\?\?\?\?';
extension = CFSTR("");
break;
}
NavEventUPP eventUPP = NewNavEventUPP(navSetDefaultFolderProc);
NavEventUPP eventUPP = NewNavEventUPP(NULL); //TODO: test filepicker
mFolder = folder;
// Create the dialog

View File

@@ -39,6 +39,7 @@
#ifndef LL_LLFILEPICKER_H
#define LL_LLFILEPICKER_H
#include "basic_plugin_base.h" // For PLS_INFOS etc.
#include "legacy.h"
#include <vector>
@@ -163,10 +164,10 @@ private:
#if LL_DARWIN
NavDialogCreationOptions mNavOptions;
OSStatus doNavChooseDialog(ELoadFilter filter);
OSStatus doNavSaveDialog(ESaveFilter filter, const std::string& filename);
OSStatus doNavChooseDialog(ELoadFilter filter, const std::string& folder);
OSStatus doNavSaveDialog(ESaveFilter filter, const std::string& filename, const std::string& folder);
static Boolean navOpenFilterProc(AEDesc *theItem, void *info, void *callBackUD, NavFilterModes filterMode);
static pascal void LLFilePickerBase::doNavCallbackEvent(NavEventCallbackMessage callBackSelector, NavCBRecPtr callBackParms, void* callBackUD);
static pascal void doNavCallbackEvent(NavEventCallbackMessage callBackSelector, NavCBRecPtr callBackParms, void* callBackUD);
ELoadFilter getLoadFilter(void) const { return mLoadFilter; }
std::string const& getFolder(void) const { return mFolder; }
#endif // LL_DARWIN
@@ -189,6 +190,7 @@ public:
#endif // LL_GTK
#if !LL_WINDOWS && !(LL_GTK && LL_X11)
public:
void setWindowID(unsigned long window_id) { PLS_WARNS << "Calling unimplemented LLFilePickerBase::setWindowID" << PLS_ENDL; }
#endif