Top.Mail.Ru
? ?
Image GUI Programming's Journal
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 15 most recent journal entries recorded in GUI Programming's LiveJournal:

Thursday, April 8th, 2010
11:12 pm
[gui_moderator]
Image
MFC & DPI
В Visual Studio 2010 MFC-приложения будут по умолчанию помечаться как DPI-Aware, пишет Пэт Бреннер в VC++ Team Blog. Как известно, в Windows Vista был несколько переработан подход к работе с различными значениями DPI. Ранее приложение было обязано само следить за всем, что связано с поддержкой различных значений DPI и включать код для масштабирования окон, правильного расположения графических элементов etc. В Windows Vista была реализована поддержка автоматического масштабирования, что позволило приложениям корректно отображаться при различных DPI, пусть и с эффектом некоторой "размытости".

    Приложение, однако, могло пометить себя как DPI-Aware с помощью функции SetProcessDPIAware или манифеста и само управлять собственным масштабированием. По умолчанию приложение считалось DPI-Unaware. Теперь же, в Visual Studio 2010 все MFC-приложения (даже старые) будут автоматически помечаться как DPI-Aware, что может повлечь повляение старых проблем в кастомнизированных элементах управления. Опция, регулирующая данное поведение находится в настройках проекта: "Configuration Properties -> Manifest Tool -> Input and Output: Enable DPI Awareness":

Image

Будьте внимательны!
Saturday, November 7th, 2009
9:24 pm
[elagin_pavel]
Image
Ищется инструмент для разработки GUI для Windows Mobile.
Вероятно какой-то визуальный редактор, который позволяет размещать стандартные контролы. Было бы не плохо получить возможно настраивать между ними взаимодействия, например переходы в другие окна. Так же вывод всех надписей в ресурсный файл.

Очень не удобно рисовать в фотошопе, что бы показать заказчику как это будет выглядеть, да и текст приходиться забивать заново.
Thursday, September 10th, 2009
3:36 pm
[parallelsmoscow]
Вакансия: Программист, разработчик GUI (Москва)

Parallels

Компания Parallels, основанная в 1999 г., предоставляет динамичное окружение в по-настоящему глобальной компании со штатом 900 человек, 10 миллионами пользователей и 800 партнерами, в числе которых Microsoft, Apple, Intel, AMD, Dell, HP, и IBM.

Обязанности:

  • разработка на C++ графического интерфейса пользователя и программных библиотек для многопользовательского кросс-платформенного приложения, управляющего работой виртуальных машин Parallels;
  • участие в проектировании архитектуры клиентской части приложения и библиотек программного интерфейса;
  • участие в проектировании интерфейса и сценариев работы пользователя;
  • полная занятость, ежедневное присутствие в офисе (работа удаленно исключается);
  • работа в интенсивном ритме, со сжатыми сроками в большой команде разработчиков в постоянном взаимодействии со смежными командами;

Требования:

  • опыт разработки ПО – не менее 5 лет (личное участие в разработке кода!),
  • опыт в разработке GUI приложений не менее 2 лет;
  • опыт разработки на C++ не менее 3 лет;
  • уровень владения С++, ООП: эксперт;
  • обязательно наличие опыта разработки многопользовательских многопоточных приложений для работы в многоплатформенной среде: как минимум: любая Unix-система (Linux, FreeBSD, Mac OS X) + Windows;
  • опыт использования библиотеки Qt – не менее 1 года;
  • опыт практического использования XML;
  • опыт работы в составе группы программистов;
  • опыт использования систем версионирования (SVN, CVS, проч.) и багтрекинга (Bugzilla, др.);
  • активное применение методики TTD (test driven development);
  • знание скриптовых языков (Python) приветствуется;
  • опыт разработки приложений для Mac OS X (Carbon, Cocoa, Objective C) - большой плюс.

Компенсация и льготы:

  • размер заработной платы определяется по результатам собеседования (в зависимости от имеющегося у кандидата опыта и профессиональных навыков);
  • медицинская страховка (включает стоматологическое обслуживание)
  • бесплатные обеды и кофе брейки;
  • офис компании распологается в Москве, ст.м. «Отрадное»;
  • корпоративный транспорт от ст. м. «Речной вокзал», «Отрадное», г. Долгопрудный.

Ждем Ваши резюме на E-mail: innav@parallels.com

Большое спасибо за проявленный интерес к Parallels, одной из самых быстроразвивающихся компаний в мире!


