Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Maxx 13.09.2005 17:20 / 13.09.2005 17:41
Захотел дополнить класс table своими методами. Для первого эксперимента решил добавить метод, удаляющий текущую строку.@CLASS table2 @BASE table @create[table] ^BASE:create{$table} @del_line[] $cur_line[^BASE:line[]] ^BASE:create{^BASE:select(^BASE:line[] != $cur_line)]}Пример вызова:
$t[^table2::create{1 2 3 4 str1c1 str1c2 str1c3 str1c4 str2c1 str2c2 str2c3 str2c4 str3c1 str3c2 str3c3 str3c4 str4c1 str4c2 str4c3 str4c4 }] ^t.menu{ $t.1 $t.2 $t.3 $t.4<br> ^if(^t.line[] == 2){$t[^t.del_line[]]} }Вторая строка удаляется, оно работает, но что то мне здесь не нравиться, а что - понять точно не могу. Как минимум хотелось бы написать просто ^t.del_line[] без присвоения. Но в таком варианте переменная $t остается без изменений.