25 #include "YQOptionalWidgetFactory.h" 26 #include "YQApplication.h" 27 #include <yui/YUIException.h> 28 #include "YQPackageSelectorPluginStub.h" 30 #include "YQTimezoneSelector.h" 31 #include "YQGraphPluginStub.h" 33 #define THROW_UNSUPPORTED( WIDGET_TYPE ) \ 34 YUI_THROW( YUIUnsupportedWidgetException( WIDGET_TYPE ) ); \ 40 : YOptionalWidgetFactory()
52 bool YQOptionalWidgetFactory::hasWizard()
58 YQOptionalWidgetFactory::createWizard( YWidget * parent,
59 const string & backButtonLabel,
60 const string & abortButtonLabel,
61 const string & nextButtonLabel,
62 YWizardMode wizardMode )
69 YUI_CHECK_NEW( wizard );
76 bool YQOptionalWidgetFactory::hasDumbTab()
82 YQOptionalWidgetFactory::createDumbTab( YWidget * parent )
85 YUI_CHECK_NEW( dumbTab );
92 bool YQOptionalWidgetFactory::hasSlider()
98 YQOptionalWidgetFactory::createSlider( YWidget * parent,
104 YQSlider * slider =
new YQSlider( parent, label, minVal, maxVal, initialVal );
105 YUI_CHECK_NEW( slider );
112 bool YQOptionalWidgetFactory::hasDateField()
118 YQOptionalWidgetFactory::createDateField( YWidget * parent,
const string & label )
121 YUI_CHECK_NEW( dateField );
128 bool YQOptionalWidgetFactory::hasTimeField()
134 YQOptionalWidgetFactory::createTimeField( YWidget * parent,
const string & label )
137 YUI_CHECK_NEW( timeField );
144 bool YQOptionalWidgetFactory::hasBarGraph()
150 YQOptionalWidgetFactory::createBarGraph( YWidget * parent )
153 YUI_CHECK_NEW( barGraph );
160 bool YQOptionalWidgetFactory::hasPatternSelector()
168 bool YQOptionalWidgetFactory::hasSimplePatchSelector()
174 bool YQOptionalWidgetFactory::hasMultiProgressMeter()
180 YQOptionalWidgetFactory::createMultiProgressMeter( YWidget * parent, YUIDimension dim,
const vector<float> & maxValues )
183 YUI_CHECK_NEW( multiProgressMeter );
185 return multiProgressMeter;
190 bool YQOptionalWidgetFactory::hasPartitionSplitter()
196 YQOptionalWidgetFactory::createPartitionSplitter( YWidget * parent,
202 const string & usedLabel,
203 const string & freeLabel,
204 const string & newPartLabel,
205 const string & freeFieldLabel,
206 const string & newPartFieldLabel )
219 YUI_CHECK_NEW( partitionSplitter );
221 return partitionSplitter;
226 bool YQOptionalWidgetFactory::hasDownloadProgress()
232 YQOptionalWidgetFactory::createDownloadProgress( YWidget * parent,
233 const string & label,
234 const string & filename,
235 YFileSize_t expectedSize )
241 YUI_CHECK_NEW( downloadProgress );
243 return downloadProgress;
247 bool YQOptionalWidgetFactory::hasTimezoneSelector()
253 YQOptionalWidgetFactory::createTimezoneSelector( YWidget * parent,
254 const string & timezoneMap,
255 const map<string,string> & timezones )
261 bool YQOptionalWidgetFactory::hasGraph()
265 return plugin != NULL && plugin->impl != NULL;
270 YQOptionalWidgetFactory::createGraph( YWidget * parent,
271 const string & filename,
272 const string & layoutAlgorithm )
277 return plugin->
createGraph( parent, filename, layoutAlgorithm );
284 YQOptionalWidgetFactory::createGraph( YWidget * parent,
void * graph )
296 YQOptionalWidgetFactory::createPatternSelector( YWidget* parent,
long modeFlags )
307 YQOptionalWidgetFactory::createSimplePatchSelector( YWidget* parent,
long modeFlags )
318 bool YQOptionalWidgetFactory::hasContextMenu()
virtual YGraph * createGraph(YWidget *parent, const std::string &filename, const std::string &layoutAlgorithm)
Create a package selector.
virtual YWidget * createSimplePatchSelector(YWidget *parent, long modeFlags)
Create a simple patch selector (optional widget).
static YQGraphPluginStub * graphPlugin()
Return the package selector plugin singleton or creates it (including loading the plugin lib) if it d...
virtual YWidget * createPatternSelector(YWidget *parent, long modeFlags)
Create a pattern selector (optional widget).
static YQPackageSelectorPluginStub * packageSelectorPlugin()
Return the package selector plugin singleton or creates it (including loading the plugin lib) if it d...