C# Class Kimono.KRun

Inheritance: Qyoto.QObject, IDisposable
ファイルを表示 Open project: 0xd34df00d/Qross

Public Methods

Method Description
Abort ( ) : void Abort this KRun. This kills any jobs launched by it, and leads to deletion if auto-deletion is on. This is much safer than deleting the KRun (in case it's currently showing an error dialog box, for instance)
AutoDelete ( ) : bool Checks whether auto delete is activated. Auto-deletion causes the KRun instance to delete itself when it finished its task. By default auto deletion is on.
BinaryName ( string execLine, bool removePath ) : string Given a full command line (e.g. the Exec= line from a .desktop file), extract the name of the binary being run. name="execLine" the full command line name="removePath" if true, remove a (relative or absolute) path. E.g. /usr/bin/ls becomes ls.
CheckStartupNotify ( string binName, Kimono.KService service, bool &silent_arg, Qyoto.QByteArray wmclass_arg ) : bool
DisplayOpenWithDialog ( List lst, QWidget window ) : bool
DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles ) : bool
DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles, string suggestedFileName ) : bool
DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles, string suggestedFileName, Qyoto.QByteArray asn ) : bool Display the Open-With dialog for those URLs, and run the chosen application. name="lst" the list of applications to run name="window" The top-level widget of the app that invoked this object. name="tempFiles" if true and lst are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
Dispose ( ) : void
HasError ( ) : bool Returns true if the KRun instance has an error.
HasFinished ( ) : bool Returns true if the KRun instance has finished.
IsExecutable ( string serviceType ) : bool Returns whether serviceType refers to an executable program instead of a data file.
IsExecutableFile ( Kimono.KUrl url, string mimetype ) : bool Returns whether the url of mimetype is executable. To be executable the file must pass the following rules: -# Must reside on the local filesystem. -# Must be marked as executable for the user by the filesystem. -# The mime type must inherit application/x-executable or application/x-executable-script. To allow a script to run when the above rules are satisfied add the entry @code X-KDE-IsAlso=application/x-executable-script @endcode to the mimetype's desktop file.
KRun ( Kimono.KUrl url, QWidget window ) : System
KRun ( Kimono.KUrl url, QWidget window, long mode ) : System
KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile ) : System
KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile, bool showProgressInfo ) : System
KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile, bool showProgressInfo, Qyoto.QByteArray asn ) : System name="url" the URL of the file or directory to 'run' name="window" The top-level widget of the app that invoked this object. It is used to make sure private information like passwords are properly handled per application. name="mode" The st_mode field of struct stat. If you don't know this set it to 0. name="isLocalFile" If this parameter is set to false then url is examined to find out whether it is a local URL or not. This flag is just used to improve speed, since the function KUrl.IsLocalFile is a bit slow. name="showProgressInfo" Whether to show progress information when determining the type of the file (i.e. when using KIO.Stat and KIO.Mimetype) Before you set this to false to avoid a dialog box, think about a very slow FTP server... It is always better to provide progress info in such cases. name="asn" Application startup notification id, if available (otherwise "").
ProcessDesktopExec ( Kimono.KService _service, List _urls ) : List
ProcessDesktopExec ( Kimono.KService _service, List _urls, bool tempFiles ) : List
ProcessDesktopExec ( Kimono.KService _service, List _urls, bool tempFiles, string suggestedFileName ) : List Processes a Exec= line as found in .desktop files. name="_service" the service to extract information from. name="_urls" The urls the service should open. name="tempFiles" if true and urls are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName
Run ( Kimono.KService service, List urls, QWidget window ) : bool
Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles ) : bool
Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles, string suggestedFileName ) : bool
Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles, string suggestedFileName, Qyoto.QByteArray asn ) : bool Open a list of URLs with a certain service (application). name="service" the service to run name="urls" the list of URLs, can be empty (app launched without argument) name="window" The top-level widget of the app that invoked this object. name="tempFiles" if true and urls are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
Run ( string exec, List urls, QWidget window ) : bool
Run ( string exec, List urls, QWidget window, string name ) : bool
Run ( string exec, List urls, QWidget window, string name, string icon ) : bool
Run ( string exec, List urls, QWidget window, string name, string icon, Qyoto.QByteArray asn ) : bool Open a list of URLs with. name="exec" the name of the executable, for example "/usr/bin/netscape". name="urls" the list of URLs to open, can be empty (app launched without argument) name="window" The top-level widget of the app that invoked this object. name="name" the logical name of the application, for example "Netscape 4.06". name="icon" the icon which should be used by the application. name="asn" Application startup notification id, if any (otherwise "").
RunCommand ( string cmd, QWidget window ) : bool Run the given shell command and notifies kicker of the starting of the application. If the program to be called doesn't exist, an error box will be displayed. Use only when you know the full command line. Otherwise use the other static methods, or KRun's constructor. cmd must be a shell command. You must not append "&" to it, since the function will do that for you. name="window" The top-level widget of the app that invoked this object.
RunCommand ( string cmd, string execName, string icon, QWidget window ) : bool
RunCommand ( string cmd, string execName, string icon, QWidget window, Qyoto.QByteArray asn ) : bool Same as the other runCommand(), but it also takes the name of the binary, to display an error message in case it couldn't find it. name="cmd" must be a shell command. You must not append "&" to it, since the function will do that for you. name="execName" the name of the executable name="icon" icon for app starting notification name="window" The top-level widget of the app that invoked this object. name="asn" Application startup notification id, if any (otherwise "").
RunUrl ( Kimono.KUrl url, string mimetype, QWidget window ) : bool
RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile ) : bool
RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables ) : bool
RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables, string suggestedFileName ) : bool
RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables, string suggestedFileName, Qyoto.QByteArray asn ) : bool Open the given URL. This function is used after the mime type is found out. It will search for all services which can handle the mime type and call run() afterwards. name="url" the URL to open name="mimetype" the mime type of the resource name="window" The top-level widget of the app that invoked this object. name="tempFile" if true and url is a local file, it will be deleted when the launched application exits. name="runExecutables" if false then local .desktop files, executables and shell scripts will not be run. See also isExecutable(). name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
SetAutoDelete ( bool b ) : void Enables or disabled auto deletion. Auto deletion causes the KRun instance to delete itself when it finished its task. If you allocate the KRun object on the stack you must disable auto deletion. By default auto deletion is on. name="b" true to enable auto deletion, false to disable
SetEnableExternalBrowser ( bool b ) : void Sets whether the external webbrowser setting should be honoured. This is enabled by default. This should only be disabled in webbrowser applications. name="b" whether to enable the external browser or not.
SetPreferredService ( string desktopEntryName ) : void Set the preferred service for opening this URL, after its mimetype will have been found by KRun. IMPORTANT: the service is only used if its configuration says it can handle this mimetype. This is used for instance for the X-KDE-LastOpenedWith key, for the recent documents list. name="desktopEntryName" the desktopEntryName of the service, e.g. "kate".
SetRunExecutables ( bool b ) : void Sets whether executables, .desktop files or shell scripts should be run by KRun. This is enabled by default. name="b" whether to run executable files or not.
SetSuggestedFileName ( string fileName ) : void Sets the file name to use in the case of downloading the file to a tempfile in order to give to a non-url-aware application. Some apps rely on the extension to determine the mimetype of the file. Usually the file name comes from the URL, but in the case of the HTTP Content-Disposition header, we need to override the file name.
SuggestedFileName ( ) : string Suggested file name given by the server (e.g. HTTP content-disposition)

