Вверх ↑
Этот топик читают: Гость
Ответов: 2125
Рейтинг: 159
#1: 2006-07-06 14:03:40 ЛС | профиль | цитата
Добавил возможность работы с массивами из скрипта, например:

var a = sys.Array;
a.Add(666);
a.Set(0, 123);
sys.onEvent(a.Count);
sys.onEvent(a.Get(0));
карма: 1

0
Ответов: 3655
Рейтинг: 69
#2: 2006-07-06 20:07:15 ЛС | профиль | цитата
tsdima, У меня почему то ошибка при компиляции примера

C:\DOWNLO~1\Новая папка\VBJScript\hiVBJScript.pas(545) Warning: Return value of function 'THIVBJScript.OnScriptError' might be undefined

карма: 0

0
Ответов: 2125
Рейтинг: 159
#3: 2006-07-06 21:38:52 ЛС | профиль | цитата
Это не ошибка, это предупреждение. Вполне возможно, что у меня была не последняя версия hiVBJScript.pas, надо будет взять с SVN, и дополнить изменениями.
Найди THIVBJScript.OnScriptError и переставь Result := S_OK; в самое начало процедуры между begin и if FScriptError = nil then exit; (кстати именно из-за этого exit и лезет предупреждение).
карма: 1

0
Ответов: 9906
Рейтинг: 351
#4: 2006-07-06 21:52:50 ЛС | профиль | цитата
Это не ошибка, это предупреждение

Вот и Dilma так думает....
might be undefined: в 9 случаях из 10 - ошибка. И не по переводу, а по смыслу
карма: 9

0
Ответов: 3655
Рейтинг: 69
#5: 2006-07-06 22:18:00 ЛС | профиль | цитата
tsdima, Исправил
Заработало
карма: 0

0
Ответов: 2125
Рейтинг: 159
#6: 2006-07-06 22:52:10 ЛС | профиль | цитата
Galkov писал(а):
в 9 случаях из 10 - ошибка
С этим никто не спорит, более того, это ошибка в 10 случаях из 10, в С++ аналогичное является ошибкой компиляции, а в Delphi - лишь предупреждение, хотя и серьёзное.
карма: 1

0
Ответов: 2125
Рейтинг: 159
#7: 2006-07-09 19:58:59 ЛС | профиль | цитата
Добавил возможность выдачи массива через Var-точку, пока только для VBScript, так как в JScript массив это не SafeArray, а объект.

карма: 1

0
Ответов: 2125
Рейтинг: 159
#8: 2006-07-13 18:46:23 ЛС | профиль | цитата
Теперь и для JScript. Добавился также необычный побочный эффект: если GetVar вернёт объект (любой), то с помощью ArrayRW можно читать свойсва этого объекта, указав в качестве индекса имя свойства.

На данный момент, массивы из скрипта можно только читать. Для VBScript возможность писать в массив не предусматривается в принципе, так как возвращаемые функцией массивы копируются. А вот для JScript я, наверное, добавлю эту возможность, так как тут массив это объект, и к тому же, будет вышеуказанный побочный эффект - можно будет устанавливать свойства объектов скрипта.


[size=-2]------ Добавлено в 17:51
Окончательный вариант с возможностью модификации массивов в JScript:

[size=-2]------ Добавлено в 18:46
Прикольно, удалил аттач из первого поста - компонент пропал в upload

карма: 1

0
файлы: 1VBJScript2.rar [5.3KB] [427]
Ответов: 9906
Рейтинг: 351
#9: 2006-07-13 18:53:04 ЛС | профиль | цитата
А я уже ту удалил: файлы VBJScript.rar и VBJScript2.rar совпадали

действительно прикольно....
карма: 9

0
Ответов: 2125
Рейтинг: 159
#10: 2006-07-13 23:08:53 ЛС | профиль | цитата
Ну вот, я хотел чтобы в upload оно всё таки было, а теперь опять нет
карма: 1

0
Ответов: 9906
Рейтинг: 351
#11: 2006-07-14 00:16:59 ЛС | профиль | цитата
Ну выкинь этот, а туда отпиши
Я то от чужого имени - не могу.
Вот удалять - запросто....
Ну и удалил то, где меньше текста было...

[size=-2]------ Добавлено в 00:16
Да, нахитрил Dilma, чего-то
Вот и TaskBar-а два.... По той же причине, видимо.
Чуть-чуть не удалил... И конечно того, который Upload
И как апдэйт аттачу устраивать - тоже непонятно....
карма: 9

0
Ответов: 2125
Рейтинг: 159
#12: 2006-07-14 10:46:07 ЛС | профиль | цитата
И как апдэйт аттачу устраивать - тоже непонятно
В этом-то и проблема. Я уже предлагал сделать свой SVN по принципу upload, но с версиями, или upload по принципу SVN Единственное пожелание: вместо номера версии использовать дату checkin - более информативно, на мой взгляд. Также, каждый пользователь имеет свой branch, а админ потом может выбрать, какую версию включить в основную ветку. Но по желанию, пользователи должны иметь возможность выбирать предпочитаемые branch-и для каждого элемента и в целом, а также версию/дату. В серьёзных средствах контроля версий кода (например Rational ClearCase) каждый пользователь имеет свой конфиг.файл, описывающий способ выбора версий файлов из репозитория, как для каждого элемента, так и в целом.
карма: 1

0
Ответов: 9906
Рейтинг: 351
#13: 2006-07-14 10:59:44 ЛС | профиль | цитата
Да про апдейт аттача, тут и говорить не о чем - это не жизнь.
И редактировать во время правки, и добавлять по необходимости....
А то и удаляется-то сегодня с какими-то ругательствами...

Про SVN - не ощутил его бесконечного преимущества: сблизить свои коды с кодами дистрибутива не удалось. Скорее - наоборот.
Разве-что, мелочь какую-нибудь править....
карма: 9

0
Ответов: 2125
Рейтинг: 159
#14: 2006-07-14 11:08:57 ЛС | профиль | цитата
Кроме версий есть ещё метки (например метка такого-то релиза), по ним тоже можно выбирать.
карма: 1

0
Ответов: 9906
Рейтинг: 351
#15: 2006-07-14 11:40:15 ЛС | профиль | цитата
в релизах есть смысл, когда они отличаются не фундаментально, и выложены для тестирования, с целью принятия решения о перспективности направлений.

а вот, если я уберу из MainForm св-во ShowType и заменю его на метод doShowModal, как много из форума я смогу взять
или внедрю вот это

А если попытаюсь ВСЕ элементы сделать объектами (а не классами) - то несовместимость станет 100%-ной.
Хотя именно в этом может и оказаться Великая Сермяжная Правда
карма: 9

0
15
Сообщение
...
Прикрепленные файлы
(файлы не залиты)