Каковы мои варианты создания настольного приложения с веб-технологиями, которые должны вызывать процесс на клиенте? - PullRequest
0 голосов
/ 30 сентября 2011

У меня есть локальное настольное приложение, которое нуждается в пересмотре пользовательского интерфейса, данные в этом приложении в значительной степени основаны на внутренней БД, и, похоже, лучшими инструментами для создания удобного пользовательского интерфейса для такой системы является ее создание. как веб-приложение.

Однако основная функция этого инструмента - сделать так, чтобы пользователь сделал выбор из списка, а затем использовал его для запуска синхронизации исполнения на своем локальном компьютере.

Это приложение должно работать как на Windows, так и на OSX, поэтому я сначала подумал о том, чтобы использовать кроссплатформенную среду графического интерфейса, такую ​​как wxWidgets, и встроить веб-представление для всех функций, кроме этапа синхронизации. Однако все веб-представления на основе wx, которые я обнаружил, кажутся очень ограниченными.

Итак, каковы мои другие варианты? В любом случае можно вызвать синхронизацию p4 из браузера или локальное приложение со встроенным веб-представлением - мой единственный приемлемый выбор?

Ответы [ 2 ]

2 голосов
/ 01 октября 2011

Возможно, вы сможете использовать P4 Javascript API и создать свое приложение как инструмент, доступный из P4V.Не уверен, что P4V-часть будет для вас преградой.

Я не уверен, что Javascript API доступен вне контекста P4V.Если это так, то вы сможете использовать это для создания любого веб-приложения, которое вам нужно.

0 голосов
/ 22 декабря 2011

Я закончил тем, что написал плагин для браузера, который вызывает операцию синхронизации p4 для решения этой проблемы.

Я использовал фреймворк firebreath , чтобы предоставить javascript api, который позволяет мне вызывать синхронизацию p4 на локальном компьютере пользователя.Для этого мне нужно было иметь возможность иметь p4.ini, уже присутствующий на локальном компьютере, и знать его местоположение, или мне нужно было передать рабочую область user / pass и client в плагин.

Это работает честнохорошо, но это не так чисто, как хотелось бы, передача вывода процесса синхронизации в браузер кажется медленной, а вывод, кажется, прокручивается намного дольше, чем процесс запускается.

...