Protected Methods

Method Description
CreateProxy ( ) : void
IsDirectory ( ) : bool Returns whether it is a directory.
IsLocalFile ( ) : bool Returns whether it is a local file.
Job ( ) : KIO.Job Returns the job.
KRun ( Type dummy ) : System
Mode ( ) : long Returns the file mode.
ProgressInfo ( ) : bool Returns whether progress information are shown.
SetError ( bool error ) : void Sets whether an error has occurred.
SetFinished ( bool finished ) : void Marks this 'KRun' instance as finished.
SetIsLocalFile ( bool isLocalFile ) : void Sets whether it is a local file.
SetJob ( KIO job ) : void Sets the job.
SetMode ( long mode ) : void Sets the file mode.
SetProgressInfo ( bool progressInfo ) : void Sets whether progress information shall be shown.
SetUrl ( Kimono.KUrl url ) : void Sets the url.
Timer ( ) : QTimer Returns the timer object.
Url ( ) : Kimono.KUrl Returns the url.

Private Methods

Method Description
FoundMimeType ( string type ) : void
Init ( ) : void
KRun ( ) : System
KillJob ( ) : void
MimeTypeDetermined ( string mimeType ) : void
ScanFile ( ) : void
SlotScanFinished ( Kimono.KJob arg1 ) : void
SlotScanMimeType ( KIO arg1, string type ) : void
SlotStatResult ( Kimono.KJob arg1 ) : void
SlotTimeout ( ) : void

Method Details

Abort() public method

