Added wxUniv project file for dialogs
Fixed filelist.txt bug Backported wxFileDialog fixes for wxUniv/MSW wxFileSystem doc fixes VC++ internal compiler error fix for statbar.cpp git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@18310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -30,8 +30,8 @@
|
||||
|
||||
#if wxUSE_FILEDLG
|
||||
|
||||
#if !defined(__UNIX__) && !defined(__DOS__)
|
||||
#error wxFileDialog currently only supports Unix and DOS
|
||||
#if !defined(__UNIX__) && !defined(__DOS__) && !defined(__WIN32__)
|
||||
#error wxFileDialog currently only supports Unix, win32 and DOS
|
||||
#endif
|
||||
|
||||
#include "wx/checkbox.h"
|
||||
@@ -76,7 +76,9 @@
|
||||
#endif
|
||||
|
||||
#include <time.h>
|
||||
#if defined(__UNIX__) || defined(__DOS__)
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// constants
|
||||
@@ -252,7 +254,7 @@ wxFileIconsTable::wxFileIconsTable() :
|
||||
|
||||
static wxBitmap CreateAntialiasedBitmap(const wxImage& img)
|
||||
{
|
||||
wxImage small(16, 16);
|
||||
wxImage smallimg (16, 16);
|
||||
unsigned char *p1, *p2, *ps;
|
||||
unsigned char mr = img.GetMaskRed(),
|
||||
mg = img.GetMaskGreen(),
|
||||
@@ -261,8 +263,8 @@ static wxBitmap CreateAntialiasedBitmap(const wxImage& img)
|
||||
unsigned x, y;
|
||||
unsigned sr, sg, sb, smask;
|
||||
|
||||
p1 = img.GetData(), p2 = img.GetData() + 3 * 32, ps = small.GetData();
|
||||
small.SetMaskColour(mr, mr, mr);
|
||||
p1 = img.GetData(), p2 = img.GetData() + 3 * 32, ps = smallimg.GetData();
|
||||
smallimg.SetMaskColour(mr, mr, mr);
|
||||
|
||||
for (y = 0; y < 16; y++)
|
||||
{
|
||||
@@ -295,7 +297,7 @@ static wxBitmap CreateAntialiasedBitmap(const wxImage& img)
|
||||
p1 += 32 * 3, p2 += 32 * 3;
|
||||
}
|
||||
|
||||
return wxBitmap(small);
|
||||
return wxBitmap(smallimg);
|
||||
}
|
||||
|
||||
// finds empty borders and return non-empty area of image:
|
||||
@@ -364,7 +366,16 @@ int wxFileIconsTable::GetIconID(const wxString& extension, const wxString& mime)
|
||||
m_HashTable.Put(extension, new wxFileIconEntry(newid));
|
||||
return newid;
|
||||
}
|
||||
#ifdef __WIN32__
|
||||
wxBitmap myBitmap (ic.GetWidth(), ic.GetHeight() ) ;
|
||||
wxMemoryDC memDC;
|
||||
memDC.SelectObject( myBitmap );
|
||||
memDC.DrawIcon(ic,0,0);
|
||||
memDC.SelectObject( wxNullBitmap );
|
||||
wxImage img = myBitmap.ConvertToImage();
|
||||
#else
|
||||
wxImage img = ic.ConvertToImage();
|
||||
#endif
|
||||
delete ft;
|
||||
|
||||
int id = m_ImageList.GetImageCount();
|
||||
@@ -396,7 +407,7 @@ int wxFileIconsTable::GetIconID(const wxString& extension, const wxString& mime)
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
static
|
||||
int ListCompare( long data1, long data2, long WXUNUSED(data) )
|
||||
int ListCompare( long data1, long data2, long WXUNUSED(data))
|
||||
{
|
||||
wxFileData *fd1 = (wxFileData*)data1 ;
|
||||
wxFileData *fd2 = (wxFileData*)data2 ;
|
||||
@@ -456,8 +467,12 @@ wxFileData::wxFileData( const wxString &name, const wxString &fname )
|
||||
// struct passwd *user = getpwuid( buff.st_uid );
|
||||
// struct group *grp = getgrgid( buff.st_gid );
|
||||
|
||||
m_isDir = S_ISDIR( buff.st_mode );
|
||||
m_isExe = ((buff.st_mode & S_IXUSR ) == S_IXUSR );
|
||||
#ifdef __VISUALC__
|
||||
m_isDir = ((buff.st_mode & _S_IFDIR ) == _S_IFDIR );
|
||||
#else
|
||||
m_isDir = S_ISDIR( buff.st_mode );
|
||||
#endif // VC++
|
||||
m_isExe = ((buff.st_mode & wxS_IXUSR ) == wxS_IXUSR );
|
||||
|
||||
m_size = buff.st_size;
|
||||
|
||||
@@ -470,9 +485,9 @@ wxFileData::wxFileData( const wxString &name, const wxString &fname )
|
||||
|
||||
char buffer[10];
|
||||
sprintf( buffer, "%c%c%c",
|
||||
((( buff.st_mode & S_IRUSR ) == S_IRUSR ) ? 'r' : '-'),
|
||||
((( buff.st_mode & S_IWUSR ) == S_IWUSR ) ? 'w' : '-'),
|
||||
((( buff.st_mode & S_IXUSR ) == S_IXUSR ) ? 'x' : '-') );
|
||||
((( buff.st_mode & wxS_IRUSR ) == wxS_IRUSR ) ? 'r' : '-'),
|
||||
((( buff.st_mode & wxS_IWUSR ) == wxS_IWUSR ) ? 'w' : '-'),
|
||||
((( buff.st_mode & wxS_IXUSR ) == wxS_IXUSR ) ? 'x' : '-') );
|
||||
#if wxUSE_UNICODE
|
||||
m_permissions = wxConvUTF8.cMB2WC( buffer );
|
||||
#else
|
||||
@@ -788,7 +803,7 @@ void wxFileCtrl::UpdateFiles()
|
||||
}
|
||||
}
|
||||
|
||||
SortItems(ListCompare, 0);
|
||||
SortItems((wxListCtrlCompare)ListCompare, 0);
|
||||
|
||||
if ( my_style & wxLC_REPORT )
|
||||
{
|
||||
@@ -851,7 +866,7 @@ void wxFileCtrl::MakeDir()
|
||||
|
||||
if (id != -1)
|
||||
{
|
||||
SortItems( ListCompare, 0 );
|
||||
SortItems( (wxListCtrlCompare) ListCompare, 0 );
|
||||
id = FindItem( 0, (long)fd );
|
||||
EnsureVisible( id );
|
||||
EditLabel( id );
|
||||
|
Reference in New Issue
Block a user