moving classes where they are used
[duncan/yast2-qt4.git] / src / YQPackageSelectorPlugin.h
1 /*---------------------------------------------------------------------\
2 |                                                                      |
3 |                      __   __    ____ _____ ____                      |
4 |                      \ \ / /_ _/ ___|_   _|___ \                     |
5 |                       \ V / _` \___ \ | |   __) |                    |
6 |                        | | (_| |___) || |  / __/                     |
7 |                        |_|\__,_|____/ |_| |_____|                    |
8 |                                                                      |
9 |                               core system                            |
10 |                                                    (c) SuSE Linux AG |
11 \----------------------------------------------------------------------/
12
13   File:       YQPackageSelectorPlugin.h
14
15   Author:     Stefan Hundhammer <sh@suse.de>
16
17 /-*/
18
19
20 #ifndef YQPackageSelectorPlugin_h
21 #define YQPackageSelectorPlugin_h
22
23 #include <YPackageSelectorPlugin.h>
24 #include "pkg/YQPackageSelector.h"
25 #include "pkg/YQPatternSelector.h"
26 #include "pkg/YQSimplePatchSelector.h"
27
28
29 /**
30  * Simplified access to the Qt UI's package selector plugin.
31  **/
32 class YQPackageSelectorPlugin: public YPackageSelectorPlugin
33 {
34 public:
35
36     /**
37      * Constructor: Load the plugin library for the Qt package selector.
38      **/
39     YQPackageSelectorPlugin();
40
41     /**
42      * Destructor. Calls dlclose() which will unload the plugin library if it
43      * is no longer used, i.e. if the reference count dlopen() uses reaches 0.
44      **/
45     virtual ~YQPackageSelectorPlugin();
46
47     /**
48      * Create a package selector.
49      * Implemented from YPackageSelectorPlugin.
50      *
51      * This might return 0 if the plugin lib could not be loaded or if the
52      * appropriate symbol could not be located in the plugin lib. 
53      **/
54     virtual YQPackageSelector * createPackageSelector   ( YWidget *     parent,
55                                                           long          modeFlags = 0 );
56     
57     /**
58      * Create a pattern selector.
59      *
60      * This might return 0 if the plugin lib could not be loaded or if the
61      * appropriate symbol could not be located in the plugin lib. 
62      **/
63     virtual YQPatternSelector * createPatternSelector   ( YWidget *     parent,
64                                                           long          modeFlags = 0 );
65     /**
66      * Create a simple patch selector.
67      *
68      * This might return 0 if the plugin lib could not be loaded or if the
69      * appropriate symbol could not be located in the plugin lib. 
70      **/
71     virtual YQSimplePatchSelector * createSimplePatchSelector( YWidget * parent,
72                                                                long     modeFlags = 0 );
73 };
74
75
76
77 #endif // YQPackageSelectorPlugin_h