GUI десктопной утилиты, на чем?
От: remotecpp  
Дата: 23.06.14 14:05
Оценка: 1 (1)
В составе моего продукта есть просмотрщик внутреннего формата.
Написан был очень давно, на С++ c использованием древней библиотеки, которая, в свою очередь, завязана на MFC.

Это несет ряд сложностей с поддержкой, исправлением и добавлением новых фич. Есть потребность переписать GUI.

Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.
Re: GUI десктопной утилиты, на чем?
От: YuriKobets Россия http://www.truelaunchbar.com — замена панели быстрого запуска
Дата: 23.06.14 14:18
Оценка: 17 (4)
Здравствуйте, remotecpp, Вы писали:

R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.


А что нужно от гуя-то? А может там одна формочка с гридом — и ради этой красоты городить огород?
А то вот сейчас порекомендую свою либу с неблагозвучным названием — там все нативненько и кучеряво
Re[2]: GUI десктопной утилиты, на чем?
От: remotecpp  
Дата: 23.06.14 14:23
Оценка:
YK>А что нужно от гуя-то? А может там одна формочка с гридом — и ради этой красоты городить огород?

Это вьюер, наподобие Acrobat Reader.
Re[3]: GUI десктопной утилиты, на чем?
От: YuriKobets Россия http://www.truelaunchbar.com — замена панели быстрого запуска
Дата: 23.06.14 15:14
Оценка:
Здравствуйте, remotecpp, Вы писали:

R>Это вьюер, наподобие Acrobat Reader.


А что там такого навороченного, что нужно что-то специальное? Из всего приходит в голову только "навороченный" тулбар
По моему, данный функционал можно сделать на чем угодно, хоть на голом WinAPI. Делай на том, что хорошо знаешь и будет все тип-топ.
Re[2]: GUI десктопной утилиты, на чем?
От: okman Беларусь https://searchinform.ru/
Дата: 23.06.14 18:09
Оценка:
Здравствуйте, YuriKobets, Вы писали:

YK>А то вот сейчас порекомендую свою либу с неблагозвучным названием — там все нативненько и кучеряво


Заинтересовался.
А на странице "download" пусто (заходил из-под FF и IE)...
Re[3]: GUI десктопной утилиты, на чем?
От: YuriKobets Россия http://www.truelaunchbar.com — замена панели быстрого запуска
Дата: 23.06.14 18:30
Оценка:
Здравствуйте, okman, Вы писали:

O>Заинтересовался.

O>А на странице "download" пусто (заходил из-под FF и IE)...

Библиотека доступна только в исходниках через SVN. Если нужна помощь пиши в личку, буду рад помочь.
Re[4]: GUI десктопной утилиты, на чем?
От: jasoni СССР  
Дата: 24.06.14 05:02
Оценка:
Здравствуйте, YuriKobets, Вы писали:
YK>Библиотека доступна только в исходниках через SVN. Если нужна помощь пиши в личку, буду рад помочь.

опенсорс опенсорсу рознь. под какой лицензией либа (не нашел в репозитории лицензии)? жпл/лжпл/мит/бсд/и т.п.?
Re: GUI десктопной утилиты, на чем?
От: CEMb  
Дата: 24.06.14 07:01
Оценка: 3 (3) +1
Здравствуйте, remotecpp, Вы писали:

R>В составе моего продукта есть просмотрщик внутреннего формата.

R>Написан был очень давно, на С++ c использованием древней библиотеки, которая, в свою очередь, завязана на MFC.

R>Это несет ряд сложностей с поддержкой, исправлением и добавлением новых фич. Есть потребность переписать GUI.


R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.


Если бы я сейчас сел делать с нуля GUI-приложение, взял бы QT. Красиво, удобно (не смотрел ещё), вроде даже с открытыми исходниками.
Кросс-платформенность вначале всегда не нужна, а потом поздно...

А MFC лучше вообще убрать сразу
Re[2]: GUI десктопной утилиты, на чем?
От: jasoni СССР  
Дата: 24.06.14 08:08
Оценка: 19 (3)
Здравствуйте, CEMb, Вы писали:

