Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Goombert

Developing ENIGMA / Re: LateralGM
« on: November 14, 2014, 04:41:18 AM »
Duly noted Harri that should not be how it handles it. I have no idea how it led to the transitivity bug, me starts to think that the earlier reports may have just been inconsistencies in jars and ENIGMA's source, but no doubt I did fix some of the transitivity. I'll try to look into it and see what I can do though this may require a larger discussion about ENIGMA building errors being reported back to LGM and how we can accomplish that  (Y)

Just as a quick QOS test I want to list some objectives here:

* Fix GTK MDI layout so that it has scrollbars and works as expected.
* Look into Harri's issue.
* Fix selection when moving actions
* Add focus to the ActionList by default
* Save and load dialog warnings do not recognize extensions and file filters are not consistent among a lot of dialogs, needs cleaned up and fixed.
* Image save dialogs show formats that are not supported and also do not write BMP's and some formats because the image is RGBA and Java can only write RGB bitmap files so you have to convert them before writing.
* Resolve remaining JoshEdit bugs.
* Finish implementing JoshEdit preferences.

And then we will have a stable 1.8.7, this is the current roadmap for LGM's major release plus or minus a few miscellaneous fixes along the way.

Developing ENIGMA / Re: LateralGM
« on: November 13, 2014, 08:08:32 PM »
Does the error only happen when loading this specific EGM? Try loading a GMK or GMX or open ENIGMA without opening that EGM.

This stacktrace suggests it is something to do with definitions.

This stacktrace suggests the transitivity bug.

But we need to separate the two problems first, I need to know if one exists without the other which you can tell me by eliminating the EGM from the test.

Also I've made another quick update and improved load and save buttons. Update as usual.

* Load dialogs will now verify that the file exists and if it does not it will warn you to verify the file name. You will see this on all file dialogs, including the one for loading projects, images, sprites, game information, etc.
* Applied the same load dialog fix to JoshEdit to verify file names.
* Added an exception handler interface to JoshEdit to stop silent failings.
* Save dialog on the background and sprite frame will now show a warning message if there is no image to save and tell you to create it first.
* Pulled a fix by sorlok for loading constants.
* Added confirm overwrite dialog to JoshEdit and LGM file choosers when saving files to disk.

This is what the new warning dialogs look like.

Developing ENIGMA / Re: LateralGM
« on: November 13, 2014, 05:29:28 PM »
Another quick updated, I've fixed a typo in the GMX reader that was causing room persistence not to save. Update using python or manually download the new jars.

This was the commit that fixed the GMX reader.

Quote from: egofree
Look at the first screen you posted when you implemented the line numbers :
I see, but with the dark look and feel it made them invisible, it's still more consistent to use list colors and not generic component colors for the numbers. Like I said maybe we should add a preference.

Quote from: egofree
Perhaps i understand nothing or my english is too bad  :ohdear:, but i feel we are not talking about the same thing. I am not talking about problems with selection, but about the fact that when you add a new action, it should be possible to use the ctrl-z shortcut to remove the new action. Right now if you open an objects window, and you add directly new actions, it's not working, if you don't click manually on an action list. Perhaps this is the correct way, and there is nothing wrong with this.
It was like that in the old LGM as well, go back and test 1.8.6 and earlier versions. What you are describing is that the action list should have focus by default, which I don't really know if that is a good idea or not.

Quote from: TheExDeus
For some reason with the newest LGM I get constant crashes (I think the plugin crashes, as I cannot select anything in the ENIGMA menu only).
It looks like you managed to reproduce the focus traversal bug, I'll try to push a patch for enigma.jar for you to see if it fixes it. This is regarding turning off window decorations, do not try messing with the preference I want to actually fix this. Just please answer two quick questions:

1) Have you updated both enigma.jar and lateralgm.jar? Because it looks like your engima.jar is out of date, the reported line numbers are incorrect.
2) What is the window decorations preference set to under "Appearance"?
3) What is hardware acceleration set to?

