Git Product home page Git Product logo

vis-ui's People

Contributors

alexaut avatar asilkin1 avatar azurvii avatar blunderchips avatar bploeckelman avatar ccmb2r avatar code-disaster avatar crykn avatar cypherdare avatar czyzby avatar dgzt avatar ericnondahl avatar favorlock avatar fgnm avatar intrigus avatar keesvandieren avatar kotcrab avatar languageagnostic avatar luisfonsivevo avatar lyze237 avatar metaphore avatar pavelpuchok avatar piotr-j avatar snehks avatar strongjoshua avatar strubelz avatar wickedshell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vis-ui's Issues

Add editor gizmos

To allows easily scale/rotate/move objects. Don't forget about snapping when holding shift/ctrl. Snap values should be configurable.

Progress:

  • RotateTool
  • ScaleTool

MenuItem: visual glitch

Seems to happen only with a certain label text length, and (or?) with a shortcut set. The menu item background leaks left and right of the outlined area.

screen shot 2015-10-02 at 14 18 38

VisEditor crashes if you remove shader.vert

If you either remove shader.vert (what you normally shouldn't do) or paste shader.vert (into assets\shader) it crashes, because it tries to access shader.frag, without checking if shader.frag exists.

com.badlogic.gdx.utils.GdxRuntimeException: Error reading file: C:\Users\Simon\Downloads\visTest\vis\assets\shader\font (2).frag (Absolute)
    at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:144)
    at com.badlogic.gdx.files.FileHandle.readString(FileHandle.java:202)
    at com.badlogic.gdx.files.FileHandle.readString(FileHandle.java:191)
    at com.badlogic.gdx.graphics.glutils.ShaderProgram.<init>(ShaderProgram.java:165)
    at com.kotcrab.vis.editor.module.project.ShaderCacheModule.reloadShaders(ShaderCacheModule.java:101)
    at com.kotcrab.vis.editor.module.project.ShaderCacheModule.access$1(ShaderCacheModule.java:60)
    at com.kotcrab.vis.editor.module.project.ShaderCacheModule$ReloadShaderTask.run(ShaderCacheModule.java:135)
    at com.badlogic.gdx.backends.lwjgl.LwjglCanvas.executeRunnables(LwjglCanvas.java:261)
    at com.badlogic.gdx.backends.lwjgl.LwjglCanvas$3.run(LwjglCanvas.java:227)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:749)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:702)
    at java.awt.EventQueue$3.run(EventQueue.java:696)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:719)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.io.FileNotFoundException: C:\Users\Simon\Downloads\visTest\vis\assets\shader\font (2).frag (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:140)
    ... 22 more

Crash on opening plugins folder from settings dialog

Editor crashs at the time when the 'Open Plugin Folder' button has been clicked in Settings dialog.

I got this error message with stacktrace:

java.lang.IllegalArgumentException: The file: home/stquote/Downloads/VisUIEditor doesn't exist.
    at java.awt.Desktop.checkFileValidation(Desktop.java:210)
    at java.awt.Desktop.open(Desktop.java:270)
    at com.kotcrab.vis.editor.util.FileUtils.browse(FileUtils.java:74)
    at com.kotcrab.vis.editor.module.editor.PluginLoaderModule$PluginSettingsModule.lambda$buildTable$163(PluginLoaderModule.java:235)
    at com.kotcrab.vis.editor.module.editor.PluginLoaderModule$PluginSettingsModule$$Lambda$55/1845515247.changed(Unknown Source)
    at com.kotcrab.vis.editor.util.gdx.VisChangeListener.changed(VisChangeListener.java:35)
    at com.badlogic.gdx.scenes.scene2d.utils.ChangeListener.handle(ChangeListener.java:28)
    at com.badlogic.gdx.scenes.scene2d.Actor.notify(Actor.java:181)
    at com.badlogic.gdx.scenes.scene2d.Actor.fire(Actor.java:146)
    at com.badlogic.gdx.scenes.scene2d.ui.Button.setChecked(Button.java:123)
    at com.badlogic.gdx.scenes.scene2d.ui.Button$1.clicked(Button.java:91)
    at com.badlogic.gdx.scenes.scene2d.utils.ClickListener.touchUp(ClickListener.java:89)
    at com.badlogic.gdx.scenes.scene2d.InputListener.handle(InputListener.java:58)
    at com.badlogic.gdx.scenes.scene2d.Stage.touchUp(Stage.java:348)
    at com.badlogic.gdx.backends.lwjgl.LwjglInput.processEvents(LwjglInput.java:306)
    at com.badlogic.gdx.backends.lwjgl.LwjglCanvas$3.run(LwjglCanvas.java:234)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
