Portability | portable (depends on GHC) |
---|---|
Stability | provisional |
Maintainer | gtk2hs-users@lists.sourceforge.net |
Object used to communicate with the application when downloading
- data Download
- data DownloadError
- data DownloadStatus
- downloadNew :: NetworkRequestClass request => request -> IO Download
- downloadStart :: DownloadClass self => self -> IO ()
- downloadCancel :: DownloadClass self => self -> IO ()
- downloadGetUri :: DownloadClass self => self -> IO (Maybe String)
- downloadGetNetworkRequest :: DownloadClass self => self -> IO NetworkRequest
- downloadGetSuggestedFilename :: DownloadClass self => self -> IO (Maybe String)
- downloadGetDestinationUri :: DownloadClass self => self -> IO (Maybe String)
- downloadGetProgress :: DownloadClass self => self -> IO Double
- downloadGetElapsedTime :: DownloadClass self => self -> IO Double
- downloadGetTotalSize :: DownloadClass self => self -> IO Int
- downloadGetCurrentSize :: DownloadClass self => self -> IO Int
- downloadGetStatus :: DownloadClass self => self -> IO DownloadStatus
- downloadSetDestinationUri :: DownloadClass self => self -> String -> IO ()
- currentSize :: DownloadClass self => ReadAttr self Int
- destinationUri :: DownloadClass self => Attr self (Maybe String)
- networkRequest :: DownloadClass self => Attr self NetworkRequest
- networkResponse :: DownloadClass self => Attr self NetworkResponse
- progress :: DownloadClass self => ReadAttr self Double
- status :: DownloadClass self => ReadAttr self DownloadStatus
- suggestedFilename :: DownloadClass self => ReadAttr self (Maybe String)
- totalSize :: DownloadClass self => ReadAttr self Int
- downloadError :: DownloadClass self => Signal self (Int -> Int -> String -> IO Bool)
Types
Enums
data DownloadError Source
data DownloadStatus Source
Constructors
downloadNew :: NetworkRequestClass request => request -> IO DownloadSource
Create a new Download
instance for the given NetworkRequest
Object used to communicate with the application when downloading.
Methods
downloadStart :: DownloadClass self => self -> IO ()Source
Initiates the Download
.
Notice that you must have set the destination-uri property before calling this function.
downloadCancel :: DownloadClass self => self -> IO ()Source
Cancels the Download
.
Retrieves the URI from Download
which is being downloaded.
downloadGetNetworkRequest :: DownloadClass self => self -> IO NetworkRequestSource
Retrieves the NetworkRequest
that backs the download process.
downloadGetSuggestedFilenameSource
:: DownloadClass self | |
=> self | |
-> IO (Maybe String) | the suggested filename or |
Retrieves the filename that was suggested by the server, or the one derived from the URI.
downloadGetDestinationUri :: DownloadClass self => self -> IO (Maybe String)Source
Obtains the URI to which the downloaded file will be written.
It is set by Application before call downloadStart
Determines the current progress of the Download
Returns the excepted total size of the download.
This is expected because the server may provide incorrect or missing Content-Length.
Notice that this may grow over time.
Returns the current already downleaded size
:: DownloadClass self | |
=> self | |
-> IO DownloadStatus | the current |
Obtains the current status of the Download
as DownloadStatus
downloadSetDestinationUriSource
Defines the URI that should be used to save the downloaded file to.
Attributes
currentSize :: DownloadClass self => ReadAttr self IntSource
The length of the data already downloaded
Default value: 0
- Since 1.1.2
destinationUri :: DownloadClass self => Attr self (Maybe String)Source
The URI of the save location for this download.
Default value: ""
- Since 1.1.2
networkRequest :: DownloadClass self => Attr self NetworkRequestSource
The NetworkRequest instance associated with the download.
- Since 1.1.2
networkResponse :: DownloadClass self => Attr self NetworkResponseSource
The NetworkResponse instance associated with the download.
- Since 1.1.16
progress :: DownloadClass self => ReadAttr self DoubleSource
Determines the current progress of the download.
Notice that, although the progress changes are reported as soon as possible,
the emission of the notify signal for this property is throttled, for the benefit of download managers.
If you care about every update, use Download
: currentSize.
Allowed values: [0,1]
Default value: 1
- Since 1.1.2
status :: DownloadClass self => ReadAttr self DownloadStatusSource
suggestedFilename :: DownloadClass self => ReadAttr self (Maybe String)Source
The file name suggested as default when saving
Default value: ""
- Since 1.1.2
totalSize :: DownloadClass self => ReadAttr self IntSource
The total size of the file
Default value: 0
- Since 1.1.2
Signals
downloadError :: DownloadClass self => Signal self (Int -> Int -> String -> IO Bool)Source
Emitted when download is interrupted either by user action or by network errors,
errorDetail will take any value of DownloadError
.
download
: the object on which the signal is emitted
errorCode
: the corresponding error code
errorDetail
: detailed error code for the error, see DownloadError
reason
: a string describing the error
Since 1.1.2