LPMuds.net
September 03, 2010, 11:37:22 PM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: This is the forum page. For the main LPMuds page, visit http://lpmuds.net
 
   Home   SITE FAQ INTERMUD DOWNLOADS LINKS Help Search Login Register  
Pages: [1] 2 3   Go Down
  Print  
Author Topic: GUI Building Tool  (Read 7111 times)
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« on: April 16, 2007, 12:18:35 PM »

I have had an idea to build an offline GUI building tool (although rcp, may make it less offline Smiley ). I would really appreciate some feedback on how viable/useful my idea is.

My initial ideas for the tool are as follows:-

Drag and drop single/multiple objects onto a room/npc.

Edit short/long/name/id for objects. Also allow ability to edit files directly.

To load a room and follow links in a room to create a map of an area. (For new areas this will be easier.)
Ability to give each room a meaningful filename.

IO Interfaces
nfs,ftp,reditor(would allow update of files as well?), native file systems (Tested ntfs and ext3 already)

Program would initially be written to support DS2, but other mudlibs/codebases could be added.

I have included some screenshots from an early prototype. The basic idea is that you would be able to drag and drop objects between views to add them to a treeview as per the diagrams.

I have decided to write application in c#. To my unexpected delight, the program is also running on my Linux laptop (Ubuntu 7.04) the only package I had to add was  libmono-winforms2.0-cil.

It looks as though the mono project is really coming on in leaps and bounds. The windows compiled exectuable ran by just double clicking on it in Linux ! The associated events,jpeg background images dialogues,tooltips and mouse changing over buttons also worked!

If people have strong views as to using a different language then please let me know.

The real point of this post is more to discuss how useful such a tool would be and for me to see if there is anyone out there that would be prepared to help me test/develop/document this tool.

If there was enough community interest then I would be happy to develop this further and make it an open source application.

So please reply to this post and give me some feedback.

Saquivor

Logged
doppelgangland
Acquaintance
*
Offline Offline

Posts: 31



View Profile WWW
« Reply #1 on: April 16, 2007, 12:58:05 PM »

I personally think it's an excellent idea and that you should totally go on with it! I may be able to help documenting. I'm not much of a coder, but due to my job I know quite a lot about documentation, so if I can be of help, just e-mail me.
Logged

We shall fight on the beaches, we shall fight on the landing grounds, we shall fight in the fields and in the streets, we shall fight in the hills; we shall never surrender.
cratylus
Your favorite and best
Administrator
***
Offline Offline

Posts: 918


Cratylus@Dead Souls <ds> np


View Profile WWW
« Reply #2 on: April 16, 2007, 01:07:24 PM »

sexxxy.

-Crat
Logged
daelaskai
BFF
***
Offline Offline

Posts: 169


View Profile
« Reply #3 on: April 16, 2007, 02:51:22 PM »

Wow, this is very awesome!  I hope you keep it up, as it would be very useful to people.

Daelas
Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #4 on: April 17, 2007, 08:04:38 PM »

Thanks for the feedback.

I will hopefully make some time to work on this again over the next couple of days.

Next thing for me to crack is parsing the existing objectsfiles  into there various elements! When I make some progress with this I will post an alpha version of the binary to see how it works with other peoples file formats for rooms, npc etc.

Saquivor
Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #5 on: April 19, 2007, 03:21:04 PM »

Well thought I would post some screen candy on progress I am making. Keeping the application working in Mono is starting to slow me down, as some mouse events are not getting picked up, hence the mono button!

New Features include
  • Choose external file editor, files can be edited when double clicked
  • Drag and drop between Treeview's now works on Mono and Windows
  • Files can be edited within app (not with mono)
  • Started file parser, to split out key elements ie SetId etc
  • Confirmed file menu and status strip are working in mono

I am still looking for helpers/volunteers.

Regards,

Saquivor

Logged
doppelgangland
Acquaintance
*
Offline Offline

Posts: 31



View Profile WWW
« Reply #6 on: April 20, 2007, 09:15:48 AM »

I'm your fan. If I can help with documentation, e-mail me (what good's a program without docs?). Sorry I am still no good at programming (give me time).
Logged

We shall fight on the beaches, we shall fight on the landing grounds, we shall fight in the fields and in the streets, we shall fight in the hills; we shall never surrender.
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #7 on: April 20, 2007, 12:04:33 PM »

Thanks for the offer of help Morlock, it is much appreciated. To be honest documentation is more important than the code. I really mean that as well. I am not a programmer by trade but have programmed as part of my IT jobs for a few years. So you may be able to help more than you think.

I do not know what your email is mine is saquivor at monkeyx.net. If you want to forward your email address to me.

I will start sending you binary copies of the program so that you can play with the application. If you are prepared to install Visual Studio or sharpDevelop you could help my changing minor things to colours/text wording for menu/buttons or change what ever you like. Who knows before long you could be tidying up my messsy code and adding your own functions Smiley