[22:51][Fatal] java.lang.RuntimeException: No OpenGL context found in the current thread.
    at org.lwjgl.opengl.GLContext.getCapabilities(GLContext.java:124)
    at org.lwjgl.opengl.GL11.glDeleteTextures(GL11.java:732)
    at com.badlogic.gdx.backends.lwjgl.LwjglGL20.glDeleteTexture(LwjglGL20.java:248)
    at com.badlogic.gdx.graphics.GLTexture.delete(GLTexture.java:170)
    at com.badlogic.gdx.graphics.Texture.dispose(Texture.java:194)
    at com.kotcrab.vis.ui.widget.color.ColorPicker.dispose(ColorPicker.java:468)
    at com.kotcrab.vis.editor.module.editor.ColorPickerModule.dispose(ColorPickerModule.java:35)
    at com.kotcrab.vis.editor.module.ModuleContainer.dispose(ModuleContainer.java:191)
    at com.kotcrab.vis.editor.Editor.dispose(Editor.java:250)
    at com.badlogic.gdx.backends.lwjgl.LwjglCanvas$4.run(LwjglCanvas.java:309)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

In my case I have a path to plugins folder ''/home/lalala/vis/viseditor/Editor/target/plugins/", but in PluginLoaderModule class at this line used PLUGINS_FOLDER_PATH constant with "home/lalala/vis/viseditor/Editor/target/plugins/" value which which has not start with slash symbol.

It seems like a typo in JarUtils.java because PluginLoaderModule class uses this util method for initialize constant. I think substring method should have 0 in first argument. Like this: path = path.substring(0, path.lastIndexOf('/'));

I'm using Linux Mint, but I think this is not working in windows too.

So if I'm right, and all agree with me, I can make pull request for this :)

Add Vis Open Sans

Please add Vis Open Sans to this repository, so that everybody can add additional characters to their font.

Box2dLights support

General list of things needs to be done:

  • LightComponent
  • Runtime systems
  • Light settings dialog
    • SceneDeserializer: bump version code and handle null light settings data
  • Lighting switch button on toolbar
  • Creating point light
  • Creating cone light

Tint for TextEntity not apply after start of VisEditor

Hi, in VisEditor 2.6.0_SNAPSHOT 10-Nov-2015 tint color of TextEntity, that was set and saved in prev session , not apply after start new session. But if you change some parameter of TextEntity (for example scale), then saved tint color apply.

Cannot use 0.7.2, 0.7.3 or 0.7.4-SNAPSHOT

I am unable to use latest versions of VisUI,
always getting error:

Could not resolve all dependencies for configuration ':compile'.

Could not resolve com.kotcrab.vis:vis-ui:0.7.4-SNAPSHOT.
Required by:
Could not parse POM https://oss.sonatype.org/content/repositories/snapshots/com/kotcrab/vis/vis-ui/0.7.4-SNAPSHOT/vis-ui-0.7.4-20150427.154831-2.pom
> Could not find com.kotcrab.vis:vis-parent:0.0.2-SNAPSHOT.

And it seems others experienced similar issue.

is 0.0.2-SNAPSHOT in some other repo?

Needed add robovm.xml property for reflection

Currently getting reflection error unless I add the following to my robovm.xml file.

<forceLinkClasses>
  <pattern>com.kotcrab.vis.ui.widget.**</pattern>
</forceLinkClasses>

Could you add this to the read me? On IRC it's suggested that an included robovm.xml file in the project would get merged, so people wouldn't even need to add this.

A means to stop editing on VisTextField (or stopping a text field from capturing key events)

Hi,

There is no way to make a text field stop editing, thus making it stop capturing all key events.

I've set all of my text fields to use a custom input processor, tried overriding keyUp, keyDown, and keyTyped so that I can return false on these, used FocusManager.getFocus() and FocusManager.getFocus(anotherWidget) {seems losing focus doesn't stop it from receiving key events}.

I use an InputMultiplexer and have my Scene2d/VisUI stuff as the 1st entry, otherwise, my main canvas gets all the events before the HUD/ GUI overlay; but when it's set this way, and a text field was focused, it will capture all key events from that point on.

Thanks.

Problem with TabbedPane

HI, i'm trying to use the TabbedPane im my project but it's not working as i expected.

The code is:

        VisUI.load();
        TabbedPane tabbedPane = new TabbedPane();
        tabbedPane.getTable().setPosition(100, 100);
        tabbedPane.getTable().setWidth(500);
        tabbedPane.getTable().setHeight(300);
        tabbedPane.getTable().setDebug(true, true);

        Tab defaultTab = new Tab(false, false) {

            @Override
            public String getTabTitle() {
                return "Default";
            }

            @Override
            public Table getContentTable() {

                VisTable chatLayoutTable = new VisTable(true);
                //chatLayoutTable.setHeight(200);
                //chatLayoutTable.setWidth(300);
                chatLayoutTable.setFillParent(true);
                chatLayoutTable.add(new VisLabel("Default")).expandX().fillX();

                return chatLayoutTable;
            }
        };

        tabbedPane.add(defaultTab);

        Tab globalTab = new Tab(false, true) {

            @Override
            public String getTabTitle() {
                return "Global";
            }

            @Override
            public Table getContentTable() {

                VisTable chatLayoutTable = new VisTable(true);
                //chatLayoutTable.setHeight(200);
                //chatLayoutTable.setWidth(300);
                chatLayoutTable.setFillParent(true);
                chatLayoutTable.add(new VisLabel("Global")).expandX().fillX();

                return chatLayoutTable;
            }
        };

        tabbedPane.add(globalTab);

        stage.addActor(tabbedPane.getTable());

The problem is that I can't see the content of the Tabs, as you can see in the image above:

http://prntscr.com/6vfkt5

What am I doing wrong?

Thanks.

Alignment has no effect on PopupMenu

I can't position PopupMenu with setPosition(x, y, Align.topLeft) to make its top left corner be at (x,y). Maybe that's not the right way to do it but what is the right one? Wiki doesn't mention it.

FileChooser UX improvments

  • Add more PopupMenu icons (90c2944)
  • Add New Folder image button next to path field (c945ab4)
  • Support moving file to trash instead of deleting it forever (probably only via JNA) (2a8f97e)
  • Add icons for basic file types (text, images, videos etc.) and support adding custom ones (5afb0de)
  • When typing file name show list with possible files (out of scope for now)

JSON output

I tested the tool and wanted to use it for a non libgdx project. Unfortunately it does not output in JSON but some weird json like format where the keys and string values are not quoted. Is it possible to output in real JSON?

Error loading asset with Artemis-odb 1.1.1

EDIT: Just saw the roadmap of 0.3.0 for Artemis-odb 1.0.1, I guess this issue posted will no longer an issue soon...

When using with Artemis-odb 0.13.1, VisAssetManager.loadSceneNow() works fine.

However, after using with Artemis-odb 1.1.1, VisAssetManager.loadSceneNow() throws error:

AssetManager: Error loading asset.
com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load asset: scene/main.scene
at com.badlogic.gdx.assets.AssetLoadingTask.handleAsyncLoader(AssetLoadingTask.java:137)
at com.badlogic.gdx.assets.AssetLoadingTask.update(AssetLoadingTask.java:89)
at com.badlogic.gdx.assets.AssetManager.updateTask(AssetManager.java:479)
at com.badlogic.gdx.assets.AssetManager.update(AssetManager.java:354)
at com.badlogic.gdx.assets.AssetManager.finishLoading(AssetManager.java:377)
at com.kotcrab.vis.runtime.scene.VisAssetManager.loadSceneNow(VisAssetManager.java:81)
at com.kotcrab.vis.runtime.scene.VisAssetManager.loadSceneNow(VisAssetManager.java:76)
at com.viseditortest.VisETest.create(VisETest.java:30)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: java.lang.VerifyError: class com.kotcrab.vis.runtime.system.delegate.DeferredEntityProcessingSystem overrides final method inserted.(I)V
at com.badlogic.gdx.utils.async.AsyncResult.get(AsyncResult.java:46)
at com.badlogic.gdx.assets.AssetLoadingTask.handleAsyncLoader(AssetLoadingTask.java:135)
... 9 more
Caused by: java.lang.VerifyError: class com.kotcrab.vis.runtime.system.delegate.DeferredEntityProcessingSystem overrides final method inserted.(I)V
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.kotcrab.vis.runtime.scene.SceneLoader.loadAsync(SceneLoader.java:205)
at com.kotcrab.vis.runtime.scene.SceneLoader.loadAsync(SceneLoader.java:57)
at com.badlogic.gdx.assets.AssetLoadingTask.call(AssetLoadingTask.java:73)
at com.badlogic.gdx.assets.AssetLoadingTask.call(AssetLoadingTask.java:34)
at com.badlogic.gdx.utils.async.AsyncExecutor$2.call(AsyncExecutor.java:58)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: Asset not loaded: gfx/textures.atlas
at com.badlogic.gdx.assets.AssetManager.unload(AssetManager.java:182)
at com.badlogic.gdx.assets.AssetManager.handleTaskError(AssetManager.java:540)
at com.badlogic.gdx.assets.AssetManager.update(AssetManager.java:356)
at com.badlogic.gdx.assets.AssetManager.finishLoading(AssetManager.java:377)
at com.kotcrab.vis.runtime.scene.VisAssetManager.loadSceneNow(VisAssetManager.java:81)
at com.kotcrab.vis.runtime.scene.VisAssetManager.loadSceneNow(VisAssetManager.java:76)
at com.viseditortest.VisETest.create(VisETest.java:30)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)

Little (secondary) ideas

Hello, honestly I don't know if this is the right place to post this but I didnt find a better place, here are some very little ideas you could try add to the editor, none is really important in any but it may improve the editor experience:
*Drag the mouse + shortcut to rotate/scale on the go;

*Add another shortcut to do rotate/scale by steps (eg. rotate by steps of 45°, scale by steps of 0.2 etc);

*Make some primitive entities (square/circle/path) that are not graphical but have a logical meaning in the game (eg. path that an enemy will follow, an area where you enters and make's something move/fall/sound/open another thing or any other logical meaning you can find..)

*Could load a physical shape from an existing shape descriptor like a json file, eg. a json file generated by another associated physics editor ( like this simple and good Physics body editor that saves the shape in a json format, ideally make the physic editor open inside visEditor/ integrate a similar technology to auto trace shape;

That's all I have for now! Have a good day and keep working on that great and promising editor!

P.S: while i'm in the issue tracker, the editor crashes when you try to put a physical properties component.

Unable to see folders in File Chooser

If I use the filechooser I can only see allowed files (those that the file filter returns true for), but I also cannot see any directories.
This is what one of my FileFilters looks like:

fileChooser.setFileFilter(new FileFilter() {
                    @Override
                    public boolean accept (File pathname) {
                        return pathname.getPath().endsWith(".rbm") || pathname.isDirectory();
                    }
                });

I thought at first that they weren't showing because my file filter did not return true for directories, but I changed it (as you can see) and they still won't show up.

The file chooser's selection mode is files, but even if I change it to files and folders I still cannot see any folders.

Difficult set float scale for TextEntity

Hi, in VisEditor 2.6.0_SNAPSHOT 10-Nov-2015 very difficult set float scale for TextEntity. You can't just write float number. First you must write int number, then move cursor to start of number, then write point and only after this you get float scale.

NumberSelector

There are a few errors with the current NumberSelector, or I'm using it wrong =). The main problem is that when you have a minimum value greater then 1, you can not remove the complete value and fill in the wanted value, e.g. if the minimum value is 5 and i want to pick a value of 10, removing the 5 and then typing 1 results in a 5 because 1 is not a valid input.

Another problem i came across is that on my android phone if I pick a number with a virtual keyboard that number gets repeated as if the timer for the up/down button gets fired for the number I picked.

Also is there any support for a form validator with a NumberSelector in it?

FileChooser creation occasionally hangs

I'm still investigating this issue, but sometimes, when I open my map editor my app hangs and sometimes even crashes. I put in checks to determine the source and I do believe it is the FileChooser. This is the output of my bug checking:

before instantiate 1432502164225
before file chooser 1432502164236
after file chooser 1432502182050
before editor 1432502182050
after editor 1432502182096
after instantiate 1432502182096

The numbers are produced by TimeUtils.millis() and as you can see, there is a considerable hang between the check before and after the creation of the file chooser (a whole 17 seconds!). This is the code that is between those time checks:

FileChooser.setFavoritesPrefsName("com.strongjoshua.reverseblade.mapmaker.favourites");
fileChooser = new FileChooser(Mode.OPEN);
fileChooser.setDirectory("D:/XXX/LibGdx/ReverseBlade/android/assets/maps");
fileChooser.setMultiselectionEnabled(false);
fileChooser.setSelectionMode(SelectionMode.FILES);

Is there something there I should change to speed up the process, or is this a fault of the FileChooser?

I say occasionally because this will happen once (generally when I first open Eclipse) and then not again, which makes this even more strange.

[Freq] ColorPicker auto-apply

Thanks again for #40, it's working great.

I'm sorry for being greedy, but would it be possible to add another feature where, if a color is selected on the palette (or through the other means) it gets automatically set? I go back to the palette a lot and this small convenience will cut down on button clicks i.e. Ok, to set the color.

Thank you.

[Freq] ColorPicker option to set the color w/o the dialog closing / fading out

As the title states, it'd be great to have a button to apply the color, without closing the color picker. My use case is, in the application's edit / stage building mode, I switch between drawing tools, and use the color picker to set their active drawing color. It would save a lot of time, and be more convenient overall, if the color picker was kept open, instead of having to open it up each time one needs to change the color.

Thanks!

VisEditor 0.3.0 roadmap

  • Update to Artemis 1.0.1 1.2.0 1.2.1
  • Create Position component. Update:
    • VisSprite
    • VisText
    • VisParticle
    • VisSpriter
    • VisSpine
  • Refactor EntityProxy. Add PositionOwner etc. interfaces.
  • Find a way to remove GroupEntityProxy
  • Remove "Component" from components classes names to decrease verbosity, don't forget to update tags
  • Deprecate content roots in favor of storing every assets in any directory. If some file is ambiguous we can store its type in metadata. (see #77)
  • Move away from Kryo to JSON. JSON will allow for human readable scene files and simplify keeping scenes in VCS repo. Editor JSON files should be pretty printed.
    • Clean up VisTags from components
  • Remove editor beta update channel.
  • Remove code support for old editor versions, 0.3.0 won't be able to load old projects without conversion anyway.
  • Remove deprecated EditorPhysicsSettings, clean up EditorSceneSerializer
  • Reorganize com.kotcrab.vis.editor.module.scene
  • Reorganize util package.
  • Write an project converter for VisEditor 0.2.5/0.2.6.
  • Check TODOs

Dropped:

  • Merge LayerComponent and RenderableComponent Reason: Entity may be on an layer but isn't renderable, for example: points, triggers etc.
  • Create TransformComponent, TintComponent etc. This will allow to mix SpriteComponnet with others types of Component like, MusicComponent, SoundComponent, TextComponent and others.
    Reason: too complicated with current way of how libgdx works. Almost every type of component (sprite, particle) already stores those properites so it will be only duplicate it. Also syncing those between components would be complicated. Only Position component will be created.
  • Refactor ProtoComponents - transient components (non serializable) will be skipped for serialization but they should be recreatable from using components (like Position, Scale etc.) Reason: see above, also ProtoComponents turned out to be quire good solution and won't be changed.
  • Refactor AssetComponent, initial idea is to create AssetReference allowing to store multiple VisAssetDescriptor, one system will them process them and create appropriate components.
  • Remove AssetComponent, each component requiring assets can store it in itself. Upon further checks it would be better to leave asset component as it is.

0.3.0 will be developed in separate branch, critical issues in 0.2.5 will be still fixed.
If you have any ideas or suggestions, please share it here or start a discussion on our forums.

Problem of rotation on polygons

Back in the issue #58 , the problem of sprites rendered without angles, after the fix now it's the polygon component that are no longer set with a correct angle
sans titre

Tooltip isn't removed properly inside ChangeListener

I get java.lang.IllegalStateException: More than one tooltip cannot be added to the same target! when I'm using this code inside button ChangeListener:

Tooltip.removeTooltip(pauseResumeButton);
new Tooltip(pauseResumeButton, "Resume (P)");

closeOnEscape() with multiple windows

Just a minor annoyance:

  • create a modal window with closeOnEscape()
  • from within this window, open a FileChooser window

Now, if the escape key is pressed, the modal window closes first, and the FileChooser window stays open. On the second key press the FileChooser window closes.

I'd expect the FileChooser window closing first.

project asset files deleted when exporting scene

the title said it all, when you export a scene the whole assets folder of your project is replaced by a new one containing only visEditor elements, so if you don't have a backup you lose all your project assets..

Can't load skin.json

I receive an Exception when running my project with 0.9.2-SNAPSHOT:

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.SerializationException: Error reading file: com/kotcrab/vis/ui/skin/x1/uiskin.json
at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:97)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.(Skin.java:74)
at com.kotcrab.vis.ui.VisUI.load(VisUI.java:90)
at com.kotcrab.vis.ui.VisUI.load(VisUI.java:84)
at com.kotcrab.vis.ui.VisUI.load(VisUI.java:77)
at com.itc.mn.GUI.FrontEnd.(FrontEnd.java:114)
at com.itc.mn.Pantallas.Pantalla.(Pantalla.java:39)
at com.itc.mn.Pantallas.RenderScreen.(RenderScreen.java:100)
at com.itc.mn.Pantallas.SplashScreen.(SplashScreen.java:29)
at com.itc.mn.MainGame.create(MainGame.java:15)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: com.badlogic.gdx.utils.SerializationException: Error reading file: com/kotcrab/vis/ui/skin/x1/uiskin.json
at com.badlogic.gdx.utils.Json.fromJson(Json.java:683)
at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:95)
... 11 more
Caused by: com.badlogic.gdx.utils.SerializationException: Field not found: knobOver (com.badlogic.gdx.scenes.scene2d.ui.Slider$SliderStyle)
at com.badlogic.gdx.utils.Json.readFields(Json.java:776)
at com.badlogic.gdx.utils.Json.readValue(Json.java:902)
at com.badlogic.gdx.scenes.scene2d.ui.Skin$1.readValue(Skin.java:404)
at com.badlogic.gdx.utils.Json.readValue(Json.java:834)
at com.badlogic.gdx.scenes.scene2d.ui.Skin$2.readNamedObjects(Skin.java:425)
at com.badlogic.gdx.scenes.scene2d.ui.Skin$2.read(Skin.java:414)
at com.badlogic.gdx.scenes.scene2d.ui.Skin$2.read(Skin.java:410)
at com.badlogic.gdx.utils.Json.readValue(Json.java:867)
at com.badlogic.gdx.scenes.scene2d.ui.Skin$1.readValue(Skin.java:404)
at com.badlogic.gdx.utils.Json.fromJson(Json.java:681)
... 12 more

If I run it with 0.9.1 it works just fine, but I need the 0.9.2-SNAPSHOT because of the font kerning issues (I'm the guy who posted in kotcrab forums about Me with tildes)

Github proyect (nchuck/MN)

App Crashes when launched from .jar

This is the error I get when trying to launch my game from a runnable .jar file:

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.SerializationExce
ption: Error reading file: com/kotcrab/vis/ui/uiskin.json
        at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:97)
        at com.badlogic.gdx.scenes.scene2d.ui.Skin.<init>(Skin.java:74)
        at com.kotcrab.vis.ui.VisUI.load(VisUI.java:55)
        at com.kotcrab.vis.ui.VisUI.load(VisUI.java:50)
        at com.strongjoshua.reverseblade.ReverseBlade.create(ReverseBlade.java:2
8)
        at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplic
ation.java:143)
        at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplicati
on.java:120)
Caused by: com.badlogic.gdx.utils.SerializationException: Error reading file: co
m/kotcrab/vis/ui/uiskin.json
        at com.badlogic.gdx.utils.Json.fromJson(Json.java:683)
        at com.badlogic.gdx.scenes.scene2d.ui.Skin.load(Skin.java:95)
        ... 6 more
Caused by: com.badlogic.gdx.utils.SerializationException: Error parsing file: co
m/kotcrab/vis/ui/uiskin.json
        at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:77)
        at com.badlogic.gdx.utils.Json.fromJson(Json.java:681)
        ... 7 more
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: com\kotcr
ab\vis\ui\uiskin.json (Classpath)
        at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:137)
        at com.badlogic.gdx.files.FileHandle.reader(FileHandle.java:164)
        at com.badlogic.gdx.utils.JsonReader.parse(JsonReader.java:75)
        ... 8 more

That line is when I call: VisUI.load();
I have had this happen with my own LibGdx addon.

The only way I was able to prevent my plugin from erroring was to load the skin that it uses from my game itself, rather than the dependency's project. Maybe you have more insight into how to fix this.

VisUI: default text or selection for InputDialog and FileChooser

Some ideas for [optional] convenience functions:

  • InputDialog: Initial input text. Should be preselected/highlighted so that user can decide to overwrite, or edit easily. Also, it'd be nice to auto-focus the input field when showing the dialog.
  • FileChooser: in file mode, have an option to preselect an existing file. Or, in save mode, to write a predefined file extension to the input field.

