Brovin Yaroslav

Администраторы
  • Публикации

    1 768
  • Зарегистрирован

  • Посещение

  • Days Won

    287

Все публикации пользователя Brovin Yaroslav

  1. На здоровье. Еще почитайте вот эту тему:
  2. Если c - это объект и у него определен дефолтное свойство, то его нельзя передавать, как var параметр. Компилятор не соберет такой код.
  3. Ссылка: http://yaroslavbrovin.ru/object_life_cycle_in_delphi_part_1_windows_osx-ru/ Автор: Ярослав Бровин С появлением мобильных платформ в мире Delphi, произошли серьезные изменения в жизненном цикле объектов. Послужившие причиной многих проблем и вопросов, а как правильно кроссплатформенно удалять объекты. В этой статье детально рассматриваем жизненный цикл объектов на разных платформах и даём ответы на важные вопросы, которые могут побеспокоить даже опытных Delphi разработчиков.
  4. Как вариант: разбить картинку на задний фон и рамку. В рамку кинуть TLayout, выравненный по нижнему краю рамки с отрицательным нижним отступом Кидать кнопки в TLayout. и выравнивать их по левому и правому краям. Кнопки сделать с альфа каналом, убрать из их изображения задний фон и рамку.
  5. Рисовать по нажатию на кнопке нельзя на канве формы. Рисовать на форме можно только в рамках общего процесса отрисовки. А именно в события OnPaint или методе Paint.
  6. Есть примитивы синхронизации блокирующие только запись. Запись делают потокобезопасным. В этом случае не будет лока данных на чтение из других потоков, если запись не залочена. В отличии от критической секции, которая всегда лочит данные. Еще есть LockFree концепция, которая сводит почти к минимому использование блокировок. Главная идея - это использование атомарных функций и специальных флагов помечающих актуальность данных.
  7. We've got a lot of exciting webinars coming in the first quarter of 2017. All these global webinars are offers 3 times a day to accommodate your busy schedule and timezones: 6 AM, 11 AM, 6 PM PDT. Replays will be available after the webinar completes, but be sure to attend for the live Q&A. Thu, January 19, 2017 - Maximize IDE Productivity with 10.1.2 Berlin Are you using all the latest productivity enhancements? Berlin 10.1 Update 2 Anniversary edition introduces more productivity enhancements than ever. This webinar will bring you up to speed on some of the top productivity boosts provided by your favorite IDE. Tue, January 24, 2017 - Migrating to RAD Server "Moving existing Delphi VCL ""Fat Client"" database applications to scalable client/server architectures with RAD Server. Five distinct phases: analyze, plan, refactor, build and deploy The key is building a layered architecture" Thu, January 26, 2017 - Web Front End Frameworks Delphi and C++Builder are amazing at building native multi-platform apps. There are also a great collection for Frameworks for building GUI web applications. This webinar will look at building high performance, feature rich web GUIs with your favorite development tool. Tue, January 31, 2017 - Migration Delphi - Case Studies "This webinar focuses on three areas for migrating legacy Delphi to the current Delphi version: Migrating 3rd Party Components / Libraries Migrating Unicode Migrations of Database and Middleware Includes resources, examples and practical advice" Thu, February 2, 2017 - Internet of Things Integration with RAD Server Overview of the Internet of Things components, libraries and support in RAD Studio. Including Beacons, Bluetooth LE, the GetIt IoT Components, Beacon Fencing and more. Week of Mon, February 6, 2017 - Arduino IoT Bootcamp Integrating Arduino and open hardware into your IoT Solution Week long boot camp More details to come Tue, February 14, 2017 - Modernize or Become Extinct Now is the time to move forward. Technology is moving faster and faster. If you were waiting for the right time to integrate with new technology, it is now. Thu, February 16, 2017 - LiveBinding for VCL Developers A guide to using LiveBindings in existing VCL applications Master detail relationships Creating LiveBindings in Code LiveBinding DataSets Tue, February 21, 2017 - Using TMS Cloud Pack to Integrate Your Apps with the Cloud REST services are everywhere, and using them is the key to accessing the cloud. The TMS Cloud Pack components simplify working with common web services including: PayPal, Flickr, Dropbox, Google, Microsoft, Amazon, Twillo and more. Learn the easiest way to integrate the cloud into your mobile and desktop apps. Thu, February 23, 2017 - CaseStudy: Delphi Minifig Mobile App Success Join Delphi Product Manager Marco Cantu for a case study of his successful mini-figure collectors app Available on mobile, using many Delphi and RAD Studio technologies Tue, February 28, 2017 - C++ the C++Builder Way Thu, March 2, 2017 - DevExpress Migration Tue, March 7, 2017 - Beyond Firebird Thu, March 9, 2017 - Building a Microservices Architecture with RAD Server Tue, March 14, 2017 - From Really "Old Delphi" to the Future Thu, March 16, 2017 - Using RiverSoft AVG Components Tue, March 21, 2017 - Advanced HTTP Protocol Hacking Thu, March 23, 2017 - Using JVESoft Components Schedule subject to change, more details to come! Просмотр полной статьи
  8. Скорее всего конфликтует с названием компонента FMX TPath.
  9. В любом случае ваше желание я вас понимаю :-) Поскольку рынок на делфи складывается в основном из старых проектов, то желания перенести старое на новое больше, чем написать это же с нуля. Была в свое время попытка сделать мида конвертер. Он, вроде, как умел базовые вещи делать: переименовывать свойства и тд. Но как-то новости о нём потихоньку затихли. Видимо, из-за того, что после его работы нужно все равно потратить время на перевод кода. На счет FMX я скажу так. Что мне лично не хватает в FMX тех минимальных вещей, которые в VCL работали хорошо: четкая графика на всех платформах, нормальный ввод текста, базовые настройки компонентов и скорости работы. Причем половина банально решается протягиванием или открытием скрытых свойств, что для меня тоже загадка (почему они скрыты).
  10. Механизм будет работать. Это основа делфи, а не VCL. В VCL просто ее использовали, чтобы облегчить жизнь с доставкой сообщений. На текущий момент FMX использует мессаджи в презентационных контролах. Именно через ключевое сообщение message. И этот вариант не то же самое, что TObject.Dispatch. Да, это скорее центр уведомлений. Грид не плох на планшетах, но для своих задач. Но на мобильных телефонах много вы видели гридов? Да и грид переделали в последних версиях. Он по крайней мере стал на что-то похож. Про LiveBinding молчу, так как это вещь сама в себе. Вроде, как всех к ней привязали, как к новомодной фишки. Но по факту с ней возиться намного больше, чем с DataSource компонентами. Я уж не говорю о скорости работы. Вот это правильное замечание. Есть идеалогия мобильного приложения и она практически ничего не имеет общего с настольными ОС, кроме кнопок, конечно, и полей ввода С другой стороны есть люди, которым мобильность не особо нужна. У них есть большие проекты на VCL и они в принципе были бы рады перевести на FMX, но если это просто взять и двумя кликами поменял. О чем @Haword и говорит. Это хорошее желание. Но никакой нормальный большой проект на VCL просто так не перевести на мобилки, какое бы соответствие не было на уровне АПИ компонентов. Когда появились первые КПК было очень модно похвастаться, что у тебя есть DOS на кпк. Можно было поставить Turbo Pascal или вообще запустить обрезанную винду. Классно, но только дальше этого реально Хорошее замечание. Большинство библиотек косвенно или напрямую использует либо WinApi либо Dll. И такие библиотеки не взлетят на других платформах ну никак. Опять же повторюсь, что идея совместимости хорошая. Но на практике, даже, если бы она и была на уровне FMX, то она хорошо подходила бы для маленьких проектов. В то время, как для больших, она была бы почти бесполезна. Но при это эта совместимость потребовала бы своих костылей. Поверьте мне
  11. Читать интересно Наверное вернулся только при том, что я действительно буду понимать, что компания выбрала правильный путь развития и очень сильно заинтересована в этом
  12. Добрый день, Пока находится на доработке. Финальные штрихи.
  13. Описание Назначение: Компонент предназначен для отображения и ввода голоса. Поддерживает стилизацию. Поддерживаемые платформы: Windows, OSX, iOS, Android Демо проект: Samples\RatingBarDemo\RatingBarDemo.dproj Возможности Стилизация через указание двух картинок отображающих голос и пустой голос Общее количество "звезд" - TfgRatingBar.TotalCount Текущее значение голоса - TfgRatingBar.Rating Возможность указывать дробное значение голоса Возможность указать шаг изменения голоса TfgRatingBar.StepSize
  14. Описание Назначение: Компонент предназначен для отображения правильного многоугольника. Поддерживаемые платформы: Windows, OSX, iOS, Android Демо проект: Samples\RegularPolygonDemo\RegularPolygonDemo.dproj Возможности Округление к физическим пикселям - TfgRegularPolygon.AlignToPixels Количество сторон - TfgRegularPolygon.SidesCount Настройка цвета границы - TfgRegularPolygon.Stroke Настройка заливки - TfgRegularPolygon.Fill
  15. Первый набросок компонента, позволяющего организовать централизованное хранение графических ресурсов для всех платформ. Основные особенности: Спроектирован для использования одного экземпляра изображения во многих компонентах. Позволяет хранить все графические ресурсы любых размеров. В будущем не будет грузить картинки в память, если они не используются. А будет подгружать их из файла по мере необходимости. Тем самым будет значительно экономиться память. Хранение именованных графических ресурсов, а не по индексу. Это позволяет отразить в названии назначение картинки. Использование папок. Группировка изображений по смыслу для удобства работы с ними. Возможность загрузки разных картинок для разных устройств, или же загрузить один набор картинок для всех устройств. Удобная и быстрая загрузка изображений путем перетаскивания Хранение отступов изображения. Наглядное отображение картинки в свойствах компонентах. При изменении имени картинки, в компонентах используемых картинку идет автоматическое обновление имени картинки. В стандартном TImageList, из-за индексной структуру все картинки съезжают и при удалении картинки, компонент начинает отображать уже другую картинку.
  16. Пока говорить сложно. Так как его использование требует своего набора компонентов. И к штатным компонентам он не интегрируется. У меня есть набор компонентов с которыми он уже интегрируется. Но требуется доработка.
  17. Описание Назначение: Компонент предназначен для отображения прямоугольника. Главное отличие от стандартного TRectangle - это возможность округления позиции и размера прямоугольника для избежания размытия границ. Поддерживаемые платформы: Windows, OSX, iOS, Android Демо проект: Samples\ShapesDemo\ShapesDemo.dproj Возможности Одной из проблем графических примитивов в FMX - это размытие границ, вызванное отсутствием привязки изображения к физическим пикселям экрана. Поэтому любое смещении координат прямоугольника на дробную часть приводит к размытию границы. Это хорошо видно на скриншоте ниже (Граница самого нижнего прямоугольника размыта, по сравнению с прямоугольниками выше) Округление к физическим пикселям - TfgRectnalge.AlignToPixels Настройка отображения углов - TfgRectangle.Corners Настройка закругления внешних углов - Corners.RadiusX, Corners.RadiusY Настройка способа вывода угла - Corners.CornerType Указание какие углы выводить - Corners.Corners Настройка цвета границы - TfgRectangle.Stroke Настройка заливки - TfgRectangle.Fill
  18. Пока сложно о чем-то говорить. Но надеюсь, что все первоначальные задумки исполнятся.
  19. TBitmapListAnimation...
  20. In today’s post, I wanted to share some details on the great plans we have in store for RAD Server. While Berlin 10.1.2 is great, my favorite development in 2016 is RAD Server. RAD Server is our turn-key application foundation for rapidly building and deploying services based applications (self-hosted PaaS). RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable. With RAD Server, you can simply load Delphi and C++ business logic methods into RAD Server, add some users, and go. Godzilla (our codename for the next release of RAD Studio) will introduce Linux Server support. This will include a Linux version of RAD Server with Apache integration. You’ll also be able to create Linux RAD Server API modules in Delphi and C++, and we are working to extend our ThingPoint Edge Service support to Linux. This opens a new universe of hosting options, including container deployment. We are also planning to add Multi-Tenancy Support to RAD Server. This has been a frequently requested feature and is something we are actively working on adding to the Godzilla release. A single RAD Server instance with a single RAD Server database connection will be able to support multiple, isolated tenants. Each tenant will be able to have a unique set of RAD Server resources including users, groups etc. and you will be able to administer tenants. Another Godzilla feature planned for RAD Server is support for AngularJS clients. AngularJS is a popular client framework for developing sophisticated Web applications. We recently showed some of our AngularJS support in a webinar. I encourage you to check out the replay. Other features that we’ve planned for RAD Server throughout the Godzilla release cycle include ActiveDirectory support for RAD Server and AD synchronization for accounts and Kerberos authentication for clients. BTW, these are the last days of a pretty awesome promotion - as part of our current Architect edition promotion (expiring on 12/31/16), you get a RAD Server site license for free. For more details, click here. We will be posting an updated Delphi, C++Builder and RAD Studio Roadmap in January 2017. These plans represent our intentions as of this date, but our development plans and priorities are subject to change. Accordingly, we can’t offer any commitments or other forms of assurance that we’ll ultimately release any or all of the above-described products on the schedule or in the order described, or at all. Просмотр полной статьи
  21. In today’s post, I wanted to share some details on the great plans we have in store for RAD Server. While Berlin 10.1.2 is great, my favorite development in 2016 is RAD Server. RAD Server is our turn-key application foundation for rapidly building and deploying services based applications (self-hosted PaaS). RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable. With RAD Server, you can simply load Delphi and C++ business logic methods into RAD Server, add some users, and go. Просмотр полной статьи
  22. Все в силе?
  23. Есть компонент TAddressBook, он не подходит?
  24. Текущий список: @Error, @Brovin Yaroslav, @RoschinSpb , @kami Из которых, с Петей и Сергеем я и так увижусь в следующую среду ))) лол
  25. Текущий список: @Error, @Brovin Yaroslav, @RoschinSpb , @kami , @Zawuza, @wamaco (?).