Wow for some reason I read this as Minecraft and shit a brick. This is actually kind of old news egofree, I was already aware of it. It doesn't really matter because they've been partnering with Mono for a while, the widget system on other platforms is GTK so it still requires quite a bit of recoding. I believe libraries also need to be rebuilt for the Mono compiler as well, so porting is not like a snap of the fingers either. Java still runs on your toaster too and is gaining hardware acceleration as well as a modern UI API that includes CSS styling like the modern Qt Framework.

Developing ENIGMA / Re: LateralGM
« on: November 12, 2014, 07:01:42 PM »
Quote from: egofree
Concerning the actions list line numbers, personally i preferred how it was before, with a different background color, as the line numbers were more easily distinguished. Well, it was my two cents. :P
I don't know where you are coming from with that because in the old one it was impossible to view the line number on the selected line (look at the old screenshot). It in fact still uses the same colors, just doesn't change the selected line just like a normal code editor doesn't. It's still either way technically more correct because it's not a generic JComponent, it's a list component. Maybe we can add a preference in the future.

Quote from: egofree
Are you sure ? Try to open a objects window, add some actions, and try an undo with ctrl-z. Despite the fact that new actions are automatically selected in the list, you have to manually select an action in the list if you want the undo to work.
Even GM: Studio's undo does not restore the selection, in fact no code or text editor does except regular Notepad. If you look at Scintilla, Notepad++, Eclipse, Code::Blocks, Visual Studio, Microsoft Word, etc. Undoing or redoing always destroys your current selection.

Now you are correct that the focus still doesn't work, but undo/redo itself and maintain selection is perfectly fine now except when moving actions, moving list items is supposed to maintain your selection, that I still need to fix.

Developing ENIGMA / Re: LateralGM
« on: November 12, 2014, 02:59:17 AM »
Quick update, I've partially fixed the selection issues with the undo manager on the ActionList restoring the old behavior. Moving actions still causes the selection to be completely lost, will fix it soon.

I made two additional changes:
* Changed the action list line number area to use the list colors instead of the default JComponent colors, also stops it from highlighting the selected line.
* Fixed another exception when switching from a look and feel that supports window decorations to one that does not, the default frame shape must be restored before setting the decorated panel by passing null to setShape

As always update manually by downloading the jars or python

Developing ENIGMA / Re: Massive GL3.3 changes.... again
« on: November 10, 2014, 03:34:38 PM »
Quote from: TheExDeus
If a person wants a different viewport or projection, then he should set that AFTER binding the surface. Just like GM.
Actually, that's just it, in GM you can't set the viewport on a surface because the only way to set the view in GM is the built in variables which do not affect surfaces. This is exactly why I added screen_set_viewport to ENIGMA.

So we either need to have screen_set_viewport(boolean scale); view scale controlling whether it takes the scaling options into account to scale or maintain aspect ratio, if it is false then it just passes the viewport the user provides which would be the case with surfaces. Or we could break it into two functions screen_set_viewport which scales the provided viewport to the screen, and draw_set_viewport which just sets a generic viewport without scaling it for use with surfaces. It's up to you but this is how I wish you would fix it. Additionally as I suggested on GitHub, try to use a negative viewport to flip the rendering upside down on the surface, if we can do that to flip the rendering on surfaces, then I suggest we also add the function surface_set_viewport

Developing ENIGMA / Re: Massive GL3.3 changes.... again
« on: November 09, 2014, 11:30:21 PM »
I would like to add Harri that I am planing on wrapping up LateralGM 1.8.7 soon after some additional fixes and integration of other new features.  I would like to have the OpenGL fixes in so that I can also fix the Direct3D surfaces. But we should decide on whether we want to add a draw_set_viewport function that does not scale the viewport and a screen_set_viewport that does scale the viewport to screen scaling coordinates or perhaps just add a booelean scaleToWindow to the existing function. But anyway I would like the GL3 fixes to be finalized so it can also be included in the new Portable ZIP alongside sorlok's array length functions and the new LGM.

Developing ENIGMA / Re: LateralGM
« on: November 09, 2014, 10:57:00 PM »
Another quick update I've added save functionality to the sprite and background frames including APNG support. You can in fact save all your subimages to an APNG with this feature, it will save the selected subimages on the frame or if none are selected it will save them all. GIF animation writing is not yet supported.

I used the new save button to export this animated monster from the Mark Overmar's FPS example to the APNG format.

