На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (245) « Первая ... 89 90 [91] 92 93 ...  244 245  ( Перейти к последнему сообщению )  
> Есть ли будущее у DELPHI?
    Цитата korvin @
    Цитата DesweR @
    Да, тот который мы изменяем (Edit2).

    Отлично, смешали View и Model, в духе Делфи, чо.

    Это вообще не то и не другое.

    Добавлено
    Цитата korvin @
    Цитата DesweR @
    Хэх, так что реализацию самих Action'ов нужно самому писать всё-таки?

    В каком смысле "реализацию Action'ов"? Если ты про класс Action, то нет, пишется "обработчик Action.Execute" и всё. Соответственно можно просто связать два элемента интерфейса, если у них есть какое-то взаимодействие, не связанное с контроллером/моделью, т.е. чисто UI-шное взаимодействие.

    Я уже подзабыл немного, в той статье реализация метода touchIt пишется именно тобою.

    Добавлено
    Цитата korvin @
    Цитата DesweR @
    Кажется начинаю понимать (почитал ещё статью на хабре), в LiveBindings система связи с точностью до наоборот. Опиши поподробнее, как будет выглядеть процесс связывания двух Edit'ов и Label'а (из той задачки), а потом и свою задачку подгоню.

    Ну все просто, у контроллера будет Outlet типа TextField, а на интерфейсе например два UITextField, и они просто мышкой связываются с этим Outlet'ом. Всё.

    Эмм.. давай подробнее, что откуда берётся? (из коробки или пишется самим?) и каким образом работает сама связь? (т.е. тоже из коробки или пишется самим?)

    Добавлено
    Цитата korvin @
    Цитата D_KEY @
    По диагонали. Меня GUI сейчас мало интересует.
    Впечатление об отсутствии MVC создалось по критике со стороны korvin

    Отчасти да:
    • с моделями в VCL туговато, есть только TDataSet и его потомки по большому счету.
    • в качестве контроллера можно использовать TActionList.
    • с вьюхами тоже как-то вяло (TDB*-классы).
    Плюс реализация обработки событий для компонентов описывается в коде класса-контейнера (например SomeButton.OnClick в классе формы, на которой эта кнопка расположена) а не в коде самого компонента, что приводит к смешению обязанностей и следовательно несоблюдению MVC.

    Но в принципе писать в стиле MVC вполне можно.

    VCL кагбэ старше остальных, с чем то да туго, но зато IDE позволяет написать любую "инфраструктуру" под конкретно себя.
      Цитата DesweR @
      VCL кагбэ старше остальных, с чем то да туго, но зато IDE позволяет написать любую "инфраструктуру" под конкретно себя.

      VCL не старше NS-фреймворка вообще-то.
        Цитата korvin @
        О, может тогда ты ответишь на вопросы Смайка?

        а у него уже свои ответы есть

        Добавлено
        Цитата korvin @
        VCL не старше NS-фреймворка вообще-то.

        Я не знаю как он выглядел в то время.

        Добавлено
        Касаемо той давней задачки с биндингами компонентов, для ясности сейчас попробую записать видео.
          Цитата DesweR @
          Я не знаю как он выглядел в то время.

          Почти так же, как и сейчас.
            Цитата DesweR @
            уже удалил, всех "упоротых неадекватов" :)

            Ну так как там с ответами на мои вопросы? :whistle:

            Пока вижу одного неадеквата - Всеволода Леонова. Надо на него пожаловаться David I.
              Controller.h:
              ExpandedWrap disabled
                #import <Foundation/Foundation.h>
                 
                @interface Controller : NSObject
                 
                @property (nonatomic, retain) NSString *name;    //  input
                @property (nonatomic, retain) NSString *hello;   // output
                 
                - (IBAction)hello:(id)sender;
                 
                @end

              Controller.m:
              ExpandedWrap disabled
                #import "Controller.h"
                 
                @implementation Controller
                 
                @synthesize name, hello;
                 
                - (void)hello:(id)sender {
                    self.hello = [[NSString alloc] initWithFormat:@"Hello, %@", self.name];
                }
                 
                @end

              Теперь связываем UI-элементы со свойствами (справа binding inspector, смотри свойства bind to и model key path):
              user posted image
              user posted image
              user posted image

              итого все привязки объекта Controller:
              user posted image

              Добавлено
              Соответственно вот так будет работать: http://youtu.be/hhlH7TI_KkU
                это обработчик нажатия кнопки?
                Цитата korvin @
                - (void)hello:(id)sender {
                self.hello = [[NSString alloc] initWithFormat:@"Hello, %@", self.name];
                }

                где self - это контроллер?
                  korvin
                  Для полноты картины, запиши сам процесс связывания.
                    Цитата DesweR @
                    это обработчик нажатия кнопки?
                    Цитата korvin @
                    - (void)hello:(id)sender {
                    self.hello = [[NSString alloc] initWithFormat:@"Hello, %@", self.name];
                    }

                    где self - это контроллер?

                    это экш, где сендер — это объект, вызвавший экшн, т.е. в данном случае это будет кнопка.
                      http://youtu.be/j7AR5tr7Pm8

                      На форме находятся компоненты - один экземпляр TUiSearcher и три экземпляра TUiElement.
                      У UiSearcher1 есть свойство UiElements - коллекция для компонентов реализующих интерфейс ICustomUiElement (т.е. связать элементы коллекции можно будет только с теми компонентами, которые поддерживают этот интерфейс).
                      Вот на вскидку, как подобное реализовать в IB?

                      Ну и на сладкое, у элемента коллекции есть свой специфический редактор свойств, отсеивающий в списке выбора уже существующие в коллекции компоненты и тем самым оберегая от ошибочного ввода.
                      Первая половина видео - со стандартным редактором свойств TInterfaceProperty, вторая - с новым TFilteringInterfaceProperty.
                      Сам редактор свойств никак не связан с компонентом и регистрируется отдельно (отдельным пакетом).

                      Добавлено
                      Цитата korvin @
                      т.е. в данном случае это будет кнопка.

                      а self?
                        Цитата DesweR @
                        korvin
                        Для полноты картины, запиши сам процесс связывания.

                        http://youtu.be/VqBAhDoFelM

                        Добавлено
                        Цитата DesweR @
                        а self?

                        Контроллер.

                        Добавлено
                        Цитата DesweR @
                        На форме находятся компоненты - один экземпляр TUiSearcher и три экземпляра TUiElement.
                        У UiSearcher1 есть свойство UiElements - коллекция для компонентов реализующих интерфейс ICustomUiElement (т.е. связать элементы коллекции можно будет только с теми компонентами, которые поддерживают этот интерфейс).
                        Вот на вскидку, как подобное реализовать в IB?

                        Вот навскидку зачем это нужно?

                        Добавлено
                        Твое видео посмотрю чуть позже, нужно по делам сходить.
                          Цитата korvin @
                          Вот навскидку зачем это нужно?

                          Это базовые взаимоотношения между компонентами, применяться могут для чего угодно (в моём случае для создания карты визуальных компонентов и последующих поиска и навигации по ним).
                            Цитата DesweR @
                            Это базовые взаимоотношения между компонентами, применяться могут для чего угодно (в моём случае для создания карты визуальных компонентов и последующих поиска и навигации по ним).

                            Извини, но я не вижу тут никаких взаимоотношений и чем это отличается от массива/списка объектов, заданного программно. Можно ли, например, через этот Searcher одним движение руки установить какое-то свойство у элементов? Например Enabled?
                              Цитата korvin @
                              Извини, но я не вижу тут никаких взаимоотношений

                              Конечно, ты же видишь только связь.

                              Цитата korvin @
                              и чем это отличается от массива/списка объектов, заданного программно

                              :wacko:

                              Цитата korvin @
                              Можно ли, например, через этот Searcher одним движение руки установить какое-то свойство у элементов? Например Enabled?

                              Можно , более того можно сразу одним щелчком забить в коллекцию все доступные компоненты (или по фильтру) и не возёкать мышью по форме.
                                Цитата DesweR @
                                Это базовые взаимоотношения между компонентами, применяться могут для чего угодно (в моём случае для создания карты визуальных компонентов и последующих поиска и навигации по ним).

                                Вообще коллекции элементов управления в Xcode делаются вот так: http://useyourloaf.com/blog/2011/3/28/inte...ollections.html
                                Но че-то я у себя у textfield'ов не вижу свойства Outletd collection, вероятно это работает только для iOS-фреймворка =/

                                Добавлено
                                Цитата DesweR @
                                Можно , более того можно сразу одним щелчком забить в коллекцию все доступные компоненты (или по фильтру) и не возёкать мышью по форме.

                                Реквестирую демонстрацию.

                                Добавлено
                                Цитата DesweR @
                                более того можно сразу одним щелчком забить в коллекцию все доступные компоненты (или по фильтру) и не возёкать мышью по форме.

                                А потом сидеть и вычищать лишние? =) Под фильтром что подразумевается? Регексп по имени?
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (245) « Первая ... 89 90 [91] 92 93 ...  244 245


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,1096 ]   [ 14 queries used ]   [ Generated: 23.12.25, 08:03 GMT ]