For now please document the help in a Word/Open Office and start to think of some Chapter titles etc.

Quick update note, is that I finally got the right click context menu to work in mono Smiley and GDI plus appears to be working in mono. Which means that the mapper utility will also hopefully run in mono Smiley

Saquivor

Logged
doppelgangland
Acquaintance
*
Offline Offline

Posts: 31



View Profile WWW
« Reply #8 on: April 20, 2007, 01:24:20 PM »

Sorry, I thought my mail was visible on my profile. It is morlock59 at yahoo.co.uk

Logged

We shall fight on the beaches, we shall fight on the landing grounds, we shall fight in the fields and in the streets, we shall fight in the hills; we shall never surrender.
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #9 on: April 23, 2007, 01:51:27 PM »

Well another day and another screen shot(Mono screen shot shown). Someone asked me if I had ever seen the Smaug area editor tool. Which I had not. So after quickly looking at that application. It has given me some ideas for layout and reminded me that that I could really add a lot of detail here if I wanted. It would be useful to see how much detail people would like to see. ie every possible property than can be set for an object?

I managed to get some regexp working that are making data extraction far more reliable for items than span more than than 1 line. ie SetInventory, SetLong, etc.

Inbuilt and External editors work in Mono and and Windows now.I spent several hours tracking down what I thought was a mono bug that was stopping textstreams getting written properly. To find out that I had not chmod(ed) folder I was writing too!!!  Embarrassed Embarrassed Embarrassed

Drag and drop functionality is still there, I have just moved the source tree for items to a Tabbed folder to tidy screen display up.

Can anyone point to any other tools I could use as a point of reference ?

Saquivor

Logged
cratylus
Your favorite and best
Administrator
***
Offline Offline

Posts: 918


Cratylus@Dead Souls <ds> np


View Profile WWW
« Reply #10 on: April 23, 2007, 03:22:59 PM »

I don't have any suggestions but I wanted to express my happy approval
of what you're doing. I have no experience relevant to that project, and
can offer no technical assistance, but you have the entirety of my moral support.

Of course, that in a paper bag, is worth the bag.

But I thought I'd offer it all the same Smiley

-Crat
Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #11 on: April 25, 2007, 09:10:28 PM »

Well there good news and bad news.

The Bad news is that parsing text files to retrieve sensible information sucks big time!! Oh to be pulling this data from a DB!

The good news is that I am now doing some pretty cool text parsing behind the scenes. In that I can change and replace numbers for stats and levels using a Numeric Up/Down control. I can also change and replace a wider variety of text formats. Unlike screens shot above only actual data values are showing. So SetLevel only shows 1 and race only shows human. Are there some files in library I can read that in that will let me see all valid races and sexes so that I can parse them straight into the app when it loads? If not I will make it a list that can be edited by user, with defaukts being support for stock DS2.This will then let me set races etc via dropdown list, rather than typing it in.

After the changes have been made in the various data boxes, there is a routine to copy it all back into the main edit windows. When it can be reviewed and saved.

After hitting some hurdles with parsing, I am confident that this project is going to work. I can now do most of the things that I needed to prove to myself that this project was achievable. The other benefit of recent work, is that it will make it easier to customize the app via configurations to support a wider variety of LPC projects.

Progress limited right now, as I can only spend an hour a day on this project.

Saquivor
« Last Edit: April 25, 2007, 09:12:49 PM by saquivor » Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #12 on: April 30, 2007, 03:05:20 PM »

Well I would not even call it an alpha release. I have released this version and some very basic instructions to gauge feedback on progress so far.

So if there is something that you think could be added/or developed more fully then please let me know.

Access to project file can found here. At code Google Code.. See downloads tabs to access files.

My contact details are included in the documentation, or please leave feedback via lpmuds.net.

Saquivor
Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #13 on: May 02, 2007, 09:41:52 AM »

Thanks to everyone who has downloaded the current version of the application. I will be adding support to save configuration data to xml later today. Will hopefully get the treeview operations working better by the end of the week. I have started to list some issues here. If anyone would like to leave feedback/issue via the page I would be grateful.

One of they key things I was hoping for feedback on, is the idea that this project can work with existing LPC objects, rather than reading xml templates for creating new objects only. ( I am going to add this facility at a later date). I have enjoyed the challenge of parsing existing LPC objects into the application, but if this is not as useful as creating new objects then please let me know.

I am also contacting some open source c# ftp projects to ask permission to add their libraries/classes to my project.

Saquivor
Logged
saquivor
BFF
***
Offline Offline

Posts: 109



View Profile
« Reply #14 on: May 04, 2007, 01:44:21 PM »

I have released a new version of the app for testing. No major change, added an xml class to allow settings to saved via the settings Tab.

Next release will hopefully have the drag and drop functionality working, as well as ability to add new properties, for all items.

Updated documentation to include compiling mono from tarballs, which is not for the faint hearted!

Link to files here.
Logged
Pages: [1] 2 3   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!