libyui-qt
 
Loading...
Searching...
No Matches
YQApplication Class Reference
Inheritance diagram for YQApplication:
Collaboration diagram for YQApplication:

Public Member Functions

virtual void setLanguage (const std::string &language, const std::string &encoding=std::string())
 
void loadPredefinedQtTranslations ()
 
void setLayoutDirection (const std::string &language)
 
void setLangFonts (const std::string &language, const std::string &encoding=std::string())
 
const QFont & currentFont ()
 
const QFont & boldFont ()
 
const QFont & headingFont ()
 
void deleteFonts ()
 
void pickAutoFonts ()
 
bool autoFonts () const
 
void setAutoFonts (bool useAutoFonts)
 
virtual std::string glyph (const std::string &glyphSymbolName)
 
virtual std::string askForExistingDirectory (const std::string &startDir, const std::string &headline)
 
virtual std::string askForExistingFile (const std::string &startWith, const std::string &filter, const std::string &headline)
 
virtual std::string askForSaveFileName (const std::string &startWith, const std::string &filter, const std::string &headline)
 
virtual void askForWidgetStyle ()
 
virtual bool openContextMenu (const YItemCollection &itemCollection)
 
void maybeLeftHandedUser ()
 
virtual int deviceUnits (YUIDimension dim, float layoutUnits)
 
virtual float layoutUnits (YUIDimension dim, int deviceUnits)
 
virtual void busyCursor ()
 
virtual void normalCursor ()
 
virtual void makeScreenShot (const std::string &fileName)
 
virtual void beep ()
 
virtual QPoint contextMenuPos ()
 
virtual void setContextMenuPos (QPoint contextMenuPos)
 
virtual int displayWidth ()
 
virtual int displayHeight ()
 
virtual int displayDepth ()
 
virtual long displayColors ()
 
virtual int defaultWidth ()
 
virtual int defaultHeight ()
 
virtual bool isTextMode ()
 
virtual bool hasImageSupport ()
 
virtual bool hasIconSupport ()
 
virtual bool hasAnimationSupport ()
 
virtual bool hasFullUtf8Support ()
 
virtual bool richTextSupportsTable ()
 
virtual bool hasWizardDialogSupport ()
 
virtual bool hasWidgetStyleSupport ()
 
virtual bool leftHandedMouse ()
 
virtual void setApplicationTitle (const std::string &title)
 
virtual void setApplicationIcon (const std::string &icon)
 

Static Public Member Functions

static QString askForSaveFileName (const QString &startWith, const QString &filter, const QString &headline)
 
static YQPackageSelectorPluginStubpackageSelectorPlugin ()
 
static YQGraphPluginStubgraphPlugin ()
 

Protected Member Functions

 YQApplication ()
 
virtual ~YQApplication ()
 
QString fontKey (const QString &lang)
 

Protected Attributes

QFont * _currentFont
 
QFont * _headingFont
 
QFont * _boldFont
 
QString _fontFamily
 
QSettings * _langFonts
 
QTranslator * _qtTranslations
 
bool _autoFonts
 
int _autoNormalFontSize
 
int _autoHeadingFontSize
 
bool _leftHandedMouse
 
bool _askedForLeftHandedMouse
 
QPoint _contextMenuPos
 
QMenu * _contextMenu
 

Friends

class YQUI
 

Constructor & Destructor Documentation

◆ YQApplication()

YQApplication::YQApplication ( )
protected

Constructor.

Use YUI::app() to get the singleton for this class.

◆ ~YQApplication()

YQApplication::~YQApplication ( )
protectedvirtual

Destructor.

Member Function Documentation

◆ askForExistingDirectory()

string YQApplication::askForExistingDirectory ( const std::string & startDir,
const std::string & headline )
virtual

Open a directory selection box and prompt the user for an existing directory.

'startDir' is the initial directory that is displayed.

'headline' is an explanatory text for the directory selection box. Graphical UIs may omit that if no window manager is running.

Returns the selected directory name or an empty std::string if the user canceled the operation.