Сейчас пилю шароварку-тулзовину на Qt, завелась под вин/мак/линукс практически сразу. Были ньюансы с:
1. clang (не поддерживает OpenMP), но для мака я его быстро заменил на GCD.
2. размером wchar_t (для visual studio-компилера 2 байта, а для g++ и clang — 4 байта), пришлось писать конвертор UTF8 <-> UTF16 <-> UTF32 (это для ядра программы, где Qt не использовал). Возможно, надо было устанавливать версию Qt для Windows с MinGW.
3. размер штифтов в GUI контролах для win/mac/linux — разный, из-за чего в *nix системах не влазит текст. пришлось подшаманить.
4. некоторые стандартные контролы выглядят по-разному, поэтому иногда несуразная компоновка получается.
5. не такая удобная отладка как в VisualStudio
6. При использовании LGPL-лицензии на Qt — достаточно большой вес дополнительных Qt-библиотек, отчего инсталлятор получился около 35 MB.

плюсы:
1. Достаточно удобный интерфейс QtCreator
2. Встроенная поддержка Git (пользуюсь Bitbucket в качестве сервиса удаленного репозитория)
3. Можно доустановить Qt Installer Framework, сделать инсталлятор. Пока сделал простенький под Windows, для других систем инсталлер не собирал.

Классы Qt старался использовать только для интерфейса, само ядро программы — на C++ и STL (в основном, для контейнеров). Хотел поначалу собрать ядро как либу, но потом просто попользовал классы ядра — так, как мне показалось, легче дебажить и защита ядра лучше.
Re[3]: GUI десктопной утилиты, на чем?
От: remotecpp  
Дата: 24.06.14 09:04
Оценка:
Здравствуйте, jasoni, Вы писали:

J>Здравствуйте, CEMb, Вы писали:


J>Сейчас пилю шароварку-тулзовину на Qt, завелась под вин/мак/линукс практически сразу. Были ньюансы с:

[...]

J>плюсы:

J>1. Достаточно удобный интерфейс QtCreator
J>2. Встроенная поддержка Git (пользуюсь Bitbucket в качестве сервиса удаленного репозитория)
J>3. Можно доустановить Qt Installer Framework, сделать инсталлятор. Пока сделал простенький под Windows, для других систем инсталлер не собирал.

Спасибо за отзыв.
Но теперь точно Qt не стану пробовать. Плюсов никаких не вижу, зато куча граблей.
Re[5]: GUI десктопной утилиты, на чем?
От: Берсерк СССР  
Дата: 24.06.14 09:06
Оценка:
Здравствуйте, jasoni, Вы писали:

J>опенсорс опенсорсу рознь. под какой лицензией либа (не нашел в репозитории лицензии)? жпл/лжпл/мит/бсд/и т.п.?


Там все есть:

Code license
Mozilla Public License 1.1
https://code.google.com/p/xuilib/

Форум без флуда — как без еды посуда
Re[3]: GUI десктопной утилиты, на чем?
От: Берсерк СССР  
Дата: 24.06.14 09:12
Оценка: +1
Здравствуйте, jasoni, Вы писали:

J>Классы Qt старался использовать только для интерфейса, само ядро программы — на C++ и STL (в основном, для контейнеров). Хотел поначалу собрать ядро как либу, но потом просто попользовал классы ядра — так, как мне показалось, легче дебажить и защита ядра лучше.


А мне вот Qt в свое время не особо понравилось в плане UI для Windows. Тормозило заметно, плюс UI у них полностью свой (Qt не используется стандартные контролы а рисует все сама). То есть пока делаешь что то простенькое в плане UI — Qt отлично работает, как только начинаешь делать что-то завязанное на Windows то сразу огребаешь кучу проблем и костылей. Пока пришел к выводу что для UI лучше всегда использовать нативные фреймворки, заточнные под конкретную платформу.
Форум без флуда — как без еды посуда
Re: GUI десктопной утилиты, на чем?
От: chebum Польша  
Дата: 24.06.14 12:04
Оценка: 10 (1)
Я бы смотрел в сторону HTML+JS. Например, обернутая в Chrome Embedded Framework.
Плюсы такие:
* Быстрая отрисовка "из коробки".
* Для большинства видов верстки есть готовые решения в интернете.
* Большое количество разработчиков/фрилансеров. Сможете заутсорсить часть разработки на сторону.
* Поддержка Hi-Dpi "из-коробки".
* Большое количество библиотек и UI компонентов (Bootstrap, Ext JS, PhoneJS, Kendo UI...).
* Съедобные IDE. Например, WebStorm. Рабочий рефакторинг всего 49 за индивидуального разработчика.
* Если есть сложности с прототипным языком программирования, используйте TypeScript.
* Если наткнетесь на проблемы с браузером, можно будет слезть на другой или написать свой уровень абстракции, а JS гонять в V8.

