CEImagesetEditor -- Resource Directories

Use this forum for:
- Discussion regarding unofficial CEGUI related tools, scripts and utilities.
- User to user help for the obsoleted CELayoutEditor and CEImagesetEditor tools.

Moderators: CEGUI MVP, CEGUI Team

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

CEImagesetEditor -- Resource Directories

Postby ldb » Tue Jun 26, 2007 06:49

hello,

ive run into something in the imageset editor where i think it could be improved.

when setting resource group directories, they dont seem to persist. this actually makes sense since resources for an imageset could vary depending on your project.

my thoughts on improving this behavior would be to store a few settings in a simple xml file using tinyxml. i would then add a "New Project..", "Load Project..." and a "Save Project..." menu item. i would load/save these values:
  • Project Name
  • Resource directories
  • .imageset filename
  • (Optionally) imageset image file (windowslook.tga, etc).
  • -- this is available in the imageset file, so im not sure if this is needed.

i started playing around with the source, but just thought id ask around. i dont think its going to be that hard, just a few things added here and there. it would definitly be a productivity saver, since everytime i load an imageset i need to add my resource directories all over again.

to summarize: basically i just want to associate an .imageset file with a resource directory.
No matter where you go, there you are.

User avatar
scriptkid
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands
Contact:

Postby scriptkid » Tue Jun 26, 2007 07:05

Maybe you can come up with something generic, usefull for the tools?
http://www.cegui.org.uk/phpBB2/viewtopic.php?t=2679

So that a Project can also contain a bunch of layout file paths, looknfeels and such. Like a complete solution. Then Project can be a base-class in the tools layers. Just some thoughts :)

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

Postby ldb » Tue Jun 26, 2007 07:22

scriptkid wrote:Maybe you can come up with something generic, usefull for the tools?
http://www.cegui.org.uk/phpBB2/viewtopic.php?t=2679

So that a Project can also contain a bunch of layout file paths, looknfeels and such. Like a complete solution. Then Project can be a base-class in the tools layers. Just some thoughts :)


im not quite sure what you are suggesting -- could you give me an example context in which something like that might be used, so i can better understand?

if im thinking this through correctly, this would be something specific to cegui external tools? so, for instance, you create a Project object, and then call methods on this object in order to set project options? the Project class will be responsible for loading/saving your project data.

so basically, the Project file/class would be responsible for:
  • Managing resource directories
  • -- define a base directory (Project Home Directory)
  • -- add directories that are relative to this directory
  • ---- not sure how to go about preventing clashes when working on a project with multiple schemes, layouts etc.
  • Managing individual project files
  • -- list of .scheme files
  • ---- edit with scheme editor
  • -- list of .layout files
  • ---- edit with layout editor (CELayoutEditor)
  • -- list of .looknfeel files (although can a project actually have more than one of these? i guess you could keep this list, and switch looknfeels in the tool?)
  • ---- edit with looknfeel editor
  • -- list of .imageset files
  • ---- edit with imagset editor (CEImagesetEditor)
  • -- list of .tga, .png images for imageset files
  • ---- possibly edit with an image editor
  • -- ability to associate a image file with an imageset by mapping in the tool with some sort of interface.
  • -- abilitiy to set default .scheme from a list of schemes, and tools to construct scheme files from available resources in the project.
  • ... not sure what else ...


this is sort of off the top of my head.

another though im having is it would be nice to have a project explorer widget similar to the Solution Explorer in visual studio. here we have a hierarchy of our project -- Imagesets, Layouts, LookNFeels, Schemes, Images, etc. when accessing something in our project explorer, a tool for editing it could be created and given its own tab.

you could even then have a "Build Project" command. i could see this as compiling together any resources selected in the project explorer, setting up a project directory (if one doesnt exist), setting the resource manager on the fly, then even rendering it in a window for you to preview.
No matter where you go, there you are.

User avatar
scriptkid
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands
Contact:

Postby scriptkid » Tue Jun 26, 2007 08:54

