25 #include "YOptionalWidgetFactory.h"
26 #include "YWidgetFactory.h"
27 #include "YUIException.h"
32 #define THROW_UNSUPPORTED( WIDGET_TYPE ) \
33 YUI_THROW( YUIUnsupportedWidgetException( WIDGET_TYPE ) ); \
50 bool YOptionalWidgetFactory::hasWizard()
56 YOptionalWidgetFactory::createWizard(
YWidget * parent,
57 const std::string & backButtonLabel,
58 const std::string & abortButtonLabel,
59 const std::string & nextButtonLabel,
62 THROW_UNSUPPORTED(
"YWizard" );
67 bool YOptionalWidgetFactory::hasDumbTab()
73 YOptionalWidgetFactory::createDumbTab(
YWidget * parent )
75 THROW_UNSUPPORTED(
"YDumbTab" );
80 bool YOptionalWidgetFactory::hasSlider()
86 YOptionalWidgetFactory::createSlider(
YWidget * parent,
87 const std::string & label,
92 THROW_UNSUPPORTED(
"YSlider" );
97 bool YOptionalWidgetFactory::hasDateField()
103 YOptionalWidgetFactory::createDateField(
YWidget * parent,
const std::string & label )
105 THROW_UNSUPPORTED(
"YDateField" );
110 bool YOptionalWidgetFactory::hasTimeField()
116 YOptionalWidgetFactory::createTimeField(
YWidget * parent,
const std::string & label )
118 THROW_UNSUPPORTED(
"YTimeField" );
123 bool YOptionalWidgetFactory::hasBarGraph()
129 YOptionalWidgetFactory::createBarGraph(
YWidget * parent )
131 THROW_UNSUPPORTED(
"YBarGraph" );
136 bool YOptionalWidgetFactory::hasPatternSelector()
142 YOptionalWidgetFactory::createPatternSelector(
YWidget * parent,
long modeFlags )
144 THROW_UNSUPPORTED(
"YPatternSelector" );
149 bool YOptionalWidgetFactory::hasSimplePatchSelector()
155 YOptionalWidgetFactory::createSimplePatchSelector(
YWidget * parent,
long modeFlags )
157 THROW_UNSUPPORTED(
"YSimplePatchSelector" );
162 bool YOptionalWidgetFactory::hasMultiProgressMeter()
168 YOptionalWidgetFactory::createMultiProgressMeter(
YWidget * parent, YUIDimension dim,
const std::vector<float> & maxValues )
170 THROW_UNSUPPORTED(
"YMultiProgressMeter" );
174 YOptionalWidgetFactory::createHMultiProgressMeter(
YWidget * parent,
const std::vector<float> & maxValues )
176 return createMultiProgressMeter( parent, YD_HORIZ, maxValues );
180 YOptionalWidgetFactory::createVMultiProgressMeter(
YWidget * parent,
const std::vector<float> & maxValues )
182 return createMultiProgressMeter( parent, YD_VERT, maxValues );
187 bool YOptionalWidgetFactory::hasPartitionSplitter()
193 YOptionalWidgetFactory::createPartitionSplitter(
YWidget * parent,
199 const std::string & usedLabel,
200 const std::string & freeLabel,
201 const std::string & newPartLabel,
202 const std::string & freeFieldLabel,
203 const std::string & newPartFieldLabel )
205 THROW_UNSUPPORTED(
"YPartitionSplitter" );
210 bool YOptionalWidgetFactory::hasDownloadProgress()
216 YOptionalWidgetFactory::createDownloadProgress(
YWidget * parent,
217 const std::string & label,
218 const std::string & filename,
219 YFileSize_t expectedFileSize )
221 THROW_UNSUPPORTED(
"YDownloadProgress" );
226 bool YOptionalWidgetFactory::hasDummySpecialWidget()
232 YOptionalWidgetFactory::createDummySpecialWidget(
YWidget * parent )
237 bool YOptionalWidgetFactory::hasTimezoneSelector()
243 YOptionalWidgetFactory::createTimezoneSelector(
YWidget * parent,
244 const std::string & _map,
245 const std::map<std::string, std::string>& zones)
247 THROW_UNSUPPORTED(
"YTimezoneSelector" );
252 YOptionalWidgetFactory::hasGraph()
259 YOptionalWidgetFactory::createGraph(
YWidget * parent,
const std::string & filename,
260 const std::string & layoutAlgorithm )
262 THROW_UNSUPPORTED(
"YGraph" );
267 YOptionalWidgetFactory::createGraph(
YWidget * parent,
void * graph )
269 THROW_UNSUPPORTED(
"YGraph" );
274 YOptionalWidgetFactory::hasContextMenu()
Input field for entering a date.
YWizardMode
Kind of the wizard layout.
static YWidgetFactory * widgetFactory()
Return the widget factory that provides all the createXY() methods for standard (mandatory, i.e.
Input field for entering a time in "hh:mm:ss" format.
DownloadProgress: A progress bar that monitors downloading a file by repeatedly polling its size up t...
DumbTab: A very simple tab widget that can display and switch between a number of tabs...
PartitionSplitter: A (very custom) widget for easily splitting one existing partition into two...
A graph showing partitioning of a whole.
MultiProgressMeter: Progress bar with several segments that can indicate progress individually...
A graph with nodes and edges, rendered with Graphviz.
A wizard is a more complex frame typically used for multi-step workflows:
A fancy widget with a world map.
Slider: Input widget for an integer value between a minimum and a maximum value.