Abort this KRun. This kills any jobs launched by it, and leads to deletion if auto-deletion is on. This is much safer than deleting the KRun (in case it's currently showing an error dialog box, for instance)
public Abort ( ) : void
return void

AutoDelete() public method

Checks whether auto delete is activated. Auto-deletion causes the KRun instance to delete itself when it finished its task. By default auto deletion is on.
public AutoDelete ( ) : bool
return bool

BinaryName() public static method

Given a full command line (e.g. the Exec= line from a .desktop file), extract the name of the binary being run. name="execLine" the full command line name="removePath" if true, remove a (relative or absolute) path. E.g. /usr/bin/ls becomes ls.
public static BinaryName ( string execLine, bool removePath ) : string
execLine string
removePath bool
return string

CheckStartupNotify() public static method

public static CheckStartupNotify ( string binName, Kimono.KService service, bool &silent_arg, Qyoto.QByteArray wmclass_arg ) : bool
binName string
service Kimono.KService
silent_arg bool
wmclass_arg Qyoto.QByteArray
return bool

CreateProxy() protected method

protected CreateProxy ( ) : void
return void

DisplayOpenWithDialog() public static method

public static DisplayOpenWithDialog ( List lst, QWidget window ) : bool
lst List
window Qyoto.QWidget
return bool

DisplayOpenWithDialog() public static method

public static DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles ) : bool
lst List
window Qyoto.QWidget
tempFiles bool
return bool

DisplayOpenWithDialog() public static method

public static DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles, string suggestedFileName ) : bool
lst List
window Qyoto.QWidget
tempFiles bool
suggestedFileName string
return bool

DisplayOpenWithDialog() public static method

Display the Open-With dialog for those URLs, and run the chosen application. name="lst" the list of applications to run name="window" The top-level widget of the app that invoked this object. name="tempFiles" if true and lst are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
public static DisplayOpenWithDialog ( List lst, QWidget window, bool tempFiles, string suggestedFileName, Qyoto.QByteArray asn ) : bool
lst List
window Qyoto.QWidget
tempFiles bool
suggestedFileName string
asn Qyoto.QByteArray
return bool

Dispose() public method

public Dispose ( ) : void
return void

HasError() public method

Returns true if the KRun instance has an error.
public HasError ( ) : bool
return bool

HasFinished() public method

Returns true if the KRun instance has finished.
public HasFinished ( ) : bool
return bool

IsDirectory() protected method

Returns whether it is a directory.
protected IsDirectory ( ) : bool
return bool

IsExecutable() public static method

Returns whether serviceType refers to an executable program instead of a data file.
public static IsExecutable ( string serviceType ) : bool
serviceType string
return bool

IsExecutableFile() public static method

Returns whether the url of mimetype is executable. To be executable the file must pass the following rules: -# Must reside on the local filesystem. -# Must be marked as executable for the user by the filesystem. -# The mime type must inherit application/x-executable or application/x-executable-script. To allow a script to run when the above rules are satisfied add the entry @code X-KDE-IsAlso=application/x-executable-script @endcode to the mimetype's desktop file.
public static IsExecutableFile ( Kimono.KUrl url, string mimetype ) : bool
url Kimono.KUrl
mimetype string
return bool

IsLocalFile() protected method

Returns whether it is a local file.
protected IsLocalFile ( ) : bool
return bool

Job() protected method

Returns the job.
protected Job ( ) : KIO.Job
return KIO.Job

KRun() public method

public KRun ( Kimono.KUrl url, QWidget window ) : System
url Kimono.KUrl
window Qyoto.QWidget
return System

KRun() public method

public KRun ( Kimono.KUrl url, QWidget window, long mode ) : System
url Kimono.KUrl
window Qyoto.QWidget
mode long
return System

KRun() public method

public KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile ) : System
url Kimono.KUrl
window Qyoto.QWidget
mode long
isLocalFile bool
return System

KRun() public method

public KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile, bool showProgressInfo ) : System
url Kimono.KUrl
window Qyoto.QWidget
mode long
isLocalFile bool
showProgressInfo bool
return System

KRun() public method

name="url" the URL of the file or directory to 'run' name="window" The top-level widget of the app that invoked this object. It is used to make sure private information like passwords are properly handled per application. name="mode" The st_mode field of struct stat. If you don't know this set it to 0. name="isLocalFile" If this parameter is set to false then url is examined to find out whether it is a local URL or not. This flag is just used to improve speed, since the function KUrl.IsLocalFile is a bit slow. name="showProgressInfo" Whether to show progress information when determining the type of the file (i.e. when using KIO.Stat and KIO.Mimetype) Before you set this to false to avoid a dialog box, think about a very slow FTP server... It is always better to provide progress info in such cases. name="asn" Application startup notification id, if available (otherwise "").
public KRun ( Kimono.KUrl url, QWidget window, long mode, bool isLocalFile, bool showProgressInfo, Qyoto.QByteArray asn ) : System
url Kimono.KUrl
window Qyoto.QWidget
mode long
isLocalFile bool
showProgressInfo bool
asn Qyoto.QByteArray
return System