Здравствуйте, remotecpp, Вы писали:
R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.
Re: GUI десктопной утилиты, на чем?
От: const_volatile  
Дата: 24.06.14 13:39
Оценка:
Здравствуйте, remotecpp, Вы писали:

R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.


небольшая справка по голосованиям, проводившимся на rsdn за последние годы (в голосованиях можно было выбрать больше одного варианта):

2008
Автор: Tonal-
Дата: 27.08.08
Вопрос: Какую библиотеку GUI для Windows вы в основном используете?

WinAPI 23%
MFC    29%
.Net   53%
Qt     17%


2011
Автор: fk0
Дата: 26.02.11
Вопрос: Какой GUI-тулкит вы предпочитаете?

WinAPI 19%
MFC    22%
.Net   34%
Qt     38%


2013
Автор: Unhandled_Exception
Дата: 15.02.13
Вопрос: Интересует, какими фреймворками пользуется современный шароварщик для создания GUI.

WinAPI 14%
MFC    18%
.Net   45%
Qt     22%

за .Net считались и WinForms, и WPF.

далеко идущих выводов из этих цифр делать не стоит (например, в 2013 в опросе упомянуты ещё и delphi, а не только c++ тулкиты), но составить приблизительное представление о популярности тулкитов можно.
Re: GUI десктопной утилиты, на чем?
От: maks__  
Дата: 24.06.14 13:44
Оценка:
R>В составе моего продукта есть просмотрщик внутреннего формата.
R>Написан был очень давно, на С++ c использованием древней библиотеки, которая, в свою очередь, завязана на MFC.

R>Это несет ряд сложностей с поддержкой, исправлением и добавлением новых фич. Есть потребность переписать GUI.


R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.


Разумных альтернатив Си-Шарпу нет.
Внутренний формат — это видео?
Re[2]: GUI десктопной утилиты, на чем?
От: vf  
Дата: 24.06.14 18:10
Оценка: +1
Здравствуйте, const_volatile, Вы писали:

_>далеко идущих выводов из этих цифр делать не стоит (например, в 2013 в опросе упомянуты ещё и delphi, а не только c++ тулкиты), но составить приблизительное представление о популярности тулкитов можно.


...о популярности тулкитов на рсдн. На хабре, ИМХО, такое голосование будет сильно перекошено в сторону html5/node-js.
Re: GUI десктопной утилиты, на чем?
От: /aka/ СССР  
Дата: 24.06.14 19:45
Оценка:
Здравствуйте, remotecpp, Вы писали:

R>Есть потребность переписать GUI.

R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.

HTMLayout. HTML, но не браузер. С++. Техподдержка на русском.
Re[2]: GUI десктопной утилиты, на чем?
От: c-smile Канада http://terrainformatica.com
Дата: 25.06.14 04:28
Оценка:
Здравствуйте, /aka/, Вы писали:

A>HTMLayout. HTML, но не браузер. С++. Техподдержка на русском.


Sciter на самом деле, нынче это наше всё.

Примеры UI
Re[2]: GUI десктопной утилиты, на чем?
От: c-smile Канада http://terrainformatica.com
Дата: 25.06.14 04:32
Оценка:
Здравствуйте, /aka/, Вы писали:

A>HTMLayout. HTML, но не браузер. С++. Техподдержка на русском.


И еще про Sciter, работает на Win, Mac OSX и Linux с одним и тем же C/C++ API.
Re[3]: GUI десктопной утилиты, на чем?
От: BulatZiganshin  
Дата: 25.06.14 07:02
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>И еще про Sciter, работает на Win, Mac OSX и Linux с одним и тем же C/C++ API.


таки допилил linux? здорово!
Люди, я люблю вас! Будьте бдительны!!!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.