public function renderButton($row) { $objControlId = "editButton" . $row; $objControl = $this->GetControl($objControlId); if (!$objControl) { $objControl = new QJqButton($this->dtgButtons, $objControlId); $objControl->Text = true; $objControl->AddAction(new QClickEvent(), new QAjaxAction("renderButton_Click")); } $objControl->Label = "update & alert " . $this->intHitCnt; // We pass the parameter of "false" to make sure the control doesn't render // itself RIGHT HERE - that it instead returns its string rendering result. return $objControl->Render(false); }
public function renderRemoveButton($orderId) { $objControlId = "removeButton" . $orderId; $objControl = $this->GetControl($objControlId); if (!$objControl) { $objControl = new QJqButton($this->dtgOrders, $objControlId); $objControl->Text = true; $objControl->ActionParameter = $orderId; $objControl->AddAction(new QClickEvent(), new QAjaxAction("removeButton_Click")); } $objControl->Label = "Remove"; // We pass the parameter of "false" to make sure the control doesn't render // itself RIGHT HERE - that it instead returns its string rendering result. return $objControl->Render(false); }
protected function Form_Create() { $this->Draggable = new QPanel($this); $this->Draggable->Text = 'Drag me'; $this->Draggable->CssClass = 'draggable'; $this->Draggable->Moveable = true; //$this->Draggable->AddAction(new QDraggable_StopEvent(), new QJavascriptAction("alert('Dragged to ' + ui.position.top + ',' + ui.position.left)")); $this->Draggable->AddAction(new QDraggable_StopEvent(), new QAjaxAction("drag_stop")); // Dropable $this->Droppable = new QPanel($this); $this->Droppable->Text = "Drop here"; //$this->Droppable->AddAction(new QDroppable_DropEvent(), new QJavascriptAction("alert('Dropped ' + ui.draggable.attr('id'))")); $this->Droppable->AddAction(new QDroppable_DropEvent(), new QAjaxAction("droppable_drop")); $this->Droppable->CssClass = 'droppable'; $this->Droppable->Droppable = true; // Resizable $this->Resizable = new QPanel($this); $this->Resizable->CssClass = 'resizable'; $this->Resizable->Resizable = true; $this->Resizable->AddAction(new QResizable_StopEvent(), new QAjaxAction('resizable_stop')); // Selectable $this->Selectable = new QSelectable($this); $this->Selectable->AutoRenderChildren = true; $this->Selectable->CssClass = 'selectable'; for ($i = 1; $i <= 5; ++$i) { $pnl = new QPanel($this->Selectable); $pnl->Text = 'Item ' . $i; $pnl->CssClass = 'selitem'; } $this->Selectable->Filter = 'div.selitem'; $this->Selectable->SelectedItems = array($pnl->ControlId); // pre-select last item $this->Selectable->AddAction(new QSelectable_StopEvent(), new QAjaxAction('selectable_stop')); // Sortable $this->Sortable = new QSortable($this); $this->Sortable->AutoRenderChildren = true; $this->Sortable->CssClass = 'sortable'; for ($i = 1; $i <= 5; ++$i) { $pnl = new QPanel($this->Sortable); $pnl->Text = 'Item ' . $i; $pnl->CssClass = 'sortitem'; } $this->Sortable->Items = 'div.sortitem'; $this->Sortable->AddAction(new QSortable_StopEvent(), new QAjaxAction('sortable_stop')); // Accordion $this->Accordion = new QAccordion($this); $lbl = new QLinkButton($this->Accordion); $lbl->Text = 'Header 1'; $pnl = new QPanel($this->Accordion); $pnl->Text = 'Section 1'; $lbl = new QLinkButton($this->Accordion); $lbl->Text = 'Header 2'; $pnl = new QPanel($this->Accordion); $pnl->Text = 'Section 2'; $lbl = new QLinkButton($this->Accordion); $lbl->Text = 'Header 3'; $pnl = new QPanel($this->Accordion); $pnl->Text = 'Section 3'; $this->Accordion->AddAction(new QChangeEvent(), new QAjaxAction('accordion_change')); // Autocomplete // Both autocomplete controls below will use the mode // "match only on the beginning of the word" QAutocomplete::UseFilter(QAutocomplete::FILTER_STARTS_WITH); // Client-side only autocomplete $this->Autocomplete1 = new QAutocomplete($this); $this->Autocomplete1->Source = self::$LANGUAGES; $this->Autocomplete1->Name = "Standard Autocomplete"; $this->Autocomplete2 = new QAutocomplete($this); $this->Autocomplete2->Source = self::$LANGUAGES; $this->Autocomplete2->AutoFocus = true; $this->Autocomplete2->MustMatch = true; $this->Autocomplete2->Name = "AutoFocus and MustMatch"; // Ajax Autocomplete // Note: To show the little spinner while the ajax search is happening, you // need to define the .ui-autocomplete-loading class in a style sheet. See // header.inc.php for an example. $this->AjaxAutocomplete = new QAutocomplete($this); $this->AjaxAutocomplete->SetDataBinder("update_autocompleteList"); $this->AjaxAutocomplete->AddAction(new QAutocomplete_ChangeEvent(), new QAjaxAction('ajaxautocomplete_change')); $this->AjaxAutocomplete->DisplayHtml = true; $this->AjaxAutocomplete->Name = 'With Html Display'; $this->AjaxAutocomplete2 = new QAutocomplete($this); $this->AjaxAutocomplete2->MultipleValueDelimiter = ','; $this->AjaxAutocomplete2->SetDataBinder("update_autocompleteList"); $this->AjaxAutocomplete2->Name = 'Multiple selection'; // Button $this->Button = new QJqButton($this); $this->Button->Label = "Click me"; // Label overrides Text $this->Button->AddAction(new QClickEvent(), new QServerAction("button_click")); $this->CheckBox = new QJqCheckBox($this); $this->CheckBox->Text = "CheckBox"; $this->RadioButton = new QJqRadioButton($this); $this->RadioButton->Text = "RadioButton"; $this->IconButton = new QJqButton($this); $this->IconButton->Text = "Sample"; $this->IconButton->ShowText = false; $this->IconButton->Icons = array("primary" => JqIcon::Lightbulb); // Lists $this->CheckList1 = new QCheckBoxList($this); $this->CheckList1->Name = "CheckBoxList with buttonset"; foreach (self::$LANGUAGES as $strLang) { $this->CheckList1->AddItem($strLang); } $this->CheckList1->ButtonMode = QCheckBoxList::ButtonModeSet; $this->CheckList2 = new QCheckBoxList($this); $this->CheckList2->Name = "CheckBoxList with button style"; foreach (self::$LANGUAGES as $strLang) { $this->CheckList2->AddItem($strLang); } $this->CheckList2->ButtonMode = QCheckBoxList::ButtonModeJq; $this->CheckList2->RepeatColumns = 4; $this->RadioList1 = new QRadioButtonList($this); $this->RadioList1->Name = "RadioButtonList with buttonset"; foreach (self::$LANGUAGES as $strLang) { $this->RadioList1->AddItem($strLang); } $this->RadioList1->ButtonMode = QCheckBoxList::ButtonModeSet; $this->RadioList2 = new QRadioButtonList($this); $this->RadioList2->Name = "RadioButtonList with button style"; foreach (self::$LANGUAGES as $strLang) { $this->RadioList2->AddItem($strLang); } $this->RadioList2->ButtonMode = QCheckBoxList::ButtonModeJq; $this->RadioList2->RepeatColumns = 4; // Datepicker $this->Datepicker = new QDatepicker($this); // DatepickerBox $this->DatepickerBox = new QDatepickerBox($this); // Dialog $this->Dialog = new QDialog($this); $this->Dialog->Text = 'a non modal dialog'; $this->Dialog->AddButton('Cancel', 'cancel'); $this->Dialog->AddButton('OK', 'ok'); $this->Dialog->AddAction(new QDialog_ButtonEvent(), new QAjaxAction('dialog_press')); $this->Dialog->AutoOpen = false; $this->btnShowDialog = new QJqButton($this); $this->btnShowDialog->Text = 'Show Dialog'; $this->btnShowDialog->AddAction(new QClickEvent(), new QShowDialog($this->Dialog)); $this->txtDlgTitle = new QTextBox($this); $this->txtDlgTitle->Name = "Set Title To:"; $this->txtDlgTitle->AddAction(new QKeyPressEvent(10), new QAjaxAction('dlgTitle_Change')); $this->txtDlgTitle->AddAction(new QBackspaceKeyEvent(10), new QAjaxAction('dlgTitle_Change')); $this->txtDlgText = new QTextBox($this); $this->txtDlgText->Name = "Set Text To:"; $this->txtDlgText->AddAction(new QKeyPressEvent(10), new QAjaxAction('dlgText_Change')); $this->txtDlgText->AddAction(new QBackspaceKeyEvent(10), new QAjaxAction('dlgText_Change')); // Progressbar $this->Progressbar = new QProgressbar($this); $this->Progressbar->Value = 37; // Slider $this->Slider = new QSlider($this); $this->Slider->AddAction(new QSlider_SlideEvent(), new QJavascriptAction('jQuery("#' . $this->Progressbar->ControlId . '").progressbar ("value", ui.value)')); $this->Slider->AddAction(new QSlider_ChangeEvent(), new QAjaxAction('slider_change')); $this->Slider2 = new QSlider($this); $this->Slider2->Range = true; $this->Slider2->Values = array(10, 50); $this->Slider2->AddAction(new QSlider_ChangeEvent(), new QAjaxAction('slider2_change')); // Tabs $this->Tabs = new QTabs($this); $tab1 = new QPanel($this->Tabs); $tab1->Text = 'First tab is active by default'; $tab2 = new QPanel($this->Tabs); $tab2->Text = 'Tab 2'; $tab3 = new QPanel($this->Tabs); $tab3->Text = 'Tab 3'; $this->Tabs->Headers = array('One', 'Two', 'Three'); }