As always you can get these changes through python or manually downloading the new jars.

Quote from: egofree
When you are doing a copy and several pastes one after the other, you've all actions selected :
I've discovered that as well, I'll see what I can do about it to restore it to expected behavior, but for now make sure the undo/redo behavior works.

Quote from: IsmAvatar
I certainly agree that it doesn't make sense for it to be present when there are no Objects to select Events for, but that said, removal of the button on such a main interface as the Toolbar might be a little too overt.
Perhaps as a compromise we could hide it when the user has it docked as a tab because we don't need 2 places on the main interface to get to it in 1 click.

Programming Help / Re: Constants?
« on: November 09, 2014, 09:53:12 PM »
They should at least be showing in the constants frame? I don't remember if they were actually finished or not but I started working on multiple configurations and never finished because I had a complete lack of direction on how to approach it. It would help if everyone could offer their opinions on multiple configurations. The configuration drop down on the main toolbar is obviously supposed to be letting you select the current configuration which GM Studio now ties to multiple constants, though I may be moving the constants back to Game Settings and just keep it all in one frame.

Issues Help Desk / Re: Can someone help me I have a question
« on: November 09, 2014, 09:50:21 PM »
Yes CainBeltrame, as Darkstar2 we've abstracted the project a great deal. If you for instance want to add a new function to the language you would do so in the engine which we call enigma-dev/ENIGMASystem/SHELL where new graphics and audio systems can be added as well as widgets and extensions to the universal system. LateralGM is an entirely separate project whose sole purpose is editing GM projects on multiple operating systems. ENIGMA offers the ability to compile games in LateralGM using a Java plugin with JNA (Java Native Access) to pass the games resources to the compiler which then translates the GML/EDL to C++ or JavaScript and links it to the main engine.

So to add the splash screen functionality you would have to expand the GameSettings resource that is passed to the compiler which would write the data to and link it to the engine. To simply add the splash screen functionality or even if you wanted to add it as functions you would either do so in a widget system or an extension. But to simply add it for adding and saving projects you would do so in LateralGM both in the Game Settings frame and GMK file reader/writer, though I believe the reader/writer already reads the images, LGM just does not let you change them.

Issues Help Desk / Re: Can someone help me I have a question
« on: November 09, 2014, 04:34:46 PM »
Hello CainBeltrame! We currently do not have splash progress bars because we are focusing more on the cross-platform stuff. I was actually planning to add the various platform options such as the new splash screen options and implement them to ENIGMA because it is easier to do for other platforms. We could always add them in as an extension however. Additionally as TheExDeus pointed out, LateralGM should still let you save those loading images to the project file because it is an IDE that can be used separately from ENIGMA because GM has no cross-platform IDE to edit projects in, LGM is the only solution for that so we make a point of making the programs separate. So are you at least able to save the progress images to the project file?

Edit: Ahhh yes I see the options are grayed out, I guess IsmAvatar did that to stop people from changing them. I'll have to implement them, possibly in the new LGM version.

Issues Help Desk / Re: LateralGM seems to have just... stopped compiling?
« on: November 09, 2014, 04:31:25 PM »
Since never lol, I usually try to make a clear distinction between problems in the plugin and LateralGM. The ico file issue was LGM, the segfault/crash happened when it got to the plugin because some data was corrupted.

Developing ENIGMA / Re: LateralGM
« on: November 09, 2014, 07:53:48 AM »
Another quick update, you can download the same as always. I've added the line number panel found in Studio to the action list.

Quote from: egofree
Ok, i understand now. There is a problem with the focus. Within the objects window, if the actions list panel doesn't have the focus, the keyboards shortcuts don't work. I give an example : if you add several  new actions, and try CTRL-Z, it doesn't work if an action has not been selected before in the actions list panel.
That is actually a Swing issue, mouse released does not register focus on a component, only left mouse clicked. I had to work around that to make right click focus the selected node on the resource tree as well.

Developing ENIGMA / Re: LateralGM
« on: November 09, 2014, 06:14:59 AM »
The clipboard, CTRL+Z/CTRL+Y and also the context menu, Right Click->Undo/Redo just like GM: Studio