Add support for returning item location to wxGTK wxMimeTypesManager.

This is a squash merge of gtk_mimetype branch from
https://github.com/Hanmac/wxWidgets.git with some extra minor cleanup.

Closes https://github.com/wxWidgets/wxWidgets/pull/293
This commit is contained in:
Vadim Zeitlin
2016-06-07 14:27:10 +02:00
parent 5f01172165
commit 4dfde501df
8 changed files with 107 additions and 3 deletions

32
include/wx/gtk/mimetype.h Normal file
View File

@@ -0,0 +1,32 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/gtk/mimetype.h
// Purpose: classes and functions to manage MIME types
// Author: Hans Mackowiak
// Created: 2016-06-05
// Copyright: (c) 2016 Hans Mackowiak <hanmac@gmx.de>
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GTK_MIMETYPE_IMPL_H
#define _WX_GTK_MIMETYPE_IMPL_H
#include "wx/unix/mimetype.h"
#if wxUSE_MIMETYPE
class WXDLLIMPEXP_CORE wxGTKMimeTypesManagerImpl : public wxMimeTypesManagerImpl
{
protected:
wxString GetIconFromMimeType(const wxString& mime) wxOVERRIDE;
};
class WXDLLIMPEXP_CORE wxGTKMimeTypesManagerFactory : public wxMimeTypesManagerFactory
{
public:
wxMimeTypesManagerImpl *CreateMimeTypesManagerImpl() wxOVERRIDE;
};
#endif // wxUSE_MIMETYPE
#endif // _WX_GTK_MIMETYPE_IMPL_H

View File

@@ -19,7 +19,7 @@ class wxGtkObject
{
public:
explicit wxGtkObject(T *p) : m_ptr(p) { }
~wxGtkObject() { g_object_unref(m_ptr); }
~wxGtkObject() { if ( m_ptr ) g_object_unref(m_ptr); }
operator T *() const { return m_ptr; }

View File

@@ -99,6 +99,8 @@ protected:
const wxArrayString& strExtensions,
const wxString& strDesc);
virtual wxString GetIconFromMimeType(const wxString& mime);
// give it access to m_aXXX variables
friend class WXDLLIMPEXP_FWD_BASE wxFileTypeImpl;
};