GtkWidget* Dialog::addSpinner(GtkWidget* vbox, const char* name, double value, double lower, double upper, const FloatImportCallback& importViewer, const FloatExportCallback& exportViewer) { DialogSpinnerRow row(DialogSpinnerRow_new(name, value, lower, upper, 10)); AddFloatSpinnerData(*row.m_spin, importViewer, exportViewer); DialogVBox_packRow(GTK_VBOX(vbox), row.m_row); return row.m_row; }
GtkWidget* Dialog::addSpinner (GtkWidget* vbox, const std::string& name, const std::string& registryKey, double lower, double upper, int fraction) { // Load the initial value (maybe unnecessary, as the value is loaded upon dialog show) float value = GlobalRegistry().getFloat(registryKey); // Create a new row containing an input field DialogSpinnerRow row(DialogSpinnerRow_new(name.c_str(), value, lower, upper, fraction)); // Connect the registry key to the newly created input field _registryConnector.connectGtkObject(GTK_OBJECT(row.m_spin), registryKey); DialogVBox_packRow(GTK_VBOX(vbox), row.m_row); return row.m_row; }