Public feed
#531520
void* Entry::getValue() {
void* ret = 0;
switch (type) {
case TextEntry: {
const char ss = QString::toUtf8(((QLineEdit*) widget)->text());
ret = (void *) ss;
}
break;
case ColorEntry:
ret = (void *) (const char*) ((QLineEdit*) widget)->text().toLatin1();
break;
case ChoiceEntry:
ret = items[((QComboBox*) widget)->currentIndex()].value;
break;
case ListEntry:
ret = items[((QListWidget*) widget)->currentIndex().row()].value;
break;
}
return ret;
}
void *roadmap_dialog_get_data (const char *frame, const char *name) {
return currentDialog->getEntryValue(frame, name);
}
static void roadmap_coord_ok (const char *name, void *data) {
const char *argv[2];
RoadMapPosition position;
argv[0] = (const char*) roadmap_dialog_get_data
("Coordinates", RoadMapLongitudeLabel);
roadmap_log(ROADMAP_WARNING,"1coord: %s",argv[0]);
position.longitude = roadmap_coord_to_binary (argv[0], 1);
if (position.longitude > 180000000 || position.longitude < -180000000) {
roadmap_messagebox("Warning", "Invalid longitude value");
return;
}
roadmap_log(ROADMAP_WARNING,"2coord: %s",argv[0]);
argv[1] = (const char*) roadmap_dialog_get_data
("Coordinates", RoadMapLatitudeLabel);
roadmap_log(ROADMAP_WARNING,"3coord: %s",argv[0]);
position.latitude = roadmap_coord_to_binary (argv[1], 0);
if (position.latitude > 90000000 || position.latitude < -90000000) {
roadmap_messagebox("Warning", "Invalid latitude value");
return;
}
roadmap_log(ROADMAP_WARNING,"4coord: %s",argv[0]);
roadmap_trip_set_point ("Selection", &position);
roadmap_trip_set_point ("Address", &position);
roadmap_trip_set_focus ("Address");
roadmap_screen_refresh ();
roadmap_log(ROADMAP_WARNING,"coord pointer: %s",argv[0]);
roadmap_history_add ('C', argv);
roadmap_dialog_hide (name);
}