Implemented from YApplication.

◆ askForExistingFile()

string YQApplication::askForExistingFile ( const std::string & startWith,
const std::string & filter,
const std::string & headline )
virtual

Open a file selection box and prompt the user for an existing file.

'startWith' is the initial directory or file.

'filter' is one or more blank-separated file patterns, e.g. "*.png *.jpg"

'headline' is an explanatory text for the file selection box. Graphical UIs may omit that if no window manager is running.

Returns the selected file name or an empty std::string if the user canceled the operation.

Implemented from YApplication.

◆ askForSaveFileName() [1/2]

QString YQApplication::askForSaveFileName ( const QString & startWith,
const QString & filter,
const QString & headline )
static

Lower-level version that works with QStrings and does not change the mouse cursor.

◆ askForSaveFileName() [2/2]

virtual std::string YQApplication::askForSaveFileName ( const std::string & startWith,
const std::string & filter,
const std::string & headline )
virtual

Open a file selection box and prompt the user for a file to save data to. Automatically asks for confirmation if the user selects an existing file.

'startWith' is the initial directory or file.

'filter' is one or more blank-separated file patterns, e.g. "*.png *.jpg"

'headline' is an explanatory text for the file selection box. Graphical UIs may omit that if no window manager is running.

Returns the selected file name or an empty std::string if the user canceled the operation.

Implemented from YApplication.

◆ askForWidgetStyle()

void YQApplication::askForWidgetStyle ( )
virtual

Open a pop-up dialog to let the user select between the available widget styles sheets (themes).

This is also available in each dialog with Shift-F3; see YQDialog.cc.

Reimplemented from YApplication.

◆ autoFonts()

bool YQApplication::autoFonts ( ) const
inline

Returns 'true' if the UI automatically picks fonts, disregarding Qt standard settings.

This makes sense during system installation system where the display DPI cannot reliably be retrieved and thus Qt uses random font sizes based on that random DPI.

◆ beep()

void YQApplication::beep ( )
virtual

Beep.

Reimplemented from YApplication.

◆ boldFont()

const QFont & YQApplication::boldFont ( )

Returns the application's default bold font.

◆ busyCursor()

void YQApplication::busyCursor ( )
virtual

Change the (mouse) cursor to indicate busy status.

Reimplemented from YApplication.

◆ contextMenuPos()

virtual QPoint YQApplication::contextMenuPos ( )
inlinevirtual

Return position of the context menu (in gloabl coordinates)

◆ currentFont()

const QFont & YQApplication::currentFont ( )

Returns the application's default font.

Brute force approach to make sure we'll really get a complete Unicode font: Explicitly load the one font that we made sure to contain all required characters, including Latin1, Latin2, Japanese, Korean, and the characters used for glyphs.

There are many fonts that claim to be Unicode, but most of them contain just a sorry excuse for a complete Unicode character set. Qt can't know how complete a font is, so it chooses one that might be better in otherf aspects, but lacks necessary characters.

◆ deleteFonts()

void YQApplication::deleteFonts ( )

Delete the fonts so they will be reloaded upon their next usage.

◆ deviceUnits()

int YQApplication::deviceUnits ( YUIDimension dim,
float layoutUnits )
virtual

Convert logical layout spacing units into device dependent units. A default size dialog is assumed to be 80x25 layout spacing units.

Reimplemented from YApplication.

◆ fontKey()

QString YQApplication::fontKey ( const QString & lang)
protected

Constructs a key for the language specific font file: "font[lang]" for font[de_DE] = "Sans Serif" font[zh] = "ChineseSpecial, something" font[ja_JP] = "JapaneseSpecial, something" font = "Sans Serif"

◆ glyph()

string YQApplication::glyph ( const std::string & glyphSymbolName)
virtual

Return a std::string for a named glyph.

Using this is discouraged in new applications.

Reimplemented from YApplication.

◆ graphPlugin()

YQGraphPluginStub * YQApplication::graphPlugin ( )
static