Thursday, February 7th, 2008
2:18 pm
[jtootf]
Image
UI Continuations
"...диалоговые окна, собирающие аргументы для процедур, часто создают эфемерные, неестественные прерывания нормального потока выполнения программы, заставляя пользователя вносить данные как можно быстрее с целью возобновить нормальное поведение программы..."

в статье, озаглавленной User Interface Continuations, авторы предлагают иной подход к запросу у пользователя необходимой для работы приложения информации - непрерывное и добровольное накопление данных, и выполнение тех или иных процедур тогда, когда данных для их вызова становится достаточно. сама аккумулируемая таким образом информация (контекст основного потока выполнения) является first-class object, и может быть сохранена в любой момент для дальнейшего использования; сам поток выполнения таким образом не прерывается. в данную концепцию элементарно ложится, например, понятие истории контекста - возможность повторного использования настроек без сохранения/извлечения их из специфического носителя (файла, записи реестра, etc), и шаблонов настроек

читать здесь (статья в PDF, english, 108.94 Kb)
1:12 am
[gui_moderator]
Image
C++ FQA
Думаю, многим известен С++ FAQ lite Marshall`a Cline - замечательная подборка коротких статей, затрагивающих различные аспекты С++. Он заслуживает внимания сам по себе, но сегодня хотелось бы дать ссылку на другой FAQ, созданный ему в пику: С++ Frequently Questioned Answers (FQA). Автор сего замечательного опуса (Imageyousefk) дает ответы на те же вопросы, но в несколько другом ключе. Критика - вот его конек. И, как правило, достаточно интересная. Вывод, напрашивающийся после прочтения: С++ - язык со многими недостатками. Возможно, документ следовало назвать С--. Впрочем, судите сами. Время так или иначе проведете с пользой и совсем не скучая.

За ссылку спасибо "тру-программисту"
Wednesday, February 6th, 2008
1:58 am
[gui_moderator]
Image
CWnd::GetSafeHwnd()
Каждый, кто использовал MFC, знает о существовании функции HWND CWnd::GetSafeHwnd(). Почему "safe"? Достаточно взглянуть на реализацию:

HWND CWnd::GetSafeHwnd() const
{
     return this == NULL ? NULL : m_hWnd;
}

Очевидно, что обращение к этой функции через нулевой указатель на объект абсолютно корректно и не приведет ни к каким катастрофическим последствиям:

CWnd* pwnd = 0;
HWND hwnd = pwnd->GetSafeHwnd(); // hwnd will be set to 0

Аналогичным образом реализован CWnd::operator HWND(). Следует, однако, заметить, что хотя вызов невиртуальной функции через нулевой указатель в реализации С++ от Microsoft и легален, согласно стандарту, поведение кода с подобными изысками не определено.
Thursday, December 13th, 2007
12:49 am
[gui_moderator]
Image
PDFCHM - тысячи книг по программированию в отличном качестве, включая самые последние новинки. Требуется простая регистрация. Дает скачивать две в сутки с одного IP.
Tuesday, July 3rd, 2007
1:02 pm
[sentjao]
Image
Вопрос
Я новичок в WPF. Вот какой вопрос. Есть ListView, в нем DataTemplate, который показывает данные из некоторого Xml. В Xml есть элементы с тремя аттрибутами: name, value и controlType. Для отображения аттрибута name у меня в темплэйте TextBlock, а для value должен быть или TextBox, или ComboBox, в зависимости от значения третьего аттрибута controlType. Как бы мне такое сделать?

Xml:

<elements>
<element name="ProjectProperty1" value="1" elementType="project" elementId="1" controlType="1"></element>
<element name="ProjectProperty2" value="2" elementType="project" elementId="1" controlType="2"></element>
<element name="ComponentProperty1" value="1" elementType="component" elementId="1" controlType="1"></element>
<element name="ComponentProperty2" value="2" elementType="component" elementId="1" controlType="2"></element>
</elements>

XAML:

<ListView Name="listView1"
Margin="-4,-26,3.90322580645159,0" Height="50" VerticalAlignment="Top" Grid.ColumnSpan="2">
<ListView.ItemTemplate>
<DataTemplate>
<Grid Name="gridInner" ShowGridLines="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120px"/>
<ColumnDefinition Width="40px"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Name="propertyName" Text="{Binding XPath=@name}" />
<TextBox Grid.Column="1" Name ="propertyValue"
Text="{Binding XPath=@value}" />

</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>

Вот, там, где выделенный красным TextBox, должен быть иногда TextBox, а иногда ComboBox, в зависимости от значения аттрибута controlType в Xml.
Wednesday, April 25th, 2007
10:55 pm
[gui_moderator]
Image
Элементы управления в WPF
Статья в MSDN Magazine за май 2007, описывающая методы настройки и создания элементов управления под WPF.
Saturday, April 21st, 2007
2:47 pm
[gui_moderator]
Image
Hi WPF!
Windows Presentation Foundation (or WPF), formerly code named Avalon, is the graphical subsystem feature of the .NET Framework 3.0 (formerly called WinFX). It provides a consistent programming model for building applications and provides a clear separation between the UI and the business logic. A WPF application can be deployed on the desktop or hosted in a web browser. It also enables richer control, design, and development of the visual aspects of Windows programs. It aims to unify a host of application services: user interface, 2D and 3D drawing, fixed and adaptive documents, advanced typography, vector graphics, raster graphics, animation, data binding, audio and video. Read more

А здесь небольшой обзор и введение в WPF на русском.
2:27 pm
[gui_moderator]
Image
Let's try again
Надо признать, что наше сообщество с немалой правдоподобностью напоминает мертворожденного ребенка. Ну что ж, можно пожать плечами и сказать: "первый блин комом". Однако, мне совсем не нравится такой подход. Что же делать? Во-первых, я вернулся в ЖЖ, а это уже немало. Во-вторых, почитав комментарии здесь и в других сообществах, я решил воспринять критику, тем более она была конструктивной. В основном жаловались на то, что сообщество посвящено только Windows и только С++. Что ж, давайте уберем это ограничение, и посмотрим что получится. Засим торжественно объявляю:

1) Снимаются ограничения на язык программирования
2) Снимаются ограничения на платформы
3) Разрешается некоторая доля оффтопика, вроде анекдотов на тему GUI, usability etc. Только знайте меру.

В связи с вышеуказанными изменениями, огромная просьба использовать теги: c++, bc++, delphi, c#, com, wpf, wtl, offtopic, fun и что там еще будет к месту.

И поактивнее господа. Начнем постить сюда, всем будет интереснее и веселее. В конце концов, сообщество нужное, и очень жаль, что оно просто умрет.
Friday, February 9th, 2007
11:48 pm
[idispatch]
Image
Layout manager
Hello, Everyone!

My first post to this community, so please be kind:)

So, I am searching for a simple layout manager for my dialog based application. I estimate there will be a big number of dialogs in the application (and to this point the specification is not clear in details).
I'd prefer to layout the controls in Java way, i.e. to have a container (pane) where I would be able to pack controls and layout them with flexible configurations (box, grid, etc..).
On Windows i have to draw each dialog with explicit coordinates, this is another approach of making a fixed layout. Recently, in .Net they allow to do anchoring and provide some sort of a layout manager, with docking and anchoring. All I want to have a very lightweight analog for my Windows application. I do not need heavy cross platform solutions and all-can-do solutions, like TCL, wxWindows, etc. All I want is to have a simple set of classes, preferably in C++ template style, in a small number of files.

There should be a simple way to arrange the controls within the container programmatically. The main constraint is to have a lite and powerful set of existing classes so I won't need to reinvent the bicycle.

Does anybody uses something like that already?
Thank you.
Saturday, February 10th, 2007
4:26 am
[gui_moderator]
Image
C++ Tricks: Функция в функции
Никогда не жалел о том, что в свое время перешел с Паскаля на С++. Лишь двух вещей мне нехватало в С++: оператора with .. do и возможности определять локальные функции. К первому я привык, а вторую проблему оказалось возможным элегантно решить с помощю unnamed-структур.
Как?Collapse )
2:22 am
[gui_moderator]
Image
The Old New Thing
Позволю себе порекомендовать блог Раймонда Чена "The Old New Thing".
Он посвящен не только GUI, однако вопросы программирования графического интерфейса пользователя для Windows подымаются в нем очень часто.
Наслаждайтесь. И не забывайте делиться своими ссылками.
12:55 am
[gui_moderator]
Image
Launched!
Я был удивлен не найдя не только сообщества, посвященного программированию GUI, но даже достойного блога на данную тему. Решил заполнить пробел и создать Imagegui_programming. Приглашаю всех делиться мыслями, статьями, обзорами и тем, что на Ваш взгляд, будет интересно для прочтения и полезно для профессионального роста.

Правила сообществаCollapse )
About LiveJournal.com
Image