KRun() protected method

protected KRun ( Type dummy ) : System
dummy System.Type
return System

Mode() protected method

Returns the file mode.
protected Mode ( ) : long
return long

ProcessDesktopExec() public static method

public static ProcessDesktopExec ( Kimono.KService _service, List _urls ) : List
_service Kimono.KService
_urls List
return List

ProcessDesktopExec() public static method

public static ProcessDesktopExec ( Kimono.KService _service, List _urls, bool tempFiles ) : List
_service Kimono.KService
_urls List
tempFiles bool
return List

ProcessDesktopExec() public static method

Processes a Exec= line as found in .desktop files. name="_service" the service to extract information from. name="_urls" The urls the service should open. name="tempFiles" if true and urls are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName
public static ProcessDesktopExec ( Kimono.KService _service, List _urls, bool tempFiles, string suggestedFileName ) : List
_service Kimono.KService
_urls List
tempFiles bool
suggestedFileName string
return List

ProgressInfo() protected method

Returns whether progress information are shown.
protected ProgressInfo ( ) : bool
return bool

Run() public static method

public static Run ( Kimono.KService service, List urls, QWidget window ) : bool
service Kimono.KService
urls List
window Qyoto.QWidget
return bool

Run() public static method

public static Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles ) : bool
service Kimono.KService
urls List
window Qyoto.QWidget
tempFiles bool
return bool

Run() public static method

public static Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles, string suggestedFileName ) : bool
service Kimono.KService
urls List
window Qyoto.QWidget
tempFiles bool
suggestedFileName string
return bool

Run() public static method

Open a list of URLs with a certain service (application). name="service" the service to run name="urls" the list of URLs, can be empty (app launched without argument) name="window" The top-level widget of the app that invoked this object. name="tempFiles" if true and urls are local files, they will be deleted when the application exits. name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
public static Run ( Kimono.KService service, List urls, QWidget window, bool tempFiles, string suggestedFileName, Qyoto.QByteArray asn ) : bool
service Kimono.KService
urls List
window Qyoto.QWidget
tempFiles bool
suggestedFileName string
asn Qyoto.QByteArray
return bool

Run() public static method

public static Run ( string exec, List urls, QWidget window ) : bool
exec string
urls List
window Qyoto.QWidget
return bool

Run() public static method

public static Run ( string exec, List urls, QWidget window, string name ) : bool
exec string
urls List
window Qyoto.QWidget
name string
return bool

Run() public static method

public static Run ( string exec, List urls, QWidget window, string name, string icon ) : bool
exec string
urls List
window Qyoto.QWidget
name string
icon string
return bool

Run() public static method

Open a list of URLs with. name="exec" the name of the executable, for example "/usr/bin/netscape". name="urls" the list of URLs to open, can be empty (app launched without argument) name="window" The top-level widget of the app that invoked this object. name="name" the logical name of the application, for example "Netscape 4.06". name="icon" the icon which should be used by the application. name="asn" Application startup notification id, if any (otherwise "").
public static Run ( string exec, List urls, QWidget window, string name, string icon, Qyoto.QByteArray asn ) : bool
exec string
urls List
window Qyoto.QWidget
name string
icon string
asn Qyoto.QByteArray
return bool

RunCommand() public static method

Run the given shell command and notifies kicker of the starting of the application. If the program to be called doesn't exist, an error box will be displayed. Use only when you know the full command line. Otherwise use the other static methods, or KRun's constructor. cmd must be a shell command. You must not append "&" to it, since the function will do that for you. name="window" The top-level widget of the app that invoked this object.
public static RunCommand ( string cmd, QWidget window ) : bool
cmd string
window Qyoto.QWidget
return bool

RunCommand() public static method

public static RunCommand ( string cmd, string execName, string icon, QWidget window ) : bool
cmd string
execName string
icon string
window Qyoto.QWidget
return bool

RunCommand() public static method

Same as the other runCommand(), but it also takes the name of the binary, to display an error message in case it couldn't find it. name="cmd" must be a shell command. You must not append "&" to it, since the function will do that for you. name="execName" the name of the executable name="icon" icon for app starting notification name="window" The top-level widget of the app that invoked this object. name="asn" Application startup notification id, if any (otherwise "").
public static RunCommand ( string cmd, string execName, string icon, QWidget window, Qyoto.QByteArray asn ) : bool
cmd string
execName string
icon string
window Qyoto.QWidget
asn Qyoto.QByteArray
return bool