Return the package selector plugin singleton or creates it (including loading the plugin lib) if it does not exist yet.

◆ headingFont()

const QFont & YQApplication::headingFont ( )

Returns the application's heading font.

Brute force load the heading font - see currentFont() above for more.

◆ layoutUnits()

float YQApplication::layoutUnits ( YUIDimension dim,
int deviceUnits )
virtual

Convert device dependent units into logical layout spacing units. A default size dialog is assumed to be 80x25 layout spacing units.

Reimplemented from YApplication.

◆ loadPredefinedQtTranslations()

void YQApplication::loadPredefinedQtTranslations ( )

Load translations for Qt's predefined dialogs like file selection box etc.

◆ makeScreenShot()

void YQApplication::makeScreenShot ( const std::string & fileName)
virtual

Make a screen shot and save it to the specified file.

Reimplemented from YApplication.

◆ maybeLeftHandedUser()

void YQApplication::maybeLeftHandedUser ( )

A mouse click with the wrong mouse button was detected - e.g., a right click on a push button. The user might be left-handed, but his mouse might not (yet) be configured for left-handed use - e.g., during installation. Ask him if he would like his mouse temporarily configured as a left-handed mouse.

This status can be queried with YQApplication::leftHandedMouse().

◆ normalCursor()

void YQApplication::normalCursor ( )
virtual

Change the (mouse) cursor back from busy status to normal.

Reimplemented from YApplication.

◆ openContextMenu()

bool YQApplication::openContextMenu ( const YItemCollection & itemCollection)
virtual

Open a context menu for a widget

'itemCollection' describes the menu structure

Returns true on success (otherwise false).

Implemented from YApplication.

◆ packageSelectorPlugin()

YQPackageSelectorPluginStub * YQApplication::packageSelectorPlugin ( )
static

Return the package selector plugin singleton or creates it (including loading the plugin lib) if it does not exist yet.

◆ pickAutoFonts()

void YQApplication::pickAutoFonts ( )

Determine good fonts based on defaultsize geometry and set _auto_normal_font_size and _auto_heading_font_size accordingly. Caches the values, so it's safe to call this repeatedly.

◆ setApplicationIcon()

void YQApplication::setApplicationIcon ( const std::string & icon)
virtual

Set the application Icon

Reimplemented from YApplication.

◆ setApplicationTitle()

void YQApplication::setApplicationTitle ( const std::string & title)
virtual

Set the application title

Reimplemented from YApplication.

◆ setAutoFonts()

void YQApplication::setAutoFonts ( bool useAutoFonts)

Set whether or not fonts should automatically be picked.

◆ setContextMenuPos()

void YQApplication::setContextMenuPos ( QPoint contextMenuPos)
virtual

Sets the position of the context menu (in gloabl coordinates)

◆ setLangFonts()

void YQApplication::setLangFonts ( const std::string & language,
const std::string & encoding = std::string() )

Set fonts according to the specified language and encoding.

This is most important for some Asian languages that have overlaps in the Unicode table, like Japanese vs. Chinese.

◆ setLanguage()

void YQApplication::setLanguage ( const std::string & language,
const std::string & encoding = std::string() )
virtual

Set language and encoding for the locale environment ($LANG).

Load UI-internal translations (e.g. for predefined dialogs like file selection) and fonts.

'language' is the ISO short code ("de_DE", "en_US", ...).

'encoding' an (optional) encoding ("utf8", ...) that will be appended if present.

Reimplemented from YApplication.

◆ setLayoutDirection()

void YQApplication::setLayoutDirection ( const std::string & language)

Set the layout direction (left-to-right or right-to-left) from 'language'.

Member Data Documentation

◆ _fontFamily

QString YQApplication::_fontFamily
protected

Font family or list of font families to use ("Sans Serif" etc.)

◆ _langFonts

QSettings* YQApplication::_langFonts
protected

Language-specific font settings

◆ _qtTranslations

QTranslator* YQApplication::_qtTranslations
protected

Translator for the predefined Qt dialogs


The documentation for this class was generated from the following files: