Giter VIP home page Giter VIP logo

gsoc-nui-editor's People

Contributors

rzats avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

gsoc-nui-editor's Issues

Canvas & file selection implementation

TODO

  • Populate the interface file selection menu (see #3) by a generated list of asset files.
  • Display the screen being edited
  • Resolve initialisation oddities
  • Reload when edited

UITreeView widget

A widget implementing a Tree View - a common visual representation of an informational hierarchy - as a NUI CoreWidget override.

TODO

  • In-memory tree data structure (see: JavaFX TreeItem, Swing TreeModel)
  • Initial TreeView class
  • Node addition
  • Node deletion
  • Node movement
  • Node copying & pasting
  • InteractionListener overrides for node interactivity
  • Save expanded state for nodes
  • Readonly flag
  • Testing and documentation

Misc. editor improvements

  • Close button as an alternative to ESC/F10
  • "Delete" context menu option as an alternative to Delete

Core editor interface definitions

NUI-based interface definition files (*.ui and *.skin assets) to be used by the editor.

TODO

  • Button bindings and command line options to activate the NUI editor
  • Control element to hide the active NUI editor
  • Interface file selection menu
  • JSON tree view window
  • Make the window free-floating Replaced by a static sidebar
  • Editor preferences menu
  • Copy Interface button

Interface skin editor

A skin editor tree view similar to the interface editor tree view.

TODO

  • Create modified interface definitions (see #3)
  • Update widget icons (see #7)
  • Update smart property addition (see #8)

Inline property editor

A further update to the core UITreeView widget (see #1).

TODO

  • Make leaf nodes editable when selected (inline UITextEntry)
  • Type validation for entered values
  • Update asset file when value is changed

Further tree view / screen view binding

TODO

  • Clicking a widget on the tree view should select/outline it on the screen view. (getChildRect()?)
  • Clicking a widget on the screen view should select it on the tree view (Canvas proxying, alternative widget trees or interaction listeners)

Widget icon support

Yet another update to the core UITreeView widget (see #1).

TODO

  • Asset hooks for widget icons
  • Icon lookup and rendering
  • Create icons for common properties
  • Option to disable icons

Smart property addition

Property addition context menu with dynamically generated custom options.

TODO

  • Determine how to obtain JSON value list from a class (annotations?)
  • Add properties to context menu
  • Autogenerate properties in asset file
  • Finish TODO stuff in related Terasology PR

JSON/UITreeView adapter

Binding the UITreeView to a JSON file.

TODO

  • Generate a UITreeView based on a JSON file
  • Generate a JSON file based on the state of a UITreeView
  • Testing and documentation

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.