О сколько нам открытий чудных ... (про C7.1)

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
ORS
Бывалый
Сообщения: 91
Зарегистрирован: 07 Май 2009, 23:18

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение ORS »

Дед Пахом писал(а):Если есть

Код: Выделить всё

HANDLE  EQUATE(LONG)
то CC не показывает HANDLE в списке. А очень хочется...
Починили, как и ADDRESS с EQUATE.
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

ORS писал(а):
Дед Пахом писал(а):Если есть

Код: Выделить всё

HANDLE  EQUATE(LONG)
то CC не показывает HANDLE в списке. А очень хочется...
Починили, как и ADDRESS с EQUATE.
Спасибо.
Как бы тултипы заставить нормально работать... Смотрите, что я имею:

Код: Выделить всё

HACCESSOR           EQUATE(LONG)

MyClass  CLASS
AddRefAccessor        PROCEDURE(HACCESSOR hAccessor), HRESULT, RAW
  END
В тултипе для AddRefAccessor прототип выглядит так: (LONG LONG). Круто!

Ещё про CC: не знаю, с каких пор, но окно CC теперь не меняет своего размера по вертикали, сколько не тяни за его границы.
С уважением, ДП
ORS
Бывалый
Сообщения: 91
Зарегистрирован: 07 Май 2009, 23:18

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение ORS »

Дед Пахом писал(а):В тултипе для AddRefAccessor прототип выглядит так: (LONG LONG). Круто!
Не то слово :)
Это из той же оперы, что и непоказ HANDLE (или HACCESSOR в данном примере), вместо имени показывалось значение еквейта. Теперь должно работать.
Дед Пахом писал(а):Ещё про CC: не знаю, с каких пор, но окно CC теперь не меняет своего размера по вертикали, сколько не тяни за его границы.
С самого рождения. Желаемое количество строк в окне СС устанавливается в настройках.
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

ORS писал(а):
Дед Пахом писал(а):Ещё про CC: не знаю, с каких пор, но окно CC теперь не меняет своего размера по вертикали, сколько не тяни за его границы.
С самого рождения. Желаемое количество строк в окне СС устанавливается в настройках.
А где? Options->Text Editor->Code Completion - не вижу ничего подобного.

Ещё одно ключевое слово нашёл, не попадающее в CC: MAXIMUM. А что, у вас нет полного списка таких слов? Так и будем блох ловить? :D
С уважением, ДП
ORS
Бывалый
Сообщения: 91
Зарегистрирован: 07 Май 2009, 23:18

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение ORS »

Дед Пахом писал(а):А где? Options->Text Editor->Code Completion - не вижу ничего подобного.
Options->Text Editor->Clarion specific options->Clarion for Windows (Clarion.Net)
Дед Пахом писал(а):Ещё одно ключевое слово нашёл, не попадающее в CC: MAXIMUM. А что, у вас нет полного списка таких слов? Так и будем блох ловить? :D
Боюсь, что да, потому что это совсем не ключевое слово (тут же несколькими строчками дальше по хелпу MEDIAN, тоже отсутствует). Список зарезервированных слов есть, список процедур, которые удостоены чести быть в builtins.clw есть, а больше ничего отдельного нет. Мы, конечно, пробежимся сейчас по хелпу, чтобы выловить самых заметных блох, но остальное вам. :)
Просто если бы было больше народу, который бы сообщал об ошибке, не найдя в СС того, что там должно быть, исправления бы шли гораздо веселее. А так пока вы один подняли больше СС проблем, чем все остальные пользователи вместе взятые. :)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

ORS писал(а):А так пока вы один подняли больше СС проблем, чем все остальные пользователи вместе взятые. :)
О, может премию к Дню Победы выпишут!

CC не любит структуру LIKE, то есть
v LIKE(gVariant)

и для 'v.' CC ничего не предлагает.
С уважением, ДП
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

Форматирование кода для структуры ITEMIZE отличается от всего остального:
'END' получает отступ всего в один tabstop, а не выравнивается по слову ITEMIZE;
все EQUATEs выравниваются по ITEMIZE, хотя imho должны на tabstop правее.
С уважением, ДП
ORS
Бывалый
Сообщения: 91
Зарегистрирован: 07 Май 2009, 23:18

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение ORS »

Дед Пахом писал(а):CC не любит структуру LIKE, то есть
v LIKE(gVariant)
и для 'v.' CC ничего не предлагает.
А в том же самом месте для gVariant предлагает?
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

ORS писал(а):
Дед Пахом писал(а):CC не любит структуру LIKE, то есть
v LIKE(gVariant)
и для 'v.' CC ничего не предлагает.
А в том же самом месте для gVariant предлагает?
Вы знаете, вчера весь вечер чертыхался и вбивал имена полей руками для группы LIKE. Сейчас попробовал так:

Код: Выделить всё

v                     GROUP(gVARIANT)
                      END
CC для v. работает прекрасно. Тогда добавил

Код: Выделить всё

v1                    LIKE(gVARIANT)
и для v1. всё заработало! Не знаю, на что и грешить... Полнолуние может быть...
С уважением, ДП
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8031
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Игорь Столяров »

Привет всем !

