.&1|?" {}:+dV8msM.h%bQ#oޛ D݈n#÷ ¦3 zk&Z|N2Ayb5rQ ftt}d4u] /eO%,Bk=0B6sz8=Qog[q-fsB];H‘'i`M"O=Î26XmCu\p4XB)U5RڧvyM8"ࡹ3_Azr 7]G{Mཡ;qQI^ZNAsqɾ:3u`{: ^?7AZƙ)+LO^<^3) 7=`&LfiB)=S]+93-@M(uHmn#{wc,C߈h.@KVgBoǿ?etve1mnZxRE`Ҵpz:6"Y[BүZa!X)I&M|X?ِ$3L?#bck+˕ušoUME VSg:hpL>$g.9Lax4'0N!'5ޏY \8UJUAF<ή](iUzVW"ܳC$۷1 VJn |cuKqQI^ZNAsqɾ:3u`{:X?4} ӡ(LoW\ӧIZCcYiuDv_/A|#4/]]xHljj:čՂv3K5ݨώR>+'(YMFs/k=]pOrjbck+˕ušoUME VSg:hpL"gtRʶG,;Z0X '{5[y-ģL7͌2!UCx`%)Hju^߬.dB dwn]ݘPj#LfiB)=S]+93-@M(uHmn#{wc,CpIיu_eGZ{@s JOj+_K#ضe%5^ĴM[:;,{~Wh  jwx!)av2wپDܣr 9X6>\E7uPp!x(x?#_:璢qȿsB*͍V8nn&,`\fk((5&0t2(˓bh&6E27#C Wſ|iΫb O?""~c!·*-Y-ՂӠ_˅MudDNR c8 5G i8KgzsÆBff4,QȾn#»MV&]95( Uq%#(,V9@l@(_( h&6E27#C Wſi?=Դ\h>_F%sA1eo>18nn&,`\fޑ0VЁyl|Kvoڡz<^siQ9/lճYxo*8nn&,`\f@.9Z tbuA 6kn.fB1Nm"'ևSlWӁbR5å~?HOLoD@t ld$6Q3,x6ZrϻMiM}%yo^ 3RC\_|"-cFCĶS1xqcZW O}ڕ dhSDzҬ}ہ ;ۉ'8nn&,`\f=e·57㉫\V=4!˯=Mg}xŷx]$O\HvG̉6P}]XK? ( /$DW n/ɡ'ýdC0 8nn&,`\f'wY!~8nn&,`\f]b<Ү 8M/'ɢLI0IX^{k~0 vv;K%!GXd |`jDQP^NΆ* h4*&5xu7Rtx|bJC{lO^~(1>;!DzɜJMrD4]8nn&,`\fCw!_n7}?e euY*^S'Y{tt0'!*a;0IFQVm g"~"|DQP^NΆ* h4$d>2ZcB` sÈKn$Fa1I{Œܕ~ aiPBLcLp40>/ ^vC%+pc8nn&,`\fBZ|]6#p!4¼0sgts~-?U;lM}X&ϯ!zm5'.׷eٜFm+)UPKA1h$m{w4-+vG8ފ {WIWzFٙ6aPb ^Й2g|>J( 8f%= XIWt.K h3#ٹ grid = args.instance; }, pagerButtonsCount: 8, toolbarHeight: 35, renderToolbar: function(toolBar) { var toTheme = function (className) { if (theme == "") return className; return className + " " + className + "-" + theme; } // appends buttons to the status bar. var containerElement = $("
"); var buttonTemplate = "
"; var addButtonElement = $(buttonTemplate); var editButtonElement = $(buttonTemplate); var deleteButtonElement = $(buttonTemplate); var cancelButtonElement = $(buttonTemplate); var updateButtonElement = $(buttonTemplate); containerElement.append(addButtonElement); containerElement.append(editButtonElement); containerElement.append(deleteButtonElement); containerElement.append(cancelButtonElement); containerElement.append(updateButtonElement); toolBar.append(containerElement); var addBtn = new jqxButton(addButtonElement, {cursor: "pointer", enableDefault: false, height: 25, width: 25 }); addButtonElement.find('div:first').addClass(toTheme('jqx-icon-plus')); new jqxTooltip(addButtonElement, { position: 'bottom', content: "Add"}); var editBtn = new jqxButton(editButtonElement, { cursor: "pointer", disabled: true, enableDefault: false, height: 25, width: 25 }); editButtonElement.find('div:first').addClass(toTheme('jqx-icon-edit')); new jqxTooltip(editButtonElement, { position: 'bottom', content: "Edit"}); var deleteBtn = new jqxButton(deleteButtonElement, { cursor: "pointer", disabled: true, enableDefault: false, height: 25, width: 25 }); deleteButtonElement.find('div:first').addClass(toTheme('jqx-icon-delete')); new jqxTooltip(deleteButtonElement, { position: 'bottom', content: "Delete"}); var updateBtn = new jqxButton(updateButtonElement, { cursor: "pointer", disabled: true, enableDefault: false, height: 25, width: 25 }); updateButtonElement.find('div:first').addClass(toTheme('jqx-icon-save')); new jqxTooltip(updateButtonElement, { position: 'bottom', content: "Save Changes"}); var cancelBtn = new jqxButton({ cursor: "pointer", disabled: true, enableDefault: false, height: 25, width: 25 }); cancelButtonElement.find('div:first').addClass(toTheme('jqx-icon-cancel')); cancelButtonElement.jqxTooltip({ position: 'bottom', content: "Cancel"}); $scope.updateButtonElements = function (action) { switch (action) { case "Select": addBtn.disabled = false; deleteBtn.disabled = false; editBtn.disabled = false; cancelBtn.disabled = true; updateBtn.disabled = true; break; case "Unselect": addBtn.disabled = false; deleteBtn.disabled = true; editBtn.disabled = true; cancelBtn.disabled = true; updateBtn.disabled = true; break; case "Edit": addBtn.disabled = true deleteBtn.disabled = true; editBtn.disabled = true; cancelBtn.disabled = false; updateBtn.disabled = false; break; case "End Edit": addBtn.disabled = false; deleteBtn.disabled = false; editBtn.disabled = false; cancelBtn.disabled = true; updateBtn.disabled = true; break; } } var rowIndex = null; $scope.rowSelect = function (event) { var args = event.args; rowIndex = args.index; $scope.updateButtonElements('Select'); }; $scope.rowUnselect = function (event) { $scope.updateButtonElements('Unselect'); }; $scope.rowEndEdit = function (event) { $scope.updateButtonElements('End Edit'); }; $scope.rowBeginEdit = function (event) { $scope.updateButtonElements('Edit'); }; addBtn.on("click", function (event) { if (!addButtonElement.disabled) { // add new empty row. grid.addRow(null, {}, 'first'); // select the first row and clear the selection. grid.clearSelection(); grid.selectRow(0); // edit the new row. grid.beginRowEdit(0); $scope.updateButtonElements('Add'); } }); cancelBtn.on("click", function (event) { if (!cancelBtn.disabled) { // cancel changes. grid.endRowEdit(rowIndex, true); } }); updateBtn.on("click", function (event) { if (!updateBtn.disabled) { // save changes. grid.endRowEdit(rowIndex, false); } }); editBtn.on("click", function () { if (!editBtn.disabled) { grid.beginRowEdit(rowIndex); $scope.updateButtonElements('edit'); } }); deleteBtn.on("click", function () { if (!deleteBtn.disabled) { grid.deleteRow(rowIndex); $scope.updateButtonElements('delete'); } }); }, columns: [ { text: 'Order ID', editable: false, dataField: 'OrderID', width: 200 }, { text: 'Freight', dataField: 'Freight', cellsFormat: 'f', cellsAlign: 'right', align: 'right', width: 200}, { text: 'Ship Country', dataField: 'ShipCountry', width: 250, columnType: 'custom', createEditor: function (row, cellValue, editor, width, height) { // create jqxInput editor. var inputElement = $("").appendTo(editor);; var countries = new Array("Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antarctica", "Antigua and Barbuda", "Argentina", "Armenia", "Australia", "Austria", "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia", "Bosnia and Herzegovina", "Botswana", "Brazil", "Brunei", "Bulgaria", "Burkina Faso", "Burma", "Burundi", "Cambodia", "Cameroon", "Canada", "Cape Verde", "Central African Republic", "Chad", "Chile", "China", "Colombia", "Comoros", "Congo, Democratic Republic", "Congo, Republic of the", "Costa Rica", "Cote d'Ivoire", "Croatia", "Cuba", "Cyprus", "Czech Republic", "Denmark", "Djibouti", "Dominica", "Dominican Republic", "East Timor", "Ecuador", "Egypt", "El Salvador", "Equatorial Guinea", "Eritrea", "Estonia", "Ethiopia", "Fiji", "Finland", "France", "Gabon", "Gambia", "Georgia", "Germany", "Ghana", "Greece", "Greenland", "Grenada", "Guatemala", "Guinea", "Guinea-Bissau", "Guyana", "Haiti", "Honduras", "Hong Kong", "Hungary", "Iceland", "India", "Indonesia", "Iran", "Iraq", "Ireland", "Israel", "Italy", "Jamaica", "Japan", "Jordan", "Kazakhstan", "Kenya", "Kiribati", "Korea, North", "Korea, South", "Kuwait", "Kyrgyzstan", "Laos", "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg", "Macedonia", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", "Mauritania", "Mauritius", "Mexico", "Micronesia", "Moldova", "Mongolia", "Morocco", "Monaco", "Mozambique", "Namibia", "Nauru", "Nepal", "Netherlands", "New Zealand", "Nicaragua", "Niger", "Nigeria", "Norway", "Oman", "Pakistan", "Panama", "Papua New Guinea", "Paraguay", "Peru", "Philippines", "Poland", "Portugal", "Qatar", "Romania", "Russia", "Rwanda", "Samoa", "San Marino", " Sao Tome", "Saudi Arabia", "Senegal", "Serbia and Montenegro", "Seychelles", "Sierra Leone", "Singapore", "Slovakia", "Slovenia", "Solomon Islands", "Somalia", "South Africa", "Spain", "Sri Lanka", "Sudan", "Suriname", "Swaziland", "Sweden", "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "Togo", "Tonga", "Trinidad and Tobago", "Tunisia", "Turkey", "Turkmenistan", "Uganda", "Ukraine", "United Arab Emirates", "United Kingdom", "United States", "Uruguay", "Uzbekistan", "Vanuatu", "Venezuela", "Vietnam", "Yemen", "Zambia", "Zimbabwe"); var input = new jqxInput(inputElement, { source: countries, width: '100%', height: '100%' }); if (!cellValue) cellValue = ""; input.val(cellValue); }, initEditor: function (row, cellValue, editor) { // set jqxInput editor's initial value. editor.find('input').val(cellValue); }, getEditorValue: function (index, value, editor) { // get jqxInput editor's value. return editor.find('input').val(); } }, { text: 'Shipped Date', dataField: 'ShippedDate', cellsAlign: 'right', align: 'right', cellsFormat: 'dd/MM/yyyy'} ] }; });