]> git.saurik.com Git - wxWidgets.git/commitdiff
added a more convenient version of wxFileType::GetOpenCommand()
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 5 Aug 2002 18:49:38 +0000 (18:49 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 5 Aug 2002 18:49:38 +0000 (18:49 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/filetype.tex
include/wx/mimetype.h
src/common/mimecmn.cpp

index 18f91aab5a217ab4dbcbcc34bcfd10b028153d79..9c9db0fcc8ee07220f4350397b655bf6270a8197 100644 (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
 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
-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.
 
 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}}
 
-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".
 
 \membersection{wxFileType::GetMimeTypes}\label{wxfiletypegetmimetypes}
@@ -139,14 +139,14 @@ mime.types.
 
 \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
 contain the following two elements for the MIME type "text/html" (notice the
 absence of the leading dot): "html" and "htm".
 
 {\bf Windows:} This function is currently not implemented: there is no
 (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} 
 function in the first place.
 
@@ -154,7 +154,7 @@ function in the first place.
 
 \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.
 
 {\bf Unix:} MIME manager gathers information about icons from GNOME
@@ -165,7 +165,7 @@ of these desktop environments.
 
 \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
 the "text/plain" MIME type.
 
@@ -173,16 +173,25 @@ the "text/plain" MIME type.
 
 \func{bool}{GetOpenCommand}{\param{wxString*}{ command}, \param{MessageParameters\&}{ params}}
 
-If the function returns TRUE, the 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. The name of the file is
-retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters} class.
+\func{wxString}{GetOpenCommand}{\param{const wxString\&}{ filename}}
+
+With the first version of this method, if the {\tt TRUE} is returned, the
+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}
 
 \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
 order to print the file of the given type. The name of the file is
 retrieved from \helpref{MessageParameters}{wxfiletypemessageparameters} class.
index 2b7219d771b81ebd3e7aa142bfdeb88774170891..773d4a76728cd76a33f2424d59861d6feeee5ab9 100644 (file)
@@ -176,7 +176,8 @@ public:
     public:
         // ctors
         MessageParameters() { }
-        MessageParameters(const wxString& filename, const wxString& mimetype)
+        MessageParameters(const wxString& filename,
+                          const wxString& mimetype = _T(""))
             : m_filename(filename), m_mimetype(mimetype) { }
 
         // accessors (called by GetOpenCommand)
@@ -221,6 +222,9 @@ public:
         // get the command to execute the file of given type
     bool GetOpenCommand(wxString *openCmd,
                         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
     bool GetPrintCommand(wxString *printCmd,
                          const MessageParameters& params) const;
index a760575ad9c93312d2739da809716bb43ef4ac1d..ec2f6695a433db3842f6864263136b3d8fd4610c 100644 (file)
@@ -328,6 +328,18 @@ wxFileType::GetOpenCommand(wxString *openCmd,
     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
 wxFileType::GetPrintCommand(wxString *printCmd,
                             const wxFileType::MessageParameters& params) const