summaryrefslogtreecommitdiffstats
path: root/src/gui/PropertiesWindow.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2015-10-26 16:29:11 +0000
committerDavid Robillard <d@drobilla.net>2015-10-26 16:29:11 +0000
commit965a74ae42dae3ff42f1dcc7c53dddb2b5a31b09 (patch)
tree10fddc515234d9a1fc5724d134b88eb8c124904f /src/gui/PropertiesWindow.cpp
parent06eb959bf1c249dd66a5a56b78df0ad0de7df29c (diff)
downloadingen-965a74ae42dae3ff42f1dcc7c53dddb2b5a31b09.tar.gz
ingen-965a74ae42dae3ff42f1dcc7c53dddb2b5a31b09.tar.bz2
ingen-965a74ae42dae3ff42f1dcc7c53dddb2b5a31b09.zip
Use URIDs almost everywhere
This fixes some issues where types are lost after saving and re-loading many times. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5788 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/PropertiesWindow.cpp')
-rw-r--r--src/gui/PropertiesWindow.cpp21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/gui/PropertiesWindow.cpp b/src/gui/PropertiesWindow.cpp
index 0ae2709d..09474027 100644
--- a/src/gui/PropertiesWindow.cpp
+++ b/src/gui/PropertiesWindow.cpp
@@ -449,16 +449,16 @@ PropertiesWindow::get_value(LV2_URID type, Gtk::Widget* value_widget)
if (check) {
return _app->forge().make(check->get_active());
}
- } else if (type == forge.URI) {
+ } else if (type == forge.URI || type == forge.URID) {
URIEntry* uri_entry = dynamic_cast<URIEntry*>(value_widget);
if (uri_entry) {
- return _app->forge().alloc_uri(uri_entry->get_text());
- }
- } else if (type == forge.URID) {
- URIEntry* uri_entry = dynamic_cast<URIEntry*>(value_widget);
- if (uri_entry) {
- return _app->forge().make_urid(
- _app->world()->uri_map().map_uri(uri_entry->get_text()));
+ if (Raul::URI::is_valid(uri_entry->get_text())) {
+ return _app->forge().make_urid(
+ _app->world()->uri_map().map_uri(uri_entry->get_text()));
+ } else {
+ _app->log().error(fmt("Invalid URI <%1%>\n\n")
+ % uri_entry->get_text());
+ }
}
} else if (type == forge.String) {
Gtk::Entry* entry = dynamic_cast<Gtk::Entry*>(value_widget);
@@ -467,11 +467,6 @@ PropertiesWindow::get_value(LV2_URID type, Gtk::Widget* value_widget)
}
}
- URIEntry* uri_entry = dynamic_cast<URIEntry*>(value_widget);
- if (uri_entry) {
- return _app->forge().alloc_uri(uri_entry->get_text());
- }
-
return Atom();
}