if im thinking this through correctly, this would be something specific to cegui external tools? so, for instance, you create a Project object, and then call methods on this object in order to set project options? the Project class will be responsible for loading/saving your project data.


Yes i meant this. Each editor is facing the resource system, so a setup like this could be nicely shared. But maybe Project isn't the right word. Maybe Configuration is a better term. A project could then be a different class with a name, a reference to a configuration and a some user created files.

ppl
Not too shy to talk
Not too shy to talk
Posts: 31
Joined: Tue May 15, 2007 16:37
Location: Canada

Postby ppl » Tue Jun 26, 2007 12:03

Hopefully the INI configuration file will be replaced by an XML file. The configuration options goes beyond a simple key-value pair. If not, we will end up doing a lot of parsing for the value.

A second XML file should exist for each project you are working on. Some of the currently available options in the INI file should be moved there.

e.g. datafiles folder, etc.

A project would be made of a list of layouts, image sets, etc. that you are working on. It could also keep some project/workspace specific information.

I think we need to differentiate between the tool options and project-specific options.

User avatar
scriptkid
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands
Contact:

Postby scriptkid » Tue Jun 26, 2007 14:59

Yeah we will definately move to XML for configuration- and project settings. However INIs are still fine for some user settings.

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

Postby ldb » Wed Jun 27, 2007 01:30

i was searching around for a way to make wxWidget apps similar to Visual Studio, and found out about the wxAUI, which is part of the latest wxWidgets -- and it looks incredibly cool. this looks like the perfect application framework for a cegui tool.

here is a screenshot of the sample wxAUI application:

http://picasaweb.google.com/levi.burton ... 0168195106

on the right side there is a "Download Photo" link that is a larger image.

curious what you guys think...
No matter where you go, there you are.

User avatar
scriptkid
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands
Contact:

Postby scriptkid » Wed Jun 27, 2007 06:59

I've seen it and it looks really nice. However i don't know if it's just another view of whether it requires changes to existing code. It's probably an interface-only change. I am not sure about the way we should implement new tools yet. wxWidgets seems a good choice, probably using wxLua for example. In combination with CEGUILua this could be pretty productive combination IMO. But it's a bit too early too discuss these things; it will largely depend on who's going to develop the tools and what their opinions and preferences are.

Pompei2
Home away from home
Home away from home
Posts: 489
Joined: Tue May 23, 2006 16:31

Postby Pompei2 » Wed Jun 27, 2007 12:50

wxAUI is incredible, I tested the example application a few month ago, very professional ! It doesn't only look nice, it also feels nice !

scriptkid wrote:I am not sure about the way we should implement new tools yet.

I am:

ldb wrote:another though im having is it would be nice to have a project explorer widget similar to the Solution Explorer in visual studio. here we have a hierarchy of our project -- Imagesets, Layouts, LookNFeels, Schemes, Images, etc. when accessing something in our project explorer, a tool for editing it could be created and given its own tab.

you could even then have a "Build Project" command. i could see this as compiling together any resources selected in the project explorer, setting up a project directory (if one doesnt exist), setting the resource manager on the fly, then even rendering it in a window for you to preview.


This sounds just perfect to me ! from both developer's and user's point of view.

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

Postby ldb » Thu Jun 28, 2007 11:36

this is a screenshot of what ive had in mind for a integrated cegui development environment. its extremely simple at the moment, but its using the wxWidgets doc/view wxDocTemplate and wxAUI stuff (which will implement doc/views for each type in the project explorer).

http://picasaweb.google.com/levi.burton/Tools/photo#5081075363582285922

the project explorer is a doc/view that handles what i called a .ceprj file. the screenshot loaded this file:

Code: Select all

