private function addDraggableTranslationEditor($label_name, $label_value) { $label_input = new TextArea($this->form); $label_input->setAutoHeight(); $label_input->setValue(str_replace("\\'", "'", $label_value)); $label_input->setName("TextArea_" . $label_name)->setWidth(320); // Saved position of the label when dragged $hdn_label = new Hidden($this->form, "Hdn_Position_" . $label_name); $hdn_label->setValue(sizeof($this->array_translation_position) + 1); $this->array_translation_position[$label_name] = $hdn_label; // Create draggable label object $translate_obj = new Object(); $translate_obj->setWidth(588)->setId("Draggable_" . $label_name); $pic_drag = new Picture("wsp/img/drag_arrow_16x16.png", 16, 16, 0, Picture::ALIGN_ABSMIDDLE); $pic_drag->setStyle("cursor:pointer;"); $label_obj = new Object($pic_drag, $label_name . ": "); $label_obj->setWidth(250)->setStyle("float: left;"); $translate_obj->add($label_obj, $hdn_label, $label_input); if (!$this->btn_save->isClicked() && !$this->sort_label_event->isSorted() && !$this->btn_add_label->isClicked()) { $this->translate_area->add($translate_obj); } $this->array_translation_input[$label_name] = $label_input; }