VisTextField doesn't stop input processing

I have two input processors: Scene2d Stage and my own input processor registered respectively. The problem is, when I type something in VisTextField, my own input processor fires keyDown too which is unwanted behaviour.

Deprecate InjectModule and improve injecting

General:

  • Inject modules by default, add @SkipInject annotation
  • Inject Stage
  • Clean up old @InjectModules
  • Clean up old manual Stage getting

SceneModuleContainer:

  • Inject ComponentMappers
  • Inject Artemis Systems and Managers

Add float support to NumberSelector

I can't see any reasons why NumberSelector works only with integers. For things like time scale I need float values so I would like NumberSelector to work with floats too. Or as an alternative it could be divided in two classes: IntNumberSelector and FloatNumberSelector. Only one more constructor parameter is needed: number of digits after decimal point.

VisTextField key repeat bug

First mentioned in #7

Caused by keyTypedRepeatTask in VisTextField used to repat keys faster than keyTyped(...) On desktop keyTyped is called first then keyUp but on android keyUp is called first, then keyTyped. The task is canceled on keyUp thus on Android task is canceled too early and key is repeated forever.

Some Suggestions

  1. Create a layer to simplify the .JSON files - currently they are tied to VisUI. What I think you need is to create some "struct" type classes that only contain the datafields you need to build the sprite, etc. For example:
    class spriteJson
    {
    float x,y;
    float width, height;
    String id;

    }
    This will allow easier building of scenes without using VisUI - for example, custom Scene2d setups
  2. Allow object bounds to be changed - not just the scale. ideally by dragging corners

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.