Забавные вещи продолжают обнаруживаться в C7.1 ...
Есть окно MDI, в нем нужно нарисовать вручную некоторую гистограмму. Нет проблем.

Рисуем оператором Box() фон и операторм Line() масштабную сетку. Потом используя Create(0,Create:Box) выводим сверху гистограмму.
Гистограмма рисуется через Create() потому, что ее нужно динамически изменять. Ничего военного, все тупо и просто.

А теперь самое интересное.
В C6 9059 - гистограмма, созданная Create(), рисуется правильно поверх сетки и фона, нарисованных Box() & Line().
А в C71 7014 - почему-то диаграмма рисуется ПОД сеткой и фоном нарисованных Box() & Line().

Парадокс. Зачем сделана такая "доработка" - не понятно абсолютно ... :(
Make Clarion Great Again ! 😎
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

Code Folding не сворачивает ITEMIZE, если у ITEMIZE нет имени:

Код: Выделить всё

  ITEMIZE
A    EQUATE
  END
С уважением, ДП
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

Вот ещё непонятная вещь, слово ENUM то там, то сям (ни к селу ни к городу). Пример:

Код: Выделить всё

CONDITION_TYPE      EQUATE(LONG)
Тултип для CONDITION_TYPE говорит "public const ENUM LONG". Контекстное меню на CONDITION_TYPE предлагает пункт "LONG:ENUM". Без стакана не разберёшься, что это оно самое CONDITION_TYPE и есть.

Осталось добавить, что слово ENUM известно только в Clarion# (по крайней мере судя по доке).
С уважением, ДП
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

Слова 'COM' нет в CC (INTERFACE(IUnknown), COM, TYPE).

А нельзя подложить какую-нибудь dll из поставки Clarion.NET в \bin (ну или какой там надо) каталог Clarion7, чтобы Code Completion (более свежая в .NET) заработало в 7-ке?
С уважением, ДП
ORS
Бывалый
Сообщения: 91
Зарегистрирован: 07 Май 2009, 23:18

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение ORS »

Дед Пахом писал(а):Осталось добавить, что слово ENUM известно только в Clarion# (по крайней мере судя по доке).
Это все наследственность, даже не кларион#, а еще #Develop, у нас есть бага, что тултипы показываются не в синтаксисе клариона, постепенно исправим. Еквейты уже должны быть нормальными, хотя контекстное меню не проверял :)
Дед Пахом писал(а):Code Folding не сворачивает ITEMIZE, если у ITEMIZE нет имени:
Не только имени, а еще и PRE, т.е. когда к итемайзу вообще никак не обратиться, как к некой структуре, объединяющей эквейты. Ее поэтому нет в дереве парсера, а значит и фолдинг теряется. Попробуем поправить.
Дед Пахом писал(а):Слова 'COM' нет в CC (INTERFACE(IUnknown), COM, TYPE).
Мы постепенно добавляем пропущенные методы и слова, но это очень скучно, и работа идет медленно, мы пока прошли только букву B :)
Все пропущенные методы добавляются в файл <ROOT>\bin\AddIns\BackendBindings\ClarionBinding\ClarionWin\builtins2.cln, так что, если вам сильно мешает отсутствие чего-то нужного, то можете добавить сами.
Дед Пахом писал(а):А нельзя подложить какую-нибудь dll из поставки Clarion.NET в \bin (ну или какой там надо) каталог Clarion7, чтобы Code Completion (более свежая в .NET) заработало в 7-ке?
Боюсь, что нет, т.к. поменялось некоторое количество внутренностей, скорее всего не срастутся сборки. В качестве эксперимента можете попробовать скопировать папку <ROOT>\bin\AddIns\BackendBindings\ClarionBinding\ClarionWin из семерки в дотнет, еще наверное надо скопировать те файлы из <ROOT>\bin\AddIns\BackendBindings\ClarionBinding\Common в семерке, которых нет в аналогичной папке дотнета. Вообще лучше сравнить 2 инсталляции и скопировать из семерки все, чего нет в кларион#. Копировать надо именно из старого в новое, но все равно вряд ли оно заживет.
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3289
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Re: О сколько нам открытий чудных ... (про C7.1)

Сообщение Дед Пахом »

[quote="ORS"][/quote]Я понял, подожду след. релиз :D
Вот ещё:

Код: Выделить всё

CQueryParserManager.GetSQLFromAQS   PROCEDURE(STRING aqs, | 
                                      <LANGID pContentLang>, | 
                                      <LANGID pKeywordLang>, |
                                      LONG maxResults = -1, |      ! negative = all
                                      <STRING selectColumns>, |
                                      <STRING sorting>, |
                                      SEARCH_QUERY_SYNTAX sqs = SEARCH_ADVANCED_QUERY_SYNTAX, |
                                      SEARCH_TERM_EXPANSION ste = SEARCH_TERM_PREFIX_ALL, |
                                      <STRING where>)
Code Folding сворачивает код процедуры, начиная со строки, следующей за объявлением, то есть свернув эту процедуру, я на экране вижу весь вышеприведённый код. Некузяво как-то. Нельзя сворачивать целиком всё,?
С уважением, ДП
Ответить