route=hiking
}
PopUpManager.addPopUp(this, Application(FlexGlobals.topLevelApplication), true);
PopUpManager.centerPopUp(this);
var titles:Array = [];
relationList = conn.getMatchingRelationIDs(t);
if (relationList.length == 0) {
warning.text = "No relations available";
} else {
warning.text = "These relations are available:";
}
//relationSelector.dataProvider = relationList;
for each (var id:Number in relationList) {
var relation:Relation = conn.getRelation(id);
titles.push({label:relation.getDescription(), relId:id});
}
titles.sortOn('label');
titles.forEach(function(item:Object, index:int, arr:Array):void { arr[index].label=item.relId+": "+item.label; });
relationSelector.dataProvider = titles;
}
public function updateEntityAndClose():void {
var undo:CompositeUndoableAction = new CompositeUndoableAction("Add to relation");
for each (var relObject:Object in relationSelector.selectedItems) {
var relation:Relation = conn.getRelation(relObject.relId);
if (entity is EntityCollection) {
for each (var e:Entity in EntityCollection(entity).entities) {
if (relation.findEntityMemberIndex(e)==-1) {
relation.appendMember(new RelationMember(e, ''), undo.push);
}
}
} else {
relation.appendMember(new RelationMember(entity, ''), undo.push);
}
}
MainUndoStack.getGlobalStack().addAction(undo);
PopUpManager.removePopUp(this);
}
public function closeAndNewRelation():void {
var members:Array=[];
if (entity is EntityCollection) {
for each (var e:Entity in EntityCollection(entity).entities) {
members.push(new RelationMember(e, ''));
}
} else members.push(new RelationMember(entity, ''));
var relation:Relation = conn.createRelation(defaulttags, members, MainUndoStack.getGlobalStack().addAction);
PopUpManager.removePopUp(this);
var panel:RelationEditorPanel = RelationEditorPanel(
PopUpManager.createPopUp(Application(FlexGlobals.topLevelApplication), RelationEditorPanel, true));
panel.setRelation(relation);
PopUpManager.centerPopUp(panel);
}
public function closeAndLoadRelation():void {
PopUpManager.removePopUp(this);
var panel:RelationLoaderPanel = RelationLoaderPanel(
PopUpManager.createPopUp(Application(FlexGlobals.topLevelApplication), RelationLoaderPanel, true));
panel.setEntity(entity);
PopUpManager.centerPopUp(panel);
}
public function updateSelectButton():void {
selectButton.enabled=relationSelector.selectedItems.length>0;
}
]]>