<?xml version="1.0" ?>
<Project Name="DemoProject">
  <BaseDirectory Type="Relative" Directory="."/>
 
  <Resource Name="imagesets" Directory="Datafiles/MyImagesets"/>
  <Resource Name="fonts" Directory="Datafiles/MyFonts"/>
  <Resource Name="looknfeels" Directory="Datafiles/MyLookNFeels"/>
  <Resource Name="schemes" Directory="Datafiles/MySchemes"/>
  <Resource Name="layouts" Directory="Datafiles/MyLayouts"/>
  <Resource Name="lua_scripts" Directory="Datafiles/MyLuaScripts"/>
 
  <Imageset File="WindowsLook.imageset"/>
  <Imageset File="TaharezLook.imageset"/>
  <Imageset File="DemogorgonLook.imageset"/>

  <Scheme File="DemogorgonLook.scheme"/>
  <Scheme File="WindowsLook.scheme"/>
  <Scheme File="TaharezLook.scheme"/>

  <Layout File="MainMenu.layout"/>
  <Layout File="SoundConfig.layout"/>
  <Layout File="VideoConfig.layout"/>

  <Font File="Verdana-10.font"/>
  <Font File="ComicSans-12.font"/>
  <Font File="CourierNew-12.font"/>

  <LookNFeel File="TaharezLook.looknfeel"/>
  <LookNFeel File="WindowsLook.looknfeel"/>
  <LookNFeel File="DemogorgonLook.looknfeel"/>

  <LuaScript File="my_script1.lua"/>
  <LuaScript File="script3.lua"/>
  <LuaScript File="anewluascript.lua"/>
 
</Project>


real simple format for now. im going to first try and get a doc/view going for imageset editing, since thats what i need at the moment.

a property editor pane would be nice too, located underneath the project explorer by default.

when clicking on something in the tree ctrl, such as a .imageset, the idea is to open up the view in a new wxAUI pane, or a tab or something like that (real similar to visual studio).
No matter where you go, there you are.

ppl
Not too shy to talk
Not too shy to talk
Posts: 31
Joined: Tue May 15, 2007 16:37
Location: Canada

Postby ppl » Thu Jun 28, 2007 12:35

Hmm. That looks interesting.

Pompei2
Home away from home
Home away from home
Posts: 489
Joined: Tue May 23, 2006 16:31

Postby Pompei2 » Thu Jun 28, 2007 17:05

Boy, this looks very cool and interesting ! I'm looking forward to test/use it :) If I had no current project I would help you, but it's not the case :P

User avatar
scriptkid
Home away from home
Home away from home
Posts: 1178
Joined: Wed Jan 12, 2005 12:06
Location: The Hague, The Netherlands
Contact:

Postby scriptkid » Fri Jun 29, 2007 08:34

Hey ldb, looks really nice already :)

Just to let you -and new readers know- that there is also another thread about upcoming tools:
http://www.cegui.org.uk/phpBB2/viewtopic.php?t=2679

, which mentiones more or less the way how tools should interact with CEGUI. This seperation of threads is fine with me btw, because this one focuses on the interface with the (upcoming) tools layer :)

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

Postby ldb » Fri Jun 29, 2007 09:28

scriptkid wrote:Hey ldb, looks really nice already :)


thanks.
Just to let you -and new readers know- that there is also another thread about upcoming tools:
http://www.cegui.org.uk/phpBB2/viewtopic.php?t=2679

, which mentiones more or less the way how tools should interact with CEGUI. This seperation of threads is fine with me btw, because this one focuses on the interface with the (upcoming) tools layer :)


yes. i was wondering if i should start posting this stuff in that thread, since im starting to kinda get off the subject of this thread.
No matter where you go, there you are.

User avatar
ldb
Quite a regular
Quite a regular
Posts: 54
Joined: Sat Mar 24, 2007 13:39
Location: Bloomington, IL
Contact:

Postby ldb » Sun Jul 08, 2007 15:30

just wanted to let you guys know i am still working on this. the name im currently using is "CEGUI Studio".

ive started a new thread about this app at

http://www.cegui.org.uk/phpBB2/viewtopic.php?t=2708
No matter where you go, there you are.


Return to “Unofficial CEGUI-Related Tools”

Who is online

Users browsing this forum: No registered users and 6 guests