added a more convenient version of wxFileType::GetOpenCommand()

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2002-08-05 18:49:38 +00:00
parent 401eb3dec2
commit 0532a25881
3 changed files with 37 additions and 12 deletions

View File

@@ -7,7 +7,7 @@ object may be created in several different ways: the program might know the file
extension and wish to find out the corresponding MIME type or, conversely, it extension and wish to find out the corresponding MIME type or, conversely, it
might want to find the right extension for the file to which it writes the might want to find the right extension for the file to which it writes the
contents of given MIME type. Depending on how it was created some fields may be contents of given MIME type. Depending on how it was created some fields may be
unknown so the return value of all the accessors {\bf must} be checked: FALSE unknown so the return value of all the accessors {\bf must} be checked: {\tt FALSE}
will be returned if the corresponding information couldn't be found. will be returned if the corresponding information couldn't be found.
The objects of this class are never created by the application code but are The objects of this class are never created by the application code but are
@@ -122,7 +122,7 @@ The destructor of this class is not virtual, so it should not be derived from.
\func{bool}{GetMimeType}{\param{wxString*}{ mimeType}} \func{bool}{GetMimeType}{\param{wxString*}{ mimeType}}
If the function returns TRUE, the string pointed to by {\it mimeType} is filled If the function returns {\tt TRUE}, the string pointed to by {\it mimeType} is filled
with full MIME type specification for this file type: for example, "text/plain". with full MIME type specification for this file type: for example, "text/plain".
\membersection{wxFileType::GetMimeTypes}\label{wxfiletypegetmimetypes} \membersection{wxFileType::GetMimeTypes}\label{wxfiletypegetmimetypes}
@@ -139,14 +139,14 @@ mime.types.
\func{bool}{GetExtensions}{\param{wxArrayString\&}{ extensions}} \func{bool}{GetExtensions}{\param{wxArrayString\&}{ extensions}}
If the function returns TRUE, the array {\it extensions} is filled If the function returns {\tt TRUE}, the array {\it extensions} is filled
with all extensions associated with this file type: for example, it may with all extensions associated with this file type: for example, it may
contain the following two elements for the MIME type "text/html" (notice the contain the following two elements for the MIME type "text/html" (notice the
absence of the leading dot): "html" and "htm". absence of the leading dot): "html" and "htm".
{\bf Windows:} This function is currently not implemented: there is no {\bf Windows:} This function is currently not implemented: there is no
(efficient) way to retrieve associated extensions from the given MIME type on (efficient) way to retrieve associated extensions from the given MIME type on
this platform, so it will only return TRUE if the wxFileType object was created this platform, so it will only return {\tt TRUE} if the wxFileType object was created
by \helpref{GetFileTypeFromExtension}{wxmimetypesmanagergetfiletypefromextension} by \helpref{GetFileTypeFromExtension}{wxmimetypesmanagergetfiletypefromextension}
function in the first place. function in the first place.
@@ -154,7 +154,7 @@ function in the first place.
\func{bool}{GetIcon}{\param{wxIcon*}{ icon}} \func{bool}{GetIcon}{\param{wxIcon*}{ icon}}
If the function returns TRUE, the icon associated with this file type will be If the function returns {\tt TRUE}, the icon associated with this file type will be
created and assigned to the {\it icon} parameter. created and assigned to the {\it icon} parameter.
{\bf Unix:} MIME manager gathers information about icons from GNOME {\bf Unix:} MIME manager gathers information about icons from GNOME
@@ -165,7 +165,7 @@ of these desktop environments.
\func{bool}{GetDescription}{\param{wxString*}{ desc}} \func{bool}{GetDescription}{\param{wxString*}{ desc}}
If the function returns TRUE, the string pointed to by {\it desc} is filled If the function returns {\tt TRUE}, the string pointed to by {\it desc} is filled
with a brief description for this file type: for example, "text document" for with a brief description for this file type: for example, "text document" for
the "text/plain" MIME type. the "text/plain" MIME type.
@@ -173,16 +173,25 @@ the "text/plain" MIME type.
\func{bool}{GetOpenCommand}{\param{wxString*}{ command}, \param{MessageParameters\&}{ params}} \func{bool}{GetOpenCommand}{\param{wxString*}{ command}, \param{MessageParameters\&}{ params}}
If the function returns TRUE, the string pointed to by {\it command} is filled \func{wxString}{GetOpenCommand}{\param{const wxString\&}{ filename}}
with the command which must be executed (see \helpref{wxExecute}{wxexecute}) in
order to open the file of the given type. The name of the file is With the first version of this method, if the {\tt TRUE} is returned, the
retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters} class. string pointed to by {\it command} is filled with the command which must be
executed (see \helpref{wxExecute}{wxexecute}) in order to open the file of the
given type. In this case, the name of the file as well as any other parameters
is retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters}
class.
In the second case, only the filename is specified and the command to be used
to open this kind of file is returned directly. An empty string is returned to
indicate that an error occured (typically meaning that there is no standard way
to open this kind of files).
\membersection{wxFileType::GetPrintCommand}\label{wxfiletypegetprintcommand} \membersection{wxFileType::GetPrintCommand}\label{wxfiletypegetprintcommand}
\func{bool}{GetPrintCommand}{\param{wxString*}{ command},\param{MessageParameters\&}{ params}} \func{bool}{GetPrintCommand}{\param{wxString*}{ command},\param{MessageParameters\&}{ params}}
If the function returns TRUE, the string pointed to by {\it command} is filled If the function returns {\tt TRUE}, the string pointed to by {\it command} is filled
with the command which must be executed (see \helpref{wxExecute}{wxexecute}) in with the command which must be executed (see \helpref{wxExecute}{wxexecute}) in
order to print the file of the given type. The name of the file is order to print the file of the given type. The name of the file is
retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters} class. retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters} class.

View File

@@ -176,7 +176,8 @@ public:
public: public:
// ctors // ctors
MessageParameters() { } MessageParameters() { }
MessageParameters(const wxString& filename, const wxString& mimetype) MessageParameters(const wxString& filename,
const wxString& mimetype = _T(""))
: m_filename(filename), m_mimetype(mimetype) { } : m_filename(filename), m_mimetype(mimetype) { }
// accessors (called by GetOpenCommand) // accessors (called by GetOpenCommand)
@@ -221,6 +222,9 @@ public:
// get the command to execute the file of given type // get the command to execute the file of given type
bool GetOpenCommand(wxString *openCmd, bool GetOpenCommand(wxString *openCmd,
const MessageParameters& params) const; const MessageParameters& params) const;
// a simpler to use version of GetOpenCommand() -- it only takes the
// filename and returns an empty string on failure
wxString GetOpenCommand(const wxString& filename) const;
// get the command to print the file of given type // get the command to print the file of given type
bool GetPrintCommand(wxString *printCmd, bool GetPrintCommand(wxString *printCmd,
const MessageParameters& params) const; const MessageParameters& params) const;

View File

@@ -328,6 +328,18 @@ wxFileType::GetOpenCommand(wxString *openCmd,
return m_impl->GetOpenCommand(openCmd, params); return m_impl->GetOpenCommand(openCmd, params);
} }
wxString wxFileType::GetOpenCommand(const wxString& filename) const
{
wxString cmd;
if ( !GetOpenCommand(&cmd, filename) )
{
// return empty string to indicate an error
cmd.clear();
}
return cmd;
}
bool bool
wxFileType::GetPrintCommand(wxString *printCmd, wxFileType::GetPrintCommand(wxString *printCmd,
const wxFileType::MessageParameters& params) const const wxFileType::MessageParameters& params) const