RunUrl() public static method

public static RunUrl ( Kimono.KUrl url, string mimetype, QWidget window ) : bool
url Kimono.KUrl
mimetype string
window Qyoto.QWidget
return bool

RunUrl() public static method

public static RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile ) : bool
url Kimono.KUrl
mimetype string
window Qyoto.QWidget
tempFile bool
return bool

RunUrl() public static method

public static RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables ) : bool
url Kimono.KUrl
mimetype string
window Qyoto.QWidget
tempFile bool
runExecutables bool
return bool

RunUrl() public static method

public static RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables, string suggestedFileName ) : bool
url Kimono.KUrl
mimetype string
window Qyoto.QWidget
tempFile bool
runExecutables bool
suggestedFileName string
return bool

RunUrl() public static method

Open the given URL. This function is used after the mime type is found out. It will search for all services which can handle the mime type and call run() afterwards. name="url" the URL to open name="mimetype" the mime type of the resource name="window" The top-level widget of the app that invoked this object. name="tempFile" if true and url is a local file, it will be deleted when the launched application exits. name="runExecutables" if false then local .desktop files, executables and shell scripts will not be run. See also isExecutable(). name="suggestedFileName" see setSuggestedFileName name="asn" Application startup notification id, if any (otherwise "").
public static RunUrl ( Kimono.KUrl url, string mimetype, QWidget window, bool tempFile, bool runExecutables, string suggestedFileName, Qyoto.QByteArray asn ) : bool
url Kimono.KUrl
mimetype string
window Qyoto.QWidget
tempFile bool
runExecutables bool
suggestedFileName string
asn Qyoto.QByteArray
return bool

SetAutoDelete() public method

Enables or disabled auto deletion. Auto deletion causes the KRun instance to delete itself when it finished its task. If you allocate the KRun object on the stack you must disable auto deletion. By default auto deletion is on. name="b" true to enable auto deletion, false to disable
public SetAutoDelete ( bool b ) : void
b bool
return void

SetEnableExternalBrowser() public method

Sets whether the external webbrowser setting should be honoured. This is enabled by default. This should only be disabled in webbrowser applications. name="b" whether to enable the external browser or not.
public SetEnableExternalBrowser ( bool b ) : void
b bool
return void

SetError() protected method

Sets whether an error has occurred.
protected SetError ( bool error ) : void
error bool
return void

SetFinished() protected method

Marks this 'KRun' instance as finished.
protected SetFinished ( bool finished ) : void
finished bool
return void

SetIsLocalFile() protected method

Sets whether it is a local file.
protected SetIsLocalFile ( bool isLocalFile ) : void
isLocalFile bool
return void

SetJob() protected method

Sets the job.
protected SetJob ( KIO job ) : void
job KIO
return void

SetMode() protected method

Sets the file mode.
protected SetMode ( long mode ) : void
mode long
return void

SetPreferredService() public method

Set the preferred service for opening this URL, after its mimetype will have been found by KRun. IMPORTANT: the service is only used if its configuration says it can handle this mimetype. This is used for instance for the X-KDE-LastOpenedWith key, for the recent documents list. name="desktopEntryName" the desktopEntryName of the service, e.g. "kate".
public SetPreferredService ( string desktopEntryName ) : void
desktopEntryName string
return void

SetProgressInfo() protected method

Sets whether progress information shall be shown.
protected SetProgressInfo ( bool progressInfo ) : void
progressInfo bool
return void

SetRunExecutables() public method

Sets whether executables, .desktop files or shell scripts should be run by KRun. This is enabled by default. name="b" whether to run executable files or not.
public SetRunExecutables ( bool b ) : void
b bool
return void

SetSuggestedFileName() public method

Sets the file name to use in the case of downloading the file to a tempfile in order to give to a non-url-aware application. Some apps rely on the extension to determine the mimetype of the file. Usually the file name comes from the URL, but in the case of the HTTP Content-Disposition header, we need to override the file name.
public SetSuggestedFileName ( string fileName ) : void
fileName string
return void

SetUrl() protected method

Sets the url.
protected SetUrl ( Kimono.KUrl url ) : void
url Kimono.KUrl
return void

SuggestedFileName() public method

Suggested file name given by the server (e.g. HTTP content-disposition)
public SuggestedFileName ( ) : string
return string

Timer() protected method

Returns the timer object.
protected Timer ( ) : QTimer
return Qyoto.QTimer

Url() protected method

Returns the url.
protected Url ( ) : Kimono.KUrl
return Kimono.KUrl