EQInterface Forums

EQInterface Forums (http://www.eqinterface.com/forums/index.php)
-   General authoring help / discussion (http://www.eqinterface.com/forums/forumdisplay.php?f=12)
-   -   A new WYSIWYG editor on the horizon. (http://www.eqinterface.com/forums/showthread.php?t=16897)

GreenDragon 08-14-2005 12:45 AM

A new WYSIWYG editor on the horizon. (With basic screensshots. new as of 4/8/07)
 
I have been meaning to get around to this since well forever. Now that I have the technical knowledge and skill to make, design, and program a WYSIWYG editor I have actually started to make one. This editor will be unique in the fact that it will work even with new additions to the interface. If a new element in introduced it will just list it as UNKNOWN. This will allow you to change the values still however you will not see the change since the program will not know how to use the type yet. Other planned features are the ability to "play" the interface meaning have it seem like you in the game with each gauge going down then up, the animations cycle, etc... I am currently writing my own XML parser to do this since I need it to be very specific with my program. Progress will be slow, but by the end of the night I hope to have a semi working very limited parser done. My progress will be posted as I continue. Please post an ideas on features that can be added. Any useful links please also post. Also don't flame me because you think I'm just some kid who likes to talk big because this is really happening. I will also make it open source at some point after release.

Wolvig 08-14-2005 11:13 AM

Very Cool!

danny91643 08-14-2005 12:50 PM

Why would anyone want to Flame some one that would take on suck a Task ?
Good Luck and keep us posted. ;)

Dolby 08-14-2005 01:00 PM

Very cool, this will be appreciated by many I'm sure.

GreenDragon 08-14-2005 01:03 PM

I did'nt get any work done on it last night after I posted like I had said because I was super tired from the DDR tournement I was in earlier in the day, but if off to work on it now. Maybe ill have some screens or a demo later today.

Drumstix42 08-14-2005 01:44 PM

Sounds good. I wouldn't mind a nice UI editor to get me back into the groove of things.

GreenDragon 08-14-2005 03:56 PM

1 Attachment(s)
Well progress was slow because I had to figure out why it was doubling up. Now that problem is solved i can begin to parse the SIDL file to get a ElementType tree. I am attaching a screenshot of what it outputs right now.

Drakah 08-14-2005 11:13 PM

This will be very cool and most useful. I look forward to your 1st version! :)

The easiest way I can state what things would be nice to feature in your program would be to comment about the last SidlWidl program. Everything in that program is structured very well will all the needed pieces to alter a UI. Perhaps draw from that structure but add/alter this... :

~ Use of the cut/paste. For some reason viewing the raw XML in the program does not allow any cut/paste methods.

~ No pop-up windows or advertisements - unless you can turn them off.

~ Able to click on the reference in the xml, click on the drawn wysiwyg window, and be able to move it with the cursor keys. This was a problem in the past because when you clicked on the wysiwyg window, and use your cursor-up/down button, it would go up and down the referenced xml and not the wysiwyg window objects. Having it focus on the window you click is very important.

~ Able to add in templates with ease from default structures or from a personalized template you previously created (ie: you made a Gauge you would like to use in several UI's. Clicking on "Gallery" would give you a list of pieces you made and would drop the needed files into that new mod.

~ Use of right-click menu's over the wysiwyg window as quick items to "insert label" insert graphic" "insert gauge", etc.

~ The use of true/false statements must be in all lowercase. EQ I know has a problem with things being case-sensitive.

~ Color Palette chooser for text/gauge objects.

~ Use of clean formatting and XML structuring. A great program reference on what I mean is from this program that does just that. Except, it does not like <?xml version="1.0" encoding="us-ascii"?> that EQ XML files have. You would have to edit to be <?xml version="1.0"?> for it to do a clean formatting. Why? I dunno but its a pain.

~ Able to insert an image with ease. Inserts a TGA with automated coding. When you display the TGA in the wysiwyg window, you would be able to draw a selection window around a part of it and have it automate an object of choice - defintely would need a zoom feature for this for pinpointing the exact pixel locations. (view in either Color or Alpha channel)

~ Debug function to tell you exactly what is wrong, but do not crash. - "test mode". (ie: missing end argument for "<label>" in line 320.)

~ When adding in template elements, it would append just before the "<Screen Item=>" area.

~ When viewing a <frames> animation element, would be able to view the graphics related to it, with the images framed out of where it is referencing the images from - with a 1,2,3,4 in the corner stating which is coming 1st. Great for troubleshooting misaligned animations on the fly.

~ There are some references in the EQ XML's that are commented out, such as "<!--<Font>3</Font>-->". When editing the properties of a window element, if you change the font size, it would re-comment that tag back in, and alter it with the new size.

~ Stretching an object should draw it as you drag it - I know the text objects and some graphic buttons went wacky in the sidlwidl program, but went away after you close the window, and reopen it.

~ Undo/Redo functions with a number limiter that can be altered.

~ Backup feature that would autosave every 5 minutes (on/off in options)

~ Optional header code, via options, that would insert a customized header into each XML file you are altering. This way you know who is the author of any xml file.



hmm... what else :) I could keep going, but I think Ill stop here for now :nana:

GreenDragon 08-15-2005 02:51 AM

1 Attachment(s)
Oh Wow! That all i can say Drakah. Those are all very good ideas thought I am along way from implemented most of those it is all possible. I am going to attach an exe+xml file that will demonstrate my xml parsing so for. It will only read the tags in SIDL.xml right now but it will be hard to break using whats already in there. I will keep working very hard on this. Also as far as crashing without the bug thing. Well I mention I will make it list the Unknown elements just say unknown but it wont display them in the WYSIWYG editor window because it wont know how, but this way you can still edit the elements. As far as the comment/uncomment thing great idea I didn't even think of that. What I was going to do was list each property that each elementype can use then if you change it from the default I would write it back to the file. It would also take out the default value elements in the file already to conserve file space. Maybe i'll add an option for that. To add all and comment the default or remove the default completely. Please test this program for me and if it crashes tell me the last line out console output.

The file is scanned for viruses prior to uploaded by the latest Mcafee Virus Scan.

* Program update with timing see my next post *

Drakah 08-15-2005 02:14 PM

Lookin good :)

