Opened 9 years ago

Closed 9 years ago

#45 closed task (fixed)

Port QDesktopServices

Reported by: dmik Owned by:
Priority: major Milestone: Qt GA
Component: QtGui Version: 4.5.1 Beta 1
Severity: low Keywords:
Cc:

Description

Provide the OS/2 version of the QDesktopServices class.

Change History (2)

comment:1 Changed 9 years ago by dmik

  • Milestone changed from QtGui Beta to Qt GA

Created the dummy implementation in r132. The real functionality (things like opening URLs) is irrelevant for the beta.

comment:2 Changed 9 years ago by dmik

  • Resolution set to fixed
  • Severity set to low
  • Status changed from new to closed

Implemented in r486. Below are some remarks about the implementation.

In the absence of the native guidelines, locations in the DesktopServices::storageLocation() call that don't have de facto standard values on the OS/2 platform, are interpreted according to the XDG guidelines (used on Linux). The following table summarizes it (parenthesis contain the default if the value isn't explicitly specified):

location value
HomeLocation? QDir::homePath()
TempLocation? QDir::tempPath()
CacheLocation? %XDG_CACHE_HOME% (%HOME%/.cache) [*1]
DataLocation? %XDG_DATA_HOME% (%HOME%/.local/share) [*1]
DesktopLocation? XDG_DESKTOP_DIR [*2] (WinQueryActiveDesktopPathname?()))
DocumentsLocation? XDG_DOCUMENTS_DIR [*2] (%HOME%/Documents)
PicturesLocation? XDG_PICTURES_DIR [*2] (%HOME%/Pictures)
MusicLocation? XDG_MUSIC_DIR [*2] (%HOME%/Music)
MoviesLocation? XDG_VIDEOS_DIR [*2] (%HOME%/Videos)
ApplicationsLocation? %PROGRAMS% (<boot_drv>:/PROGRAMS)
FontsLocation? %FONTS% (<boot_drv>:/PSFONTS)

[*1] See http://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html for the full explanation.
[*2] See http://www.freedesktop.org/wiki/Software/xdg-user-dirs for the full explanation.

QDesktopServices::displayName() on OS/2 reurns nothing, same as on Windows and Linux.

QDesktopServices::openUrl() uses the HINI_USER_PROFILE\WPURLDEFAULTSETTINGS registry key to determine the default web browser, e-mail client and other supported applications. On a modern eCS system, that means that clicking URLs in Qt applications will open Firefox/Thunderbird? out of the box.

If the URL to open is a local file or directory, WPS associations will be used to open it.

Note: See TracTickets for help on using tickets.