Ok so i've finished a beta build of the gui editor I was working on.. I have other things to add but i'd like to get feedback on what i've done so far:
THIS IS BETA. TEST ONLY ON A BACKUP OF YOUR GAME!!!
Features Added:
Multi-section of controls - ctrl-click to select multiple controls, click one of the selected controls to make it the primary selection
Nudge controls (or groups thereof) with the arrow keys.
Controls snap to other controls left and top (press ctrl while dragging to not snap)
Controls can be locked.
(right click for the below features)
Controls can be copied and pasted (one control at a time at the moment).
Groups of controls can be aligned to the primary selections top or left
Groups of controls can be evenly distributed horizonally or vertically.
Any and all comments are welcome.
Some people have had some trouble running this file so I was hoping that CJ might be able to shed some light on that.
Basically it seems that AGS.Native is defaulting to version 0.0.0.0 in VS2010 so the runtime cant find the assembly when it tries to run... but this only seems to be an issue on certain PCs.. possibly registry based?
----------------------------------------------
HOLA!
Ok version "2" of my editor.
REMEMBER ONLY USE ON A COMPLETELY SEPERATE BACKUP OF YOUR GAME!!!
YOU WILL NOT BE ABLE TO USE THE OLD EDITOR AFTER SAVING YOUR GAME IN THIS ONE!!
This version integrates all of ProgzMax's additions plus my original GUI editor plus:
GUI Editor
- Control grouping (which does not save with the game btw)
- Locked controls no longer move when aligned or distributed
- Locked controls draw a little X in the centre to show they are locked.
- Locking/grouping added to the context menu
- The ability to select controls with a selection box (and add to the selection with ctrl+click)
Room Editor
- Fixed some broken character dragging/selecting code
- Added a checkbox to allow characters to be moved 'normally' and not snap to the bottom centre
TODO/Known Issues:
- Control grouping doesnt save with the game due to the way dynamic groups are created.
- Add zoom to Guis
- Add the ability to select single controls within a group (although this is still possible for everything except moving since the active control will still change)
- Some refactoring.
-----------------------------------------------------------------------------------------
Ok heres a version including all the updates done so far.
You should of course check to see if I have made any fuck ups combining the code (this is very possible ^_^)
http://www.thethoughtradar.com/AGS/Editor/AGSChristmasEdition.zip
I have also added some other things:
- Code folding in the script editor (yay)
- Updated the formatting in the script editor to make things a little more readable.
- Characters and objects now display their co-ords when dragged around a room.
- Fixed GuiControl copy/paste
- Some minor refactoring of ProgZ's code.
- Fixed the IrrKlang error.
- Tidied up some of my atrocious code whilst in awe of Tzachs' coding skillz.
There is probably more to mention but i havent slept yet.. sleep naoplease.
Will release src later today.
Runs just fine here, and tested all new features. A big "Check" on all new functions working like expected - good job!=) Can´t wait for more!
Quote from: Calin Leafshade on Sat 30/10/2010 02:07:46Some people have had some trouble running this file so I was hoping that CJ might be able to shed some light on that.
Basically it seems that AGS.Native is defaulting to version 0.0.0.0 in VS2010 so the runtime cant find the assembly when it tries to run... but this only seems to be an issue on certain PCs.. possibly registry based?
Do these machines have anything in common, e.g. which version of Windows?
I'm running Windows XP, .NET 2.0, and am one of those mentioned.
Works on my win7 cpu, doesnt work on my xp laptop (like monkey)
Its not an OS issue. Works fine on my XP machine.
Calin
please put a mirror link.I can not download from my Country (IRAN).thats filter for us.
Works fine for me, also on an XP.
I tested all the features and it works very well.
I tried to do some QA, the only bug I found was this:
If you lock a control, select it in a group and do an alignment or distribution, the control will move...
I am having the problem on a Vista laptop.
Quote from: tzachs on Sat 30/10/2010 17:48:32
If you lock a control, select it in a group and do an alignment or distribution, the control will move...
Thanks for the bug report, I'll fix that.
With regard to locking controls, how do people think they should behave when part of a group?
If one member of a group is locked should the whole group be locked while that locked control is part of it?
Also would people find the ability to group controls together permanently useful? So that when you select one member of a group the whole group is selected.
Quote from: Calin Leafshade on Sat 30/10/2010 18:00:17
With regard to locking controls, how do people think they should behave when part of a group?
If one member of a group is locked should the whole group be locked while that locked control is part of it?
No, I don't think that would be useful. The group should move normally with the exception of the locked controls (as I'm guessing that the locked control was selected by accident and thus should be treated as if it wasn't selected at all).
Quote
Also would people find the ability to group controls together permanently useful? So that when you select one member of a group the whole group is selected.
Yes, I would find that feature to be very useful.
Another related feature I would find useful (if you're up to it, no pressure), is to be able to have a rectangular selection that would select all the controls inside it (like in visual studio designer).
QuoteAlso would people find the ability to group controls together permanently useful?
With the exception of a permanent, non-reversible group command, yes! I think a toggle-able group selection switch would be a fantastic addition.
Edit: I also would love to be able to select a whole bunch of controls and lock them from the right-click context menu. In addition to that, Ctl+A to select all GUI Controls would be so handy in tandem with this.
Cheers,
Sparky.
I think permanent control grouping would be fine provided, as subspark says, it can be reversed and you can select a single control within the group without having to remove it from the group first (i.e., to reposition it within the group; perhaps via Ctrl+Click or something?).
sorry 'permanently' was a bad choice of word.. I just meant like the group features in VS
I have too limited usage of VS. :P And for some reason I can't get Windows to install any form of updates on my bunk system. Grr.. >:(
Quotesorry 'permanently' was a bad choice of word.. I just meant like the group features in VS
Sounds great Calin. I'm very fond with what you've added already!
Sparky.
Quote from: Calin Leafshade on Sat 30/10/2010 02:07:46
Controls snap to other controls left and top (press ctrl while dragging to not snap)
This is all awesome! I think it might be better to make it so dragging controls without holding <ctrl> does not snap to other controls, and holding <ctrl> makes it snap to other controls. Only because moving items without them snapping to everything is the way people are used to the editor behaving.
Also, how hard would it be to add a zoom slider similar to what is in the room editor? I would find that very useful.
Oh seconded! :D
Two good ideas there.
Thirded=)
HOLA!
Ok version "2" of my editor.
REMEMBER ONLY USE ON A COMPLETELY SEPERATE BACKUP OF YOUR GAME!!!
YOU WILL NOT BE ABLE TO USE THE OLD EDITOR AFTER SAVING YOUR GAME IN THIS ONE!!
This version integrates all of ProgzMax's additions plus my original GUI editor plus:
GUI Editor
- Control grouping (which does not save with the game btw)
- Locked controls no longer move when aligned or distributed
- Locked controls draw a little X in the centre to show they are locked.
- Locking/grouping added to the context menu
- The ability to select controls with a selection box (and add to the selection with ctrl+click)
Room Editor
- Fixed some broken character dragging/selecting code
- Added a checkbox to allow characters to be moved 'normally' and not snap to the bottom centre
TODO/Known Issues:
- Control grouping doesnt save with the game due to the way dynamic groups are created.
- Add zoom to Guis
- Add the ability to select single controls within a group (although this is still possible for everything except moving since the active control will still change)
- Some refactoring.
Download: http://www.thethoughtradar.com/AGS/Editor/AGSEditorCalinV2.zip
Source: http://www.thethoughtradar.com/AGS/Editor/AGSEditorV2src.zip
QuoteFixed some broken character dragging/selecting code
What was broken, exactly? ???
Umm the character selection code.
It essentially assumed the character position was the bottom left corner (I assume because you copied the object code)
So characters wouldnt select if you clicked them anywhere left of their centre line. The bounding box was off to the right by half the sprite's width.
I wouldn't call that broken but yeah, looking at the code now it's something I introduced when I went back to adjust the upscaling of characters based on the zoom level without having saved some earlier fixes. I wish someone had reported this was happening in the latest version, but you caught it so well done! Hopefully the comments I left were helpful.
Do you guys think that eventually Tzach's version can be merged into Calin's + ProgZ's (once all bugs are gone I guess)...all three are really cool features :)
Yea, that seems wise now that tzach has released his code.
I'll merge all the code this evening and release all 3 in 1.
Quote from: Calin Elephantsittingonface on Thu 23/12/2010 18:33:10
I'll merge all the code this evening and release all 3 in 1.
Splendid! I'm waiting for that.
So awesome ;D
Indeed awesome, thank you Calin for saving me (or rather CJ?) the work.
When you release it you can name it the humble ags editor bundle. :D
Also, out of curiosity, what do you use for the merging (you seem to be doing that pretty fast)?
ha, Merging is done with my own brain :p
The three branches have largely dealt with entirely different aspects of the editor so there hasnt been much overlap.
The merging is actually done but i'm trying to update the version of scintilla (the script editor).
It is not going well :/
The script editing wrapper class is a mess.
to quote CJ's comments:
Quote// This class is a bit of a mess ... autocomplete is out of control!!
What? That's crazy! :o
How do you know which files have been changed (and I changed a lot)?
Have you seen WinMerge? Or Beyond Compare?
Datestamps and common sense mainly.
I can tell what you edited by the date modified.
Ok heres a version including all the updates done so far.
You should of course check to see if I have made any fuck ups combining the code (this is very possible ^_^)
http://www.thethoughtradar.com/AGS/Editor/AGSChristmasEdition.zip
I have also added some other things:
- Code folding in the script editor (yay)
- Updated the formatting in the script editor to make things a little more readable.
- Characters and objects now display their co-ords when dragged around a room.
- Fixed GuiControl copy/paste
- Some minor refactoring of ProgZ's code.
- Fixed the IrrKlang error.
- Tidied up some of my atrocious code whilst in awe of Tzachs' coding skillz.
There is probably more to mention but i havent slept yet.. sleep nao plz.
Will release src later today.
Aha, the dialog script font and presentation is a solid improvement. Also, it's great to have find and replace added to it.
Just reporting some issues with the latest release.
QuoteError: Impossible de charger le fichier ou l'assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ou une de ses dépendances. Le fichier spécifié est introuvable.
Version: AGS 3.2.0.103
System.IO.FileNotFoundException: Impossible de charger le fichier ou l'assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ou une de ses dépendances. Le fichier spécifié est introuvable.
Nom du fichier : 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
à AGS.Editor.ScintillaWrapper.GetAutoCompleteScriptList()
à AGS.Editor.ScintillaWrapper.FindGlobalVariableOrType(String type, Boolean& staticAccess)
à AGS.Editor.ScintillaWrapper.ParsePreviousExpression(Int32 startAtPos, String& charactersAfterDot, Boolean& staticAccess, Boolean& isThis)
à AGS.Editor.ScintillaWrapper.GetFinalPartOfExpression(Int32 currentPos, ScriptStruct& memberOfStruct, Boolean functionsOnly)
à AGS.Editor.ScintillaWrapper.ShowCalltip(Int32 openingBracketPos, Int32 parameterIndex, Boolean functionsOnly)
à AGS.Editor.ScintillaWrapper.scintillaControl1_DwellStart(Object sender, DwellStartEventArgs e)
à Scintilla.ScintillaControl.DispatchScintillaEvent(SCNotification notification)
à Scintilla.ScintillaControl.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
This File not found exception happens randomly when a script pane is open and I scroll, or click on the menu.
Then the ags LUA Plugin doesn't seem compatible with this editor version.
Calin, I've changed the AgsEditor project to target dot net 3.5, and added the System.Core reference. That's probably the problem.
Ahh, ok I'll take a look at that.
I'll release the src and a new version once the new dialog script lexer is ready for testing, which will hopefully be tomorrow evening.
Good work guys! Merry Christmas! Have a good time with friends and family.