jphp-group / develnext Goto Github PK
View Code? Open in Web Editor NEWJavaFX and IDE for JPHP (only russian localization, english - in progress)
Home Page: http://develnext.org
License: Mozilla Public License 2.0
JavaFX and IDE for JPHP (only russian localization, english - in progress)
Home Page: http://develnext.org
License: Mozilla Public License 2.0
Каким-то странным образом содержимое файлов с поведением становится пустым, возможно по причине утери данных, отключения света и т.д, но возможно и нет. Нужно предотвратить данный тип ошибки, сообщать пользователю, что файл поврежден и предлагать создать новый чистый файл.
php\format\ProcessorException: Content is not allowed in prolog.
in file 'res://php/gui/framework/behaviour/custom/BehaviourLoader.php', on line 86
#0 {closure}() called at [res://ide/editors/WelcomeEditor.php:41]
#1 ide\Ide->executeCommand() called at [res://ide/editors/WelcomeEditor.php:42]
#2 ide\commands\OpenProjectCommand->onExecute() called at [res://ide/Ide.php:658]
#3 ide\forms\OpenProjectForm->showDialog() called at [res://ide/commands/OpenProjectCommand.php:42]
#4 php\gui\UXForm->showAndWait() called at [res://ide/forms/mixins/DialogFormMixin.php:30]
#5 {closure}() called at [res://timer/AccurateTimer.php:158]
#6 {closure}() called at [res://timer/AccurateTimer.php:159]
#7 ide\systems\ProjectSystem::open() called at [res://ide/forms/OpenProjectForm.php:292]
#8 ide\project\Project->open() called at [res://ide/systems/ProjectSystem.php:247]
#9 ide\systems\FileSystem::open() called at [res://ide/project/Project.php:583]
#10 ide\systems\FileSystem::fetchEditor() called at [res://ide/systems/FileSystem.php:235]
#11 ide\editors\FormEditor->load() called at [res://ide/systems/FileSystem.php:212]
#12 ide\editors\FormEditor->loadOthers() called at [res://ide/editors/FormEditor.php:455]
#13 ide\behaviour\IdeBehaviourManager->load() called at [res://ide/editors/FormEditor.php:432]
#14 php\gui\framework\behaviour\custom\BehaviourLoader::load() called at [res://ide/behaviour/IdeBehaviourManager.php:194]
#15 php\xml\XmlProcessor->parse() called at [res://php/gui/framework/behaviour/custom/BehaviourLoader.php:86]
#16 {main}
Ошибка в файле 'res://ide/formats/form/context/DeleteMenuCommand.php'
-> на строке 49
#0 {closure}() called at [res://ide/editors/menu/ContextMenu.php:96]
#1 ide\formats\form\context\DeleteMenuCommand->onExecute() called at [res://ide/editors/menu/ContextMenu.php:97]
#2 php\gui\designer\UXDesigner->selectNode() called at [res://ide/formats/form/context/DeleteMenuCommand.php:49]
#3 {main}
Реализовать модульный компонент для ИНИ файлов, создать специальную вкладку компонентов "Хранилища данных".
Запретить добавление в игровую комнату вообще, т.к. она предназначается для загрузки сцен из других формю
Проект где воспроизводится: http://develnext.org/project/IMhXNJjlWJ
После такого, среда перестает нормально функционировать.
При создании проекта на Mac OS X среда полностью зависает, а в терминале спустя некоторое время появляется следующая ошибка:
INFO [ide.project.Project] (2016-01-25 20:27:01) Project is saved.
INFO [ide.editors.AbstractEditor] (2016-01-25 20:27:02) Open editor for: /Users/wielski/Documents/DevelNext/Projects/wURL/src/.forms/MainForm.fxml
INFO [ide.editors.FormEditor] (2016-01-25 20:27:02) Start refresh
INFO [ide.editors.FormEditor] (2016-01-25 20:27:02) Finish refresh
2016-01-25 20:27:05.856 java[21747:398194] Communications error: <OS_xpc_error: <error: 0x7fff7809db60> { count = 1, contents =
"XPCErrorDescription" => <string: 0x7fff7809dfa8> { length = 22, contents = "Connection interrupted" }
}>
Скрин http://cs629525.vk.me/v629525363/3ca23/vo2YSI-rYcA.jpg
Воспроизведение
Реализовать аналогичный сервису "поиск иконок" новый сервис "поиск картинок". Также требуется база картинок под этот сервис из игровых спрайтов и других изображений (например фоны). В диалоге выбора иконки/картинки реализовать дополнительную вкладку "Поиск картинок и спрайтов".
Реализовать механизм автоматической очистки файлов кеша среды из папки {home}/.DevelNext/cache
, удалять старые файлы, которые были созданы более 1 недели назад. Также возможно подумать о том, чтобы обновлять время изменения файлов при их запросе средой, чтобы дать знать системе, что эти файлы из кеша еще используются.
Class 'Json' not found
Ошибка в файле 'res://ide/account/api/ServiceResponse.php'
-> на строке 67
#0 {closure}() called at [res://ide/account/api/AbstractService.php:325]
#1 {closure}() called at [res://ide/account/api/AbstractService.php:327]
#2 ide\account\api\ServiceResponse->toLog() called at [res://ide/commands/ShareProjectCommand.php:1]
#3 {main}
Редко но возникает ошибка в автодополнении:
php\lang\JavaException: java.lang.NullPointerException
in file 'res://ide/autocomplete/ui/AutoCompletePane.php', on line 279
#0 {closure}() called at [res://ide/autocomplete/ui/AutoCompletePane.php:371]
#1 php\gui\designer\UXSyntaxTextArea->insertToCaret() called at [res://ide/autocomplete/ui/AutoCompletePane.php:279]
#2 {main}
Расширение jphp-orientdb-ext
, + модульный компонент для коннекта к этой базе.
class A
{
public static function __callStatic($method, $args = [])
{
echo get_called_class() . '::' . $method . "\n";
}
}
class B extends A {}
\php\gui\UXApplication::launch(function(\php\gui\UXForm $form) {
$button = new \php\gui\UXButton();
$button->text = 'TEST!';
$button->on('click', function(){ B::test(); });
$form->add($button);
$form->show();
});
B::test
Fatal error: Uncaught exception 'EngineException' with message 'Missing argument 1 ($method) for A::__callStatic()' in JPHP-INF/.bootstrap.php on line 24, position 10
Stack Trace:
#0 {closure}() called at [JPHP-INF/.bootstrap.php:23]
#1 {main}
thrown in JPHP-INF/.bootstrap.php on line 24
php\io\IOException: Cannot seek to 0
in file 'res://ide/utils/PhpParser.php', on line 580
#0 {closure}() called at [res://ide/editors/form/IdeEventListPane.php:423]
#1 {closure}() called at [res://ide/editors/form/IdeEventListPane.php:424]
#2 ide\formats\form\SourceEventManager->addBind() called at [res://ide/editors/form/IdeEventListPane.php:712]
#3 ide\utils\PhpParser->addUseImports() called at [res://ide/formats/form/SourceEventManager.php:392]
#4 ide\utils\PhpParser->findUseImports() called at [res://ide/utils/PhpParser.php:559]
#5 ide\utils\PhpParser->getTokenizer() called at [res://ide/utils/PhpParser.php:459]
#6 php\io\MiscStream->seek() called at [res://ide/utils/PhpParser.php:580]
#7 {main}
В диалоге "открытие проекта" реализовать новую вкладку, для открытия опубликованных проектов на сайте develnext.org, не забыть про функцию удаления проекта из списка (которая будет удалять проект с сайта develnext.org). Возможно необходима функция простого скрытия проекта в этом списке, если пользователь не захочет удалять проект, но не захочет видеть его в своем списке проектов.
Сортировка проектов в порядке самые последние обновленные.
Система для возможности добавления компонентам различных эффектов javafx, например drow shadow (тень), blur и многое другое. Реализовать через поведения.
Бага не критичная, но надо убрать этот exception:
php\lang\IllegalStateException: java.lang.IllegalStateException: Platform.exit has been called
in file 'res://ide/account/api/AbstractService.php', on line 334
in project ''
#0 script\TimerScript->doInterval() called at [res://script/TimerScript.php:98]
#1 php\gui\framework\AbstractScript->trigger() called at [res://script/TimerScript.php:126]
#2 ide\account\ServiceManager->updateStatus() called at [res://php/gui/framework/AbstractScript.php:170]
#3 ide\account\api\AbstractService->statusAsync() called at [res://ide/account/ServiceManager.php:214]
#4 ide\account\api\AbstractService->__call() called at [res://ide/account/ServiceManager.php:214]
#5 uiLater() called at [res://ide/account/api/AbstractService.php:334]
#6 {main}
Добавьте в Alpha-5 таблицы, ну прям без них за среду и браться не получается
При закрытии вкладки Welcome в DevelNext Beta-1 появляется ошибка:
EngineException
Cannot call 'getFormEditors' method of non-object
Ошибка в файле 'res://ide/project/control/FormsProjectControlPane.php'
-> на строке 70
#0 {closure}() called at [res://ide/ui/ListMenu.php:20]
#1 ide\ui\ListMenu->cellRender() called at [res://ide/ui/ListMenu.php:21]
#2 ide\project\control\AbstractEditorsProjectControlPane->getMenuCount() called at [res://ide/ui/ListMenu.php:51]
#3 ide\project\control\FormsProjectControlPane->getItems() called at [res://ide/project/control/AbstractEditorsProjectControlPane.php:91]
#4 {main}
Проект, где воспроизводится http://develnext.org/project/jGKdrXHNCX
При drag-n-drop объектов в визуальном редакторе добавить опцию, включающую показ окантовки при перемещении объекта. Некоторые объекты, такие как "текст", неудобно перемещать без окантовки.
Hi,
I'm really enthusiastic with your project. There are a lot of things i want to do with Jphp.
When will be the v0.7.2 release date?
Have a nice day.
Как их использовать здесь?
По нажатию на кнопку, мы должны переходить на контент таба, внутри которого списком должны отображаться варианты того что можно создать (форма, модуль и т.п.). Необходимо реализовать расширяемую систему по добавлению пунктов в этот таб.
Если вкладка "Документация" уже была открыта, то при нахождении в другой вкладке и осуществлении поиска (нажатия на кнопку найти), поиск осуществляется, но на вкладку не перекидывает.
Группа хранилище данных
, для хранения и чтения данных из xml.
Если в конструкторе модуля создать экземпляр какого-нибудь gui класса, программа не соберётся.
Минимальный код:
class MainModule extends AbstractModule
{
public function __construct(){
$a = new \php\gui\UXButton;
}
}
выкинет JavaException: ExceptionInInitializerError ...
Если в DN создать много форм,то "+" исчезает и создать новую форму нельзя. Если создать форму с помощью списка,то создаётся форма без названия и вообще без всего.
Группа Хранилище данных
, альтернатива ини-файлам.
От себя могу сказать, что это типичная проблема с Ubuntu, где окна, которые не имеют минимальные размеры ведут себя непредсказуемо.
Код:
function doButtonAction(UXEvent $event = null)
{
$a = ['a', 'b', 'c'];
$this->method($a);
var_dump($a); // NULL ???
}
public function method()
{
func_get_args();
}
Иногда воспроизводится, очень редко:
Причина бага неясна.
php\lang\JavaException: java.lang.NullPointerException
in file 'res://ide/editors/FormEditor.php', on line 844
#0 {closure}() called at [res://ide/editors/value/TextPropertyEditor.php:43]
#1 ide\editors\value\IdPropertyEditor->showDialog() called at [res://ide/editors/value/TextPropertyEditor.php:44]
#2 ide\editors\value\TextPropertyEditor->showDialog() called at [res://ide/editors/value/IdPropertyEditor.php:47]
#3 ide\editors\value\IdPropertyEditor->applyValue() called at [res://ide/editors/value/TextPropertyEditor.php:74]
#4 ide\systems\RefactorSystem::rename() called at [res://ide/editors/value/IdPropertyEditor.php:55]
#5 ide\project\ProjectRefactorManager->rename() called at [res://ide/systems/RefactorSystem.php:30]
#6 ide\project\ProjectRefactorManager->trigger() called at [res://ide/project/ProjectRefactorManager.php:30]
#7 {closure}() called at [res://ide/misc/EventHandlerBehaviour.php:29]
#8 ide\editors\FormEditor->changeNodeId() called at [res://ide/formats/GuiFormFormat.php:285]
#9 php\gui\UXNode->lookup() called at [res://ide/editors/FormEditor.php:844]
#10 {main}
С возможностью добавления в проект, удаления из проекта.
Например у форм и модулей есть свои свойства, у форм title
, поэтому именовать так компоненты нельзя, необходимо запретить так делать на уровне IDE в диалоге переименования.
Реализовать автодополнение для выражений $this->form('FormName')->...
Перетащил объект в угол, зажал вправо, теперь объект как бы движется вправо пока не достигнет границ, потом слева опять начинает, дак вот, а если при этом (зажав кнопку вправо) потерять фокус с формы, то объект продолжит уже без моих команд ехать вправо, так происходит с любых направлением.
При открытии проектов с сайта develnext, убрать открытие последнего проекта.
Скорее всего он возвращает value, а не text.
Возникают иногда синтаксические ошибки, которые никак не показываются.
Exception in thread "main" java.lang.NoClassDefFoundError: javafx/scene/input/KeyCombination
at org.develnext.jphp.ext.javafx.bind.KeyCombinationMemoryOperation.getOperationClasses(KeyCombinationMemoryOperation.java:13)
at php.runtime.memory.support.MemoryOperation.register(MemoryOperation.java:235)
at php.runtime.ext.support.Extension.registerMemoryOperation(Extension.java:102)
at org.develnext.jphp.ext.javafx.JavaFXExtension.onRegister(JavaFXExtension.java:75)
at php.runtime.env.CompileScope.registerExtension(CompileScope.java:332)
at php.runtime.env.CompileScope.registerExtension(CompileScope.java:292)
at php.runtime.env.CompileScope.registerExtension(CompileScope.java:284)
at php.runtime.launcher.Launcher.initExtensions(Launcher.java:219)
at php.runtime.launcher.Launcher.run(Launcher.java:247)
at php.runtime.launcher.Launcher.run(Launcher.java:241)
at php.runtime.launcher.Launcher.run(Launcher.java:237)
at php.runtime.launcher.Launcher.main(Launcher.java:328)
Caused by: java.lang.ClassNotFoundException: javafx.scene.input.KeyCombination
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 12 more
Компиляция проекта в байткод (в файлы phb), исходники надо удалять.
Если в редакторе добавить из прототипов объект, потом его скопировать - получится копия-клон. Эта копия клон в дальнейшем в редакторе не копируется и не вставляется.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.