libyui  3.0.10
 All Classes Functions Variables Enumerations Friends
YExternalWidgets Class Referenceabstract

#include <YExternalWidgets.h>

Public Member Functions

virtual ~YExternalWidgets ()
 

Static Public Member Functions

static YExternalWidgetsexternalWidgets ()
 
static YExternalWidgetFactoryexternalWidgetFactory ()
 

Protected Member Functions

 YExternalWidgets ()
 
virtual YExternalWidgetFactorycreateExternalWidgetFactory ()=0
 

Friends

class YExternalWidgetsTerminator
 

Detailed Description

Abstract base class of a libYUI Widget Extension interface.

Definition at line 27 of file YExternalWidgets.h.

Constructor & Destructor Documentation

YExternalWidgets::YExternalWidgets ( )
protected

Constructor.

Definition at line 28 of file YExternalWidgets.cc.

YExternalWidgets::~YExternalWidgets ( )
virtual

Destructor.

Definition at line 38 of file YExternalWidgets.cc.

Member Function Documentation

virtual YExternalWidgetFactory* YExternalWidgets::createExternalWidgetFactory ( )
protectedpure virtual

Create the external widgets factory that provides all the createXY() methods for

Derived classes are required to implement this. Usually createXY() is virtual, real implementation is demanded to derived classes that implement Gtk, ncurses and QT specialization.

YExternalWidgetFactory * YExternalWidgets::externalWidgetFactory ( )
static

Return the external widget factory that provides all the createXY() methods for user defined widgets.

This will create the factory upon the first call and return a pointer to the one and only (singleton) factory upon each subsequent call. This may throw exceptions if the factory cannot be created.

It is up to user extend YExternalWidgetFactory to add createXY() methods in his/her implementation. So once YExternalWidgetFactory is extended with all the createXY() methods, three sub-plugins must be defined one for each supported graphical environment, e.g. Gtk, ncurses and QT, following the libyui implementation rules.

For instance an external widgets plugin called yui-foo that needs Gtk, ncurses and QT specialization will require also yui-foo-gtk, yui-foo-ncurses and yui-foo-qt plugin implementation.

Definition at line 50 of file YExternalWidgets.cc.

YExternalWidgets * YExternalWidgets::externalWidgets ( )
static

Access the global YUI external widgets.

NOTE that only one external widget plugin can be loaded, further implementation may allow more.

Definition at line 43 of file YExternalWidgets.cc.


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