GreenDragon 08-16-2005 02:47 AM

Well after adding some more to the primary parsing function I will be rewriting it again for the third time to make it a more general use function, for use in all the other files as well. I also added in some timing functions for benchmarking. Please run this program 5 times to get a good average and the provide me with these details. Download is in my previous post.

CPU speed:
RAM:
Operating System:
Ticks 1:
Ticks 2:
Ticks 3:
Ticks 4:
Ticks 5:
Ticks per second:

* Hint just copy/paste and fill it in *

Mine would be

CPU speed: 1.6Ghz
RAM: 1 GB
Operating System: Window XP SP2
Ticks 1: 29836
Ticks 2: 34384
Ticks 3: 30361
Ticks 4: 29260
Ticks 5: 31208
Ticks per second: 3579545

Average run speed for me is 0.0086 second. aka 8/1000th of a second.

Now to find the average speed add all ticks together and divide 5. Then divide by the ticks per second (please provide with with the ticks though i can find average myself).

Drakah 08-16-2005 04:44 AM

CPU speed: 2.80
RAM: 1GB
Operating System: Win XP SP2
Ticks 1: 23882176
Ticks 2: 22369452
Ticks 3: 23203120
Ticks 4: 34877392
Ticks 5: 21414656
Ticks per second: 2793070000

I failed math way back in the day, well, being almost 6am, im surprised I even know how to type :)

GreenDragon 08-16-2005 09:51 AM

I averaged yours out at .0090 seconds.

ArcherPhate 08-16-2005 01:47 PM

CPU speed: 2.09 GHz
RAM:2 GB
Operating System:Windows SP2
Ticks 1: 13322
Ticks 2: 13365
Ticks 3: 12776
Ticks 4: 13409
Ticks 5: 13501
Ticks per second:3579545

GreenDragon 08-16-2005 02:15 PM

Wow thats quite fast .0037 seconds. If more poeple could post I'm looking for a good 10 person average. I will be rewriting the function again tonight so it can hopefully parse every file.


All times are GMT -5. The time now is 10:57 AM.

vBulletin Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.