X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83498ef2b0a77944b3f7f3539b7bef6387c384a0..7448d67c492d4e397e6de9d25955cab074ce6c14:/src/motif/filedlg.cpp diff --git a/src/motif/filedlg.cpp b/src/motif/filedlg.cpp index b9925678ba..490f92fb23 100644 --- a/src/motif/filedlg.cpp +++ b/src/motif/filedlg.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: filedlg.cpp +// Name: src/motif/filedlg.cpp // Purpose: wxFileDialog // Author: Julian Smart // Modified by: @@ -9,25 +9,18 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "filedlg.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#ifdef __VMS -#define XtDisplay XTDISPLAY -#define XtParent XTPARENT -#define XtWindow XTWINDOW +#include "wx/filedlg.h" + +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" + #include "wx/utils.h" + #include "wx/settings.h" #endif -#include "wx/defs.h" -#include "wx/utils.h" -#include "wx/filedlg.h" -#include "wx/intl.h" -#include "wx/app.h" -#include "wx/settings.h" #include "wx/tokenzr.h" #include "wx/stockitem.h" @@ -118,8 +111,8 @@ static wxString ParseWildCard( const wxString& wild ) wxFileDialog::wxFileDialog(wxWindow *parent, const wxString& message, const wxString& defaultDir, const wxString& defaultFileName, const wxString& wildCard, - long style, const wxPoint& pos) - :wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos) + long style, const wxPoint& pos, const wxSize& sz, const wxString& name) + :wxFileDialogBase(parent, message, defaultDir, defaultFileName, wildCard, style, pos, sz, name) { m_filterIndex = 1; } @@ -173,30 +166,31 @@ int wxFileDialog::ShowModal() Arg args[10]; int ac = 0; - wxComputeColours (dpy, & m_backgroundColour, (wxColour*) NULL); + if (m_backgroundColour.Ok()) + { + wxComputeColours (dpy, & m_backgroundColour, (wxColour*) NULL); - XtSetArg(args[ac], XmNbackground, g_itemColors[wxBACK_INDEX].pixel); ac++; - XtSetArg(args[ac], XmNtopShadowColor, g_itemColors[wxTOPS_INDEX].pixel); ac++; - XtSetArg(args[ac], XmNbottomShadowColor, g_itemColors[wxBOTS_INDEX].pixel); ac++; - XtSetArg(args[ac], XmNforeground, g_itemColors[wxFORE_INDEX].pixel); ac++; + XtSetArg(args[ac], XmNbackground, g_itemColors[wxBACK_INDEX].pixel); ac++; + XtSetArg(args[ac], XmNtopShadowColor, g_itemColors[wxTOPS_INDEX].pixel); ac++; + XtSetArg(args[ac], XmNbottomShadowColor, g_itemColors[wxBOTS_INDEX].pixel); ac++; + XtSetArg(args[ac], XmNforeground, g_itemColors[wxFORE_INDEX].pixel); ac++; + } wxFont font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT); - if ( wxFont::GetFontTag() == (WXString) XmNfontList ) - { - XtSetArg(args[ac], XmNbuttonFontList, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNlabelFontList, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNtextFontList, font.GetFontTypeC(dpy)); ac++; - } - else - { - XtSetArg(args[ac], XmNbuttonRenderTable, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNlabelRenderTable, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNtextRenderTable, font.GetFontTypeC(dpy)); ac++; - } +#if __WXMOTIF20__ && !__WXLESSTIF__ + XtSetArg(args[ac], XmNbuttonRenderTable, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNlabelRenderTable, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNtextRenderTable, font.GetFontTypeC(dpy)); ac++; +#else + XtSetArg(args[ac], XmNbuttonFontList, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNlabelFontList, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNtextFontList, font.GetFontTypeC(dpy)); ac++; +#endif Widget fileSel = XmCreateFileSelectionDialog(parentWidget, - "file_selector", args, ac); + wxMOTIF_STR("file_selector"), + args, ac); #define wxFSChild( name ) \ XmFileSelectionBoxGetChild(fileSel, name) @@ -237,7 +231,7 @@ int wxFileDialog::ShowModal() if (!m_message.IsNull()) XtVaSetValues(shell, - XmNtitle, wxConstCast(m_message.c_str(), char), + XmNtitle, (const char*)m_message.mb_str(), NULL); if (!m_wildCard.empty()) @@ -250,7 +244,7 @@ int wxFileDialog::ShowModal() else filter = wildCard; - XmTextSetString(filterWidget, wxConstCast(filter.c_str(), char)); + XmTextSetString(filterWidget, filter.char_str()); XmFileSelectionDoSearch(fileSel, NULL); } @@ -278,8 +272,7 @@ int wxFileDialog::ShowModal() if (!entirePath.empty()) { - XmTextSetString(selectionWidget, - wxConstCast(entirePath.c_str(), char)); + XmTextSetString(selectionWidget, entirePath.char_str()); } XtAddCallback(fileSel, XmNcancelCallback,