Milonic provide full featured pull down web menus for some of the worlds largest companies
click here to see what it can do for you

Download Milonic DHTML Menu
Buy Milonic DHTML Menu

Back To Start Of Archive
Taken From The Forum: Windows Menu Builder
Forum Topic: Click to view post
Last Updated: Saturday July 14 2012 - 06:07:53

Graphical Menu Editor...

Poster: code-frog
Dated: Sunday February 13 2005 - 0:04:25 GMT

Is there a graphical menu editor for this program? If there isn't are there plans to write one? If there are not plans to write one can I? A GUI that handled the default menu could be written in a weekend. Then all the extra properties could be added over time...

- Just curious :D

Poster: blaine
Dated: Sunday February 13 2005 - 2:35:12 GMT

If your lucky enough to be running Geeklog as your site CMS/Portal then you can use the glMenu plugin that I developed which integrates a menu builder with Geeklog's Core menu and security functions.

All the Milonic menu links are created dynamically based on user access rights and the glmenu definitions. Supports multiple menus (site header and block). No need to create menu defintions manually or edit html files.

For more information - have a look at my site: or the datasheet.


Poster: John
Dated: Sunday February 13 2005 - 5:22:44 GMT

There was one in the works last year, but it got pushed back with the advent of v5 and all the new features, etc.

You are, of course, certainly welcome to have a go at it.

Poster: code-frog
Dated: Sunday February 13 2005 - 6:16:37 GMT

I make no promises for when it will be done but I'm going to write one. I've been hankering for a small project to relax and enjoy. One that a client isn't paying for and one that is just for fun.

I'm thinking that at first it will visually expose the colors, etc... Of each menu style in the file. If you decide to change any settings it will make a compressed backup of the current file and let you save your work. Then if you ever decide you want access to previous menu data then you can simply unpack it from the compressed file and place it where you wish.

A good backup strategy is probably the best place to start.

Poster: code-frog
Dated: Sunday February 13 2005 - 6:45:05 GMT


I was going to PM you but noticed I can't. I saw a color picker on your page that's a "work-in-progress". I wrote one a long time ago because I get so tired of the way other color pickers work.

Email r#e#x# __at__ #c#o#d#e#-#f#r#o#g#.#c#o#m remove the #'s. I'll give you the link. It's an 11Kb zip file that contains a compressed VB6 exe. No installer at all. It just works assuming you have the vb-runtimes.

Anyway, this tool is handy. I wrote it with 4 columns and 10 rows that allow you to save (current session only) as many colors as you want. All you have to do is click the text box where you want the color and then drag the dropper to capture the color. It shows the color in long, hex and rgb.

It's easy to use. If you are interested in it I'll send you a downlaod link. Milonic is more than welcome to offer it to users. I certify it is spyware free, doesn't send in emails and contains no viruses. It's a very simple application but I'll provide any support (at no charge) to anyone having a problem.

I'm not offering this for any other reason than sharing. I'm not asking a thing in return. :D

Here's a screen capture of colors I just "picked" from this message board.


- Rex

Poster: Ruth
Dated: Sunday February 13 2005 - 7:15:52 GMT

Not to sound dumb, but since I am uneducated in this, what exactly is a graphical menu editor?


Poster: John
Dated: Sunday February 13 2005 - 18:50:00 GMT

Ruth wrote:
Not to sound dumb, but since I am uneducated in this, what exactly is a graphical menu editor?

Not at all, Ruth. My "ass-umption" was something along the lines of the menu builder we were working with early last year. Last topic on the main page.

Poster: John
Dated: Sunday February 13 2005 - 18:53:48 GMT

Rex, that directory is kind of a catch-all for testing (including user menu problems), fool-arounds, get-me-away-from-this-job-for-awhile stuff, etc. That particular color-picker was just a fool-around.

Yours looks really good. You can use my email link below to send me the info, and thank you.

Poster: code-frog
Dated: Sunday February 13 2005 - 19:01:03 GMT

with(menuStyle=new mm_style()){
fontfamily="Verdana, Tahoma, Arial";
overfilter="Fade(duration=0.2);Alpha(opacity=90);Shadow(color='#FFFFFF', Direction=135, Strength=5)";

Mainly I was referring to the color selections. I don't know about most but when I look at the code above and see 7F0400 I don't have a clue what color that is. I know what 000000 and FFFFFF is but that's only because I can count in hex and binary and can just figure that one out.

My goal was to create a graphical menu-style editor that would give you the option to see what the current colors are (with a color-swatch) their hex values etc...

Ultimately, I'd like to write a little jscript interpreter that would dynamically show the user the menu with each change they make. Maybe I'm wrong but I think it would be cool to have a little program that had a built in browser window. This browser window would show you your entire menu as it was being defined and let you mouse-over it and test it and touch and feel. All in one place. So I can change borderstyle, bordercolor and seperator color and my menu is changed right next to my selection. Then when I'm all done, I click "Save" and it writes out menu_data.js and it's ready to go.

Now take it a step further, what if it exposed every single property in expandable rows logically grouped where users could set each one and mess with it real time to see what it does or doesn't. Imagine how much less of a support burden milonic might have.

Imagine the "curb-appeal" that milonic would have if people could visually build there menu real time.

That's what I was thinking. Now the question needs to be asked. Am I the only person that thinks that would be cool? :D

- Rex

Poster: Ruth
Dated: Sunday February 13 2005 - 19:59:32 GMT

code-frog wrote:
Am I the only person that thinks that would be cool?

I would say, "probably not". I do that now, using a wysiwyg editor, but it means: loading the page and the menu_data.js file in the editor, putting a change in the menu file, saving it, and then clicking on the page tab and view to see what the change looks like, if I don't like it, I go back to the data file, click undo in the editor, save again so it's back at the original, then do another change, save, check and so on. Or alternatively, I load a page in my browser on the desktop, open the data file in the editor, make a change save it and then click the reload button on the browser. Again, if I don't like it, I use the undo and save to have the original back.

I think what you are talking about is what the menu builder was supposed to be, but as John noted so much was ongoing at the beta and first testing of the menu itself and so many other things users wanted came up to be done and that kind of got left in the background.


Poster: John
Dated: Monday February 14 2005 - 2:29:25 GMT

Rex, I get in to work at 0600. I'll be looking for the first draft at that time Monday (tomorrow). :D

Poster: Andy
Dated: Monday February 14 2005 - 10:17:23 GMT

Hi Rex,

I'm all for a menu builder - We are working on an online one and a Windows one was started by someone else but never got completed.

Anway, we can do this as an Open Source product if you like, one that we can all contribute to.

If you want to get a brief spec done we'll definately go through it.

What language are you looking at writting this in?

I look forward to working with you :D


MMB (ie:Milonic Menu Builder)

Poster: willemk
Dated: Monday February 14 2005 - 10:30:03 GMT

If the webbased version is going to be written in PHP and MYSQL I might be able to help. My menu is already database driven!

If not needed then it's also fine with me :D :D

Poster: code-frog
Dated: Wednesday February 16 2005 - 21:38:35 GMT

Well I don't have tons of PHP experience. MySQL is like any database just use SQL and it's happy.

I don't know that I was thinking a collaborative effort per say. I'm not opposed to that either. I just have noticed that collaborative projects can start top-heavy and never recover. Which is to say they die before they are born.

I had not decided (well yes I had) but I'll leave it open. I was going to use C# and Visual Studio .Net. For a couple of reasons. With Mono getting a Linux port shouldn't be to hard and C# is standardized so that means it's going to be what it is and can be relied on.

Other choices from my skillset are C++ and VB 6.0. I never really liked VB 6.0 (but I learned how to please managers with it) for that reason I never even sniffed at VB .Net.

So I'm thinking C# is a good choice because we can have a cross-platform if we desire though I think prudence would make that a second or third release goal.

In terms of a frame-work or design goals.

1. Be able to open existing menu_data.js files in ASCII.
2. Have file support for *Nix and Windows platforms. So we don't change the properties of the menu_data.js file. If it's a unix character set keep it that way.
3. Expose menu styles and menu implementations in an explorer type interface. Menu_data.js regions on the left, and their text on the right. So someon can click the menustyle name or the menu name and then view the definition code/properties on the right.
4. The plain text would be present with button selectors that showed the current color/style selection with a clickable function that allowed a color picker to be used to pick a new color from a pallet (pallet not part of application yet).
5. To begin with I just wanted to handle a small set of properties and grow from there.
6. Having a java-script enabled preview would be (I think) the creamiest touch to the whole design. You can open, edit and preview all in one window.

Design considerations:

Allowing FTP connection and editing in place on the destination web server.

That's a pencil-sketch of what I had in mind. A formal design process would expose anything I might have missed. So would the opinions of others. If we were really serious about a collaborative effort and making it open source we'd need a small handful of people to code and one designer. We could acquire testers later but I believe testers should *not* be interface designers or developers. Testers should be users only.

Just a few ideas. I've got a 120 gig server we could host the project on or we could do it here. If possible I'd like to avoid excessive design discussion and then lock down features up front to prevent scope creep. Obviously a lot of people are going to have a lot of ideas and this thing can snow-ball in short order.

Feedback? Comments? Criticism?

I'd also like someone to try very hard to put together an answer to this question. I'd like to see a solid, well thought out answer.

Why shouldn't a graphical design tool that wraps menu_data.js be built? What specific reasons make this project a poor idea that should be shelved?

Poster: Andy
Dated: Thursday February 17 2005 - 12:48:51 GMT

C# is a exactly what I was thinking of.

The only trouble is that I have very little experience of it so it's going to be a learning curve for me which is great. Bout time I learn't something new..... Proper programming :D

I'd like to keep this project flexible and easy going. No point doing something unless we are enjoying it. If it starts to get out of hand we'll address that as and when it happens.

When do you think you may have something we can work on?

I'd make a start but I think it would be good if you can do the foundations and the rest of us can build on from there and as I'm no C# expert may make many mistakes.

Anybody got any ideas and an answer to code-frogs question?

Why shouldn't a graphical design tool that wraps menu_data.js be built? What specific reasons make this project a poor idea that should be shelved?

My response is "There's no reason why a graphical design should not be built" and "I can't come up with any reason why its a bad idea"

I know it's not what you were looking for but I feel quite strongly about the above. Now where's that Kevin got to ;)


Poster: Ruth
Dated: Thursday February 17 2005 - 19:04:24 GMT

Dittos for me as to the answer to the question. Kevin deserted us for awhile, out there someplace speaking Spanish, I think. :)

Do you think a separate forum should be set up for this? Maybe a group or something?


Poster: John
Dated: Thursday February 17 2005 - 20:57:46 GMT

Ruth wrote:
Do you think a separate forum should be set up for this? Maybe a group or something?

Why not the one we already have...?

Well, well...

Poster: code-frog
Dated: Friday February 18 2005 - 0:33:27 GMT

This might shape up to be fun. C# it is.

My question about, "Why a thing should not be done..." is to get people to approach a problem solution from all the angles. Usually when you have a problem you are attempting to solve the first solution that comes to mind is what most people go for. If you can stop yourself and ask, "Why should I not solve this problem?" Invariably what happens is that you wind up proving why your first solution is good or you lead yourself to another better solution.

Someone might have replied and said, "We don't need a graphical editor at all. I've been working a long time on one that runs using PHP and MySQL it's almost done. Have a look." In this case, we just saved ourselves some work. Another example might be, "I've tried this in the past with other things and it wound up not working. Here's why..."

As you all know developing software is expensive. I have people that pay me $100 an hour to write systems for them. So I think it's good for us to go slow as suggested. I also think it's always a good thing to stop peridically and take an assessment of what has been accomplished. Have we met our goals? Are we doing what we set out to do? I always try to attack and rip apart my own design's and solutions to make sure I'm really developing a refined product or solution.

As to needing a special place to work on this I'd have to say that depends on how this thing evolves. The prudent part of me says that nobody should do much of anything until we have a little more than something. :) So in time we may need a better infrastructure to support the work on this. For now let's keep foot-loose and fancy-free here in this thread. I'll start working on a design. The design is going to take some time as I need to look over the entire milonic property list and get familiar with it. Let's say by Sunday (02-20-05) that will be done. Once that is done I will start to put together a design. That should not take more than about 7 days. So by 02-27-05 we should have something to discuss in greater detail.

Now some other questions.

I have Visual Studio .Net but I'm guessing that not everyone does. If everyone does have VS .Net then no problem. If they don't I suggest that the project be done entirely in Mono that way anybody can participate who wants to. Which leads to the next question. At this point who is planning on joining in the fray :) and what tools do you have?

{Edit} I just realized this thread got moved to a fine home. Seems like it will work just fine for the moment. {/Edit}

- Rex

Poster: Ruth
Dated: Friday February 18 2005 - 5:21:15 GMT

:D Nice name!


Poster: code-frog
Dated: Monday February 21 2005 - 4:30:25 GMT

Okay, I've reviewed all the properties. Now I'll start an informal design process.

Poster: Andy
Dated: Monday February 21 2005 - 12:34:12 GMT

Just one thing to remember.

It might be an idea to ensure that new menu/style properties can be added easily. They are being added all the time, although not as much these days. So it would be great if you can perhaps use XML for setting up the properties.

That way we don't have to recompile when we release a new version that has any changes to the menu data structure.


Poster: Andy
Dated: Monday February 21 2005 - 12:37:23 GMT

Also, I think it would be great if we can have 2 or 3 different property views for building menus.

Something like:
1. Basic.
2. Advanced.
3. Everything.

Basic will just give you text, url, and basic colors for setting up a text based menu.

Advanced will be the same as basic but with extra properties for declaring images and other tuff

Everything will allow you to use ALL of the menu properties.

There are way too many properties to be able to view them all at any one time so by simplifying it with a basic set of properties would be just great for the noobs.


Poster: code-frog
Dated: Monday February 21 2005 - 19:41:26 GMT

What about grouping similar properties into categories?

- Font (Size, Color, Weight)
- Image (Subimage, imageon, imageover...)
- Lines (Borders, Etc)...
- Effects
- Orientation

You get the idea.

Some time down the road it would be cool to build in all your examples into an example browser. Where a user could view them all, select the one they like and immediately start using it.

- Rex

Menu Setup helper

Poster: ywfbi
Dated: Wednesday August 31 2005 - 10:52:16 BST

Hi folks, I wrote this just out of shear bordom.
Basically it takes a menu_data.js file and lets you change and preview color, font settings etc, etc, and then outputs a new menu_data file for you to copy and save. Basically its HTML/javascript based, has a few bugs and does need finetuning, (not to mention to scope for additions to the basic HTML page). Have a look, if its any use to ya let me know. Ive got to the stage where Im spending too much time on these projects and have decided to shift my resources to something more productive for me!

Poster: Ruth
Dated: Thursday September 1 2005 - 8:05:22 BST


I like that. It doesn't update to the new code, is it supposed to update so you see changes or just output the new code for you? It doesn't do that either. But, I do like the idea. Very easy to use. I think most everyone is away right now, but will take a look when they are back.


Menu Setup helper

Poster: ywfbi
Dated: Thursday September 1 2005 - 9:58:25 BST

Hi Ruth, youre right, it doesn't update the menu_data.js file directly. Would have to do some activeX to get that done, or possibly flash.

What it does do is display the changes on the menu it has loaded from the menu_data.js file supplied (which is basically standard), so you can see the effect it will have on the same page your editing with. (Is it not doing that on your end?) .
You can use your 'own' menu data file by putting it in that folder, and then try changing the menu and see the results as soon as you've changed any field in the form.

There are some issues particalary with firefox and borders also followscroll, menu alignment on all browsers. Although most of these should be able to be resolved by mapping to the correct array objects.
After clicking 'save current data' the menu_data window is created entirely from the _m and _mi array contents, so it will contain any changes you've entered, the output is pretty close to the actual file I used. The intention here is that you can copy and paste into a new file to save the changes, although automating this would be good IMO.

While writing the menu_data output function (savedata) I noticed several small mistakes where some things could have been done a better way. Also there is no reason why it couldn't be made to actually create or alter menu contents directly, or even create a menu from scratch. It works by reading and writing directly to the _m and _mi arrays, so all that you'd have to do is create a new form for the input, and create a function to write to the arrays the new menus (see wrtmenuitem func.), then call updateMenu();

One question though, what is _m[x][21,22,23]? These are the only things I couldn't figure out. Is _m[x][22] the menustyle?

Edit: BTW heres the link to source files, save you searching through the temp internet files....

Poster: Ruth
Dated: Thursday September 1 2005 - 16:35:14 BST


I don't know anything about doing javascript or programming, but I think the numbers are the reference numbers for different properties.

headerbgcolor 21
subimagepadding 22
subimageposition 23

There are links below my name for properties in the menu, the menu properties and item properties have property ref numbers with them.

As to the tool, it doesn't do anything on web site page, nor when I try it on my desktop. It will put the color numbers into the little select box, but it doesn't output the new numbers when you click the Save Current Data, either. I have IE5.5 Win98.

[As a side issue, because I can't figure out what's doing it, I have zonealarm set to require I click yes to access the internet. Normally when I'm working on a page it never activates zonealarm but when I open the page from your zipfile in IE it tries to access the internet. The info I get from zonealarm is that the destination is, something to do with IANA. LOOPBACK, whatever that is. Do you know what's doing that and can I change it?]


Poster: ywfbi
Dated: Friday September 2 2005 - 6:41:26 BST

Ruth wrote:
headerbgcolor 21
subimagepadding 22
subimageposition 23

Hi again Ruth, hope everythings well your way,
those are _mi[x][xx] values, ie menu item properties, I got those, its just the 3 _m[x][21,22,23] - menu properties values I couldn't figure out ;)

Ruth wrote:
As to the tool, it doesn't do anything on web site page, nor when I try it on my desktop. It will put the color numbers into the little select box, but it doesn't output the new numbers when you click the Save Current Data, either. I have IE5.5 Win98.

Not sure why it doesn't work on IE5.5, probibly the js Ive used is wrong somewhere, are you getting scripting errors? Also are the popup windows being blocked? I only have IE6, FF 1.0.6 and Opera 8.02 for testing so I may have used code that doesn't work on IE5.5
Ruth wrote:
The info I get from zonealarm is that the destination is, something to do with IANA. LOOPBACK, whatever that is. Do you know what's doing that and can I change it? or loopback is your own computer, I think all traffic from your browser goes through the firewall, so its just asking for permission to access a local file. IANA is the 'Internet Asigned Numbers Authority', probibly just in reference to the IP, IANA would asign that to loopback, ie looping back to itself. Not sure why its asking though, maybee because of the embedded scripts.

Poster: Ruth
Dated: Friday September 2 2005 - 14:17:15 BST


Those 3 menu properties don't seem to be listed so I'd have no idea what they are. Perhaps they are some property that is not configurable so they are not listed in the property reference?

I just tried it in FF1.0.2 and it works just fine. I did open the js console and get one warning, not error.
Warning: Element referenced by ID/NAME in the global scope. Use W3C standard document.getElementById() instead

It refers to this line div1.innerHTML = msg; from the top part
msg = ("Use you own menu_data.js file to see your setup.");
document.write('<br><br><br><div align="center" ID="div1"></div>');
div1.innerHTML = msg;
var TCP = new TColorPicker();

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr);

Thanks for the information on the loopback. I've just never had IE request access to the web when working on a page on the desktop unless I had a href web address to an image or something.

I'm playing with the editor. I have to say I like it :D


update HTML editor

Poster: ywfbi
Dated: Saturday September 3 2005 - 15:20:19 BST

OK, I just cant leave it alone... adding menu item editing to the mix..., havnt done the save to array function yet, a work in progress.

Zipped files....


Poster: Ruth
Dated: Saturday September 3 2005 - 16:02:41 BST

That's terrific. And I know what you mean by 'can't leave it alone' I can't do programming, but I'm constantly [at the loss of doing something I should like clean house, paint...] making new menus designed in the weirdest layouts, mixing and matching treemenus and mouseovers, horizontal tabbed treemenus.... :lol:


Poster: Ruth
Dated: Saturday September 3 2005 - 20:44:24 BST


Taking into account that I don't know any javascript or programming, I was messing around trying to see if I could make it work in IE5.5. Since it wasn't changing the menu, I looked for something to do with applying the change and saw the function updateMenu() and right below that I saw if statement
function updateMenu()
if (ie55) chk_ins_font();

I figured, 'take that out, [since I can put it back with the undo in my editor :)] and see what happens'. With that out of there, the menu updates in IE5.5 Of course I notice the chk_ins_font appears later, even though it doesn't have if (ie55) in front of it, so I don't know what happens with that.

I have no clue on outputting the saved data. I can't find anything in there that has anything to do with IE.... so it still doesn't output the data, but it's neat for seeing how the menu looks. :)

I also saw this line
if (_m[0][6]) newdoc.write('style="menuStyle";<br>'); // I cant figure out how to output this style object!!
There is a function called changeMenuProperty that Kevin wrote which has a demo While trying it out it was discovered that it will not change the menuStyle. In response, Andy posted a demo to change the menuStyle and if you view source toward the bottom you'll see some functions, and I guess that is included. I don't understand any of it.

Sorry for such a long post.


Poster: ywfbi
Dated: Sunday September 4 2005 - 1:12:18 BST

Ruth wrote:
.....I saw if statement
if (ie55) chk_ins_font();

With that out of there, the menu updates in IE5.5

Ahh, interesting. That is in there to prevent other browsers going through the 'check installed fonts' function
for (var loop=1; loop<dlgHelper.fonts.count+1; loop++) allFonts[loop-1] = dlgHelper.fonts(loop);

should only work in IE5.5+, or was it 6.0??? :oops: Thats more than likely the problem. The whole thing could be done without anyway. I'll remove it now, try the link above when you get time. It is only there to help with font selection, but are is 2 backups! ;)
Ruth wrote:
.....I have no clue on outputting the saved data. I can't find anything in there that has anything to do with IE.... so it still doesn't output the data, but it's neat for seeing how the menu looks. :)

Is your browser blocking pop-ups? Thats the only thing I can think of....but I'll have another look :?:
Ruth wrote:
I also saw this line
if (_m[0][6]) newdoc.write('style="menuStyle";<br>'); // I cant figure out how to output this style object!!
Andy posted a demo to change the menuStyle and if you view source toward the bottom you'll see some functions, and I guess that is included

Thanks Ruth, I'll take a look at that. As you can see I cheated there, rather than writing the actual style name I set it to menustyle.
The wierd thing is that I cant output the borderstyle either, untill I've apply it manually at '_mi[x][64]', probibly a javascript lesson is due. :?:
At the moment Im working on rewriting _m arrays for the edit menu items function, got my hands full there, but getting the menustyle right will mean custom styles will be recoginised!

Poster: Ruth
Dated: Sunday September 4 2005 - 5:08:02 BST


ywfbi wrote:
Is your browser blocking pop-ups?
No, nothing blocked.

I just tested the new one. I can now see the changes for all the things now, but if I output the menu_data.js file it will only change the things from the right side, excluding borderstyle, but nothing from the left that has to do with the color things.


Poster: Ruth
Dated: Sunday September 4 2005 - 5:29:20 BST

Hi again,

I meant to say something about border. There seems to be something that maybe could be called default fall back or something, sorry I don't know technical terms.

Offborder and Onborder are properties that when set put a border around each item. However, though I cannot find a property ref code for border, you do not have to set either off or on border, you can just set borderwidth=; borderstyle= ; and bordercolor=; which will place a border just around the menu, not around each item as the other two. Don't know if that gives you some helpful information or not.


Poster: ywfbi
Dated: Sunday September 4 2005 - 14:45:34 BST

I found border color, _mi[x][63], you're right, maybee I should add another set of selectboxes for the menu border. :)

on/off border a.f.a.i.k. is the only way to create a mouseover border effect for the menuitems, something I had an interest in doing.
Ive set them using on/off border alone, _mi[x][9,25] seems to work fine since you put the style in there as well.

can just set borderwidth=; borderstyle= ; and bordercolor=;

{edited due to being totally incorrect} To use those I'd have to reload the menu_data.js file, meaning loosing the changes... however refs are...
borderwidth = 65, borderstyle = 64, bordercolor = 63.. not sure if they're on the site or not, but not hard to figure out ;) Of the three only borderstyle is needed, as it contains the other 2 anyway.
Anyway borders should be working now, some stuff on right still needs finishing, but in the course of time! Also menu item editing is comming along very well, only final stages of that to go!

Poster: Ruth
Dated: Saturday September 17 2005 - 6:36:07 BST


I wondered how it's going? Are you still playing around with this. I have been using the styling part, I really like that. I have created a page that I can pick the 'design' area bgcolor and then use your editor to see different things on the menu.

I added a couple of things to the file and wanted to let you know about that, in case you wanted to do something with them, and I also added an item to the menu itself. It is a function to change the orientation from horizontal to vertical, that way you can see the design in both orientations. Kevin wrote that function for the IE Filters Demo.

1. separatorsize and separator color. It won't update on the menu, but it does output to the file. I think it may be something like the border around the menu.

2. the fontstyle and fontweight for the off mouse position. You have the onbold and onitalic, but for the off position it uses the fontstyle and fontweight.
if (_mi[0][13]&&_mi[0][13]!="normal") newdoc.write('fontstyle="' + _mi[0][13] + '";<br>');
   if (_mi[0][14]&&_mi[0][14]!="normal") newdoc.write('fontweight="' + _mi[0][14] + '";<br>');
With this it allows you to set styles different for the mouse on and mouse off position if you want.

3. textdecoration, which allows setting the textdecoration in the mouse off position.

Also, I noted that you have an option on there for menualign. Just so you know, menualign will only work if the menu is set at 100%, not at pixel width.

Finally, I have a function that will put a border around the menu. I use it outside your editor because I would have no clue how to include it, or even if that's possible. Kevin wrote it for me. I thought I'd post it here in case it would help you in any way.
function mm_changeBorderStyle(menuName, width, style, color)
  menuObj = gmobj("menu" + getMenuByName(menuName)); = width; = width; = width; = width; = style; = style; = style; = style; = color; = color; = color; = color;
With some help, I split it and fixed it so I could apply size, color and style separately and be able to see different things.

Anyway, I figured I'd give you the info I had, and a link to the page I made for me to use your editor. I use it on my desktop, but uploaded it so you could see the border part I'm using. There is a lot of other stuff there that really isn't for your editor, just how I wanted to set things up for my playing around with the menu designs. My Page


Menu bulider

Poster: ywfbi
Dated: Monday September 19 2005 - 13:27:34 BST

Hi Ruth, I like what you've done, the Horiztonal/Vert was something I was gonna add later. Im sure you can see how things can be added to the basic structure, something thats important I think. As to your writing outside my thingy do worry at all, I can put most of that in the main function. (Probibly except the background, unless we add code to the milonic sources)
At the moment Im thinking the imporntant part is getting the edit items working properly. Do you think you could get Kevin to work on that??

I havnt had time over the last week or so and have found rewriting the _m and _mi arrays the hardest part to do so far. So far that online version used a second array _tma which is given the basic menu structure, this enables the edit boxes to function. However this leaves absolutly no support for multiple styles as only the basic menu items and structure are written then the output simply copies all data from _mi[1].
What I'd prefer to do is get the following functions to directly alter the 2 standard arrays....
addMMI(), delMMI(), addSMI(), delSMI().

For example..... say we add a Main Menu item after the second item......

Firstly the _mi array will need to be shifted, eg if we add after the second item then _mi will need to be shifted up one from _mi[2] until the end. So _mi[2] becomes _mi[3] - _mi[3] becomes _mi[4] and so on.

Then the new data goes into _mi[2]. At this stage I propose we copy data from _mi[1][5-99] into _mi[2][5-99].

Next _m needs to be rewritten, we need to shift this also to place the new menu into _m[3]. So _m[3] becomes _m[4] etc etc.
Now _m[0][0][x] needs to be written, then _m[y][0][z] needs to be indexed/written.

Now the order of the above operations will be critical, I had big problems and have kinda put it aside as I was spending sooo much time going round in circles. It would be nice to have a fresh perspective.
Here is the main.js file feel free to add the missing functions '*******'.
Also Ruth, if you want to redesign the HTML page more into the 'Milonic' line of things (like with how you did the border color) or add things you think should be in there please feel free. Even if you just make a unfunctional page I can put the code in to make it work. Although at this point in time I would rather get the editing parts working since that represents the biggest hurdle, and the most critical functions of the project. Any comments from Andy? Is he interested in the project?

Poster: Ruth
Dated: Wednesday September 21 2005 - 2:45:35 BST


I had a bit of trouble, mostly organizational, as to what to put in the page. For example, image can be set in the style, but I felt that most would not be using the same image in every item, so I left it out, I did that with a few things which seemed to be more logically placed in the item rather than the style.

Rather than try and organize the page layout, I just put the things below all that was already there. You'll see all I included.

As far as I can tell, trying each thing, they all output, but not all will update, and some that do update then prevent the menu from functioning, i.e. dropping the submenu, that is especially true of bgimages, separatorimages, subimages. It will output it all, and once reset defaults and reset page are used everything is fine.

I tried something with the border, I removed what was there and instead I placed [in the new section] an item border and item onborder that uses a text box where you write in the code i.e. 1px solid #ff0000. It doesn't use the little color picker but doing it that way you can set the offborder and onborder to different styles, and even sizes if you want. You can also set the border, which I did use the little color picker for, unfortunately, it doesn't update, but it does output. So, you will get borderwidth, borderstyle, bordercolor and also onborder="code";offborder="code"; if you've set them all.

So, here's the NEW PAGE and here is a zip of all the files.

I'm sorry I can't help on the other part. I have no knowledge of js. What I did here was just try following what you had written for items. I made some 'corrections' in the bottom part that is the output, like removing the quotes from the one that writes out the style=menuStyle, since that is not supposed to have quotes.

If there's anything else I can do, let me know. If I could get the border part to work, I'd be better able to design the page.

Ah, one thing I meant to mention. For some reason when you output to the data file, it is outputting the filters in both the style section and the menu section. I think just in the style section would be best. And, if they are a real problem in trying to set them up, how about setting up a fixed one, and then after they output the menu_data they could go to the IE Filters Demo and test to see what they wanted and just copy and paste that into the new menu_data file they just made? That way the filters code would be in the menu_data.js file and they would know where to paste whatever they chose? Or maybe a fixed one could be set up and a 'check' box to not put the code in the file if they didn't want it?

Just thoughts off the top of my head. I'm emailing Kevin, but he is out of town, as is Andy. I'm sure they will get back to you when they return.


Poster: Ruth
Dated: Wednesday September 21 2005 - 2:54:23 BST

I forgot two things.

1. Is there a way to get those items that are undefined to output as, for example, pagebgcolor=""; instead of undefined or not output at all?

and now I can't remember the other thing. :oops: geesh...

EDIT: Got it. Those 3 items you asked about you can't figure out, they are not configurable.


Poster: ywfbi
Dated: Wednesday September 21 2005 - 12:21:19 BST

Hi Ruth, when you say filters do you mean overfilter? If so that wont be hard to remove from the menu part (in menu_data.js right?).

I havn't even thought about images, I imagine we should be able to incorporate that so long as they are put into the containing directory, otherwise we will have problems with the output file... As to the menu not functioning after putting extra stuff in there- it is rather specific, those values placed into the arrays must be pretty much exact - It could be any of the other extras since they'll all update at once-I'll look at that.
I'd be hesitant about changing onborder size (style will be fine) it will interfear with the menu look. It will probibly move the selected submenu item across, personally I think it wont flow, like setting onBold.
Could you redesign the page for me? That would be a great help. At the moment the biggest problem I feel (apart from edit items) is just the shear usability of the editor. As we add more options into it we are going to reduce the ease of use. Idealiy we should have everything on the one page without scrolling-what do you think about having tabbed windows for the options, we could make it look like a standard windows properties page. Just an idea, could be done with js/css- ATM I dont know how, but how hard can it be ;)
As to the undefined thats just a case of initialising the form properly, if we give those variables values then they will be defined and output properly, alternatly we could just not output anything undefined/null or empty.
BTW _m[0][22] is the layer info for the menu... [HTMLDivElement]
Havn't found the other two ;)

EDIT: Here is a very quick sample of a tabbed type page, Still needs alot of work with styling but should be compatable with most browsers.

Poster: Ruth
Dated: Wednesday September 21 2005 - 17:18:05 BST


Where is the tabbed type page? I'm not finding a link anyplace.

I think not doing output for undefined is best.

As to the onborder stuff, it will depend on a lot of things. The onborder and offborder usually need to be the same size, but not the border which is separate. The real reason I did it that way was to get all the options available to output, even though border doesn't update :( but having all of them gives a wide range of nice design options.

Usability: I have a question. Is it at all possible to split the two 'editing' areas? I mean the editing/adding/deleting part and the design part?

I'll try a redesign and eliminate the border part I have which will give more room. That's not really usable with the editor and was just for my own 'view' of the border stuff I wanted.

And could you show me the tabbed example so I can see what you mean?


Poster: Ruth
Dated: Thursday September 22 2005 - 5:11:38 BST

I found a way to set up tabs. It will probably take a day to get this done.


Poster: ywfbi
Dated: Thursday September 22 2005 - 10:33:45 BST

:oops: Sorry forgot to add the link...
Tabbed demo
Complete zipped files Shortcut those if you want, they will always point to the latest work.

Yes its very easy to split the editing features, what do you have in mind? I think I see where you're going and yes it would be heaps easier, but then Ive never been known to do things the easy way :roll:
Ah yes I see what you mean with the on/off border, I cant see any reason we couldn't implement that.
I think the tabs will solve the useability problems, should simplify things by reducing the number of features avaliable to the user at any point in time. Im gonna leave the editing part for now, I have all but got add main menu items working properly (sometimes a object orientated language can be a real pain!!) , and will concentrate on the other aspects of design for now. Have set tabbed layers to %age for different resolutions, and put them toward the right to allow for vertical menu viewing.
At this stage I havnt added anything to the basic structure except orientation, which took all of 3 mins 8) . My next mission will be implementing all your suggestions you've posted and fixing the bugs.
Minimum size of the 'window' is 600x290px when viewed at 800x600 so it needs to scale down to that without looking shabby (or 760x420 px if only viewed __at__ 1024x768)... although with a entry page we could run it in a pop-up without explorer/status bar etc to gain a bit of screen room. ATM I expect the tabs will overflow at 800x600, will look into that.

Poster: Ruth
Dated: Friday September 23 2005 - 1:58:31 BST


I got your version. I will have something up later tonight. If you don't like it, let me know. I'm just organizing how it seems logical to me. I'm including everything, figuring that I can remove anything that isn't workable, but anything that is will already be there.


Poster: ywfbi
Dated: Friday September 23 2005 - 8:26:05 BST

Sounds great Ruth ;) Ive been getting alot further today, got the flu :cry: so its natural to spend most of the day in front of the comp... Doing the images part now... links above.

Poster: Ruth
Dated: Friday September 23 2005 - 8:47:01 BST


Hope you feel better soon. It must be something going around.

It's going to be tomorrow. I am so tired I'm getting clumsy, making silly mistakes. But, it's going pretty good. I have one question. I take it that testing div is just for now and will be removed? If so, instead of a separate entry page, I was thinking another div could be added "main" which would have directions. What do you think?

I'll get this up tomorrow, it's taking longer than I thought getting it organized. I'm on the last one, so I'll get the image and do that one also.


Poster: ywfbi
Dated: Friday September 23 2005 - 11:22:21 BST

Yes that makes sence, either that or a layer which slides in from the side with directions relevant to each tabbed page. The reason for the entry page is so we can open the builder in a pop-up window which gives the ability to dictate nav/status/tool bars etc, allowing a bit more room (esp for 800x600). But I guess I'll just wait and see how much space is needed before settling on a entry page, it could be as little as a 3 sec splash screen that closes automatically and loads the main page, or even a instant redirect.
Ive changed the testing tab to the output, now it shows the menu_data.js output, it displays on the same page.... much better than a pop-up ;)
Am working on the additions now, and getting all the settings associated with the correct arrays, will take time though. But when thats done changing the look and style will be easy, its done with css.
Heres something I cannot directly change the Milonic arrays and have them update with borderstyle, I used your/kevins code to display them and placed the actual code into the arrays for output. Seems to work fine, and the user would never know any difference so Im gonna go with it,
just like the browse boxes for image input... needed to get just filename from path but you cant place it back in due to security restrictions... ended up hiding them below a text field. 8)

Poster: Ruth
Dated: Saturday September 24 2005 - 7:51:30 BST


I think I'd better wait until you have finished what you're adding before I do any more on this. Given the way you have the help set up, none of the layout I did is usable. I kind of split the colors into two sections, mouseoff with all the properties for that, and mouseon, then the rest went more or less like what you had for text, etc.

There are some things that do not output correctly in the data file. I'll post them here if you'd like.

Let me know if you still want me to do anything on the layout.


Poster: ywfbi
Dated: Saturday September 24 2005 - 8:49:23 BST

Hold on a sec, show me what you've done! Im just playing around with that, design is my weak point, :? I'm hoping you can show me a really novel way of displaying all these options. BTW dont feel restricted by the layout I've done, feel free to totally change the works. If you could post a HTML page with a really usable layout I can put the other stuff in. ;)
Dont worry about the help at all, its just a layer, I could set it to display as a tab like the others in a couple of minutes (gotta love css!), or anywhere else for that matter. And its contents are all in one place so changing them is a breeze. At the moment Im getting all the settings working, but thier locations can be altered with a simple cut'n'paste.
I havnt even looked at the output file, or the fixes you've made to it. All in time, could you post your layout up, and if you want I'd appreciate it if you want to go through the output with a fine tooth comb, you'll notice that the entire output is a basic dump of the array contents. I have no doubt that theres alot of work needed there.

Poster: Ruth
Dated: Sunday September 25 2005 - 4:27:36 BST


zip with the files.

I will work on the list, though it's mostly having quotes were you shouldn't. Two things that have to do what's up now.

1. You have on the text page, Style and a dropdown for underline etc. plus two check boxes for italic and bold. Italic and bold do not output correctly because they are not linked to fontstyle="italic"; and fontweight="bold"; respectively. Onbold and ontalic work fine with the =1, but the others need their fontweight= and fontstyle= parameters.

2. Nothing seems to be working, keeps saying something about lborderstyle.value. is null or not an object, so it's something I don't have someplace.


Poster: ywfbi
Dated: Sunday September 25 2005 - 9:36:28 BST

I think you may have downloaded a transitional version... I upload often to serve as a backup.
I remember fixing the Iborderstyle last night. I like the two colours tabs, do you think we should call them onColor/offColor?
Also you've raised a good point... do we need a reset page dialog? If so by placing it on each page should it only reset that page?
That wouldn't be too hard, but its simple to reset everything. Maybee 'main' could have a global reset, and I could create several functions to initilise each page instead of initform(), well initform can call them-will do that later, the functions will change everytime the pages are altered so that will be the last thing to finalise.

It appears I must have done the bold/italics last night too-dont remember doing it specifically was working straight from the js. Images still need work too.
The design area bg color can be placed into the menu_data.js directly (its just a imported js script-should work fine) I'll set that up tonight too.
Just a note:With javascript once you have a error in the code it stops, hence thats why the toggle doesn't work (I assume you mean hor/vert).
I will place a error handler in the code but only after everything is fine, that way it is easier to debugg.
Just out of interest what editor are you using for html/css? Its code is heaps better than dreamweaver 4!

Well Ive got the design area color in place, still gotta test the output in the manu_data.js though, also reworked the help menu and added main.

Poster: Ruth
Dated: Sunday September 25 2005 - 18:14:58 BST

I got the page from your link and will see if I can do the layout on it.

ywfbi wrote:
Just out of interest what editor are you using for html/css? Its code is heaps better than dreamweaver 4!

That would be me :) I use a very old program for layouts. It doesn't recognize the modern codes [js in the body for instance]. But, it lets me do layout directly on the page [not in the source] and it doesn't put in some strange proprietary codes in the source. So I use it to setup the layout. [AolPress2.0]. The rest is just me editing the html or css. I keep looking for something like it.

There is still a problem with bold and italic. My non technical explanation: Right now you have this in the file
if (document.form1.checkitalic.checked) _mi[xx][13]='italic'; else _mi[xx][13]='normal';
if (document.form1.checkbold.checked) _mi[xx][14]='bold'; else _mi[xx][14]='normal';
Then farther down for the output you have
if (_mi[0][13]&&_mi[0][13]=="italic") Lsave.innerHTML+=('italic="' + _mi[0][13] + '";<br>');
   if (_mi[0][14]&&_mi[0][14]=="bold") Lsave.innerHTML+=('bold="' + _mi[0][14] + '";<br>');

OK, the last part should be something like this [it's probably not right, but it should give you the idea
if (_mi[0][13]&&_mi[0][13]=="italic") Lsave.innerHTML+=('fontstyle="' + _mi[0][13] + '";<br>');
if (_mi[0][14]&&_mi[0][14]=="bold") Lsave.innerHTML+=('fontweight="' + _mi[0][14] + '";<br>');

I'm going to post some off the top of my head ideas.

A start over on main which has an alert "all data will be cleared, do you want to continue or save data first?" and then an option to continue, cancel, save data? Or if that's not possible, have the message say if you want to save data first, cancel and click the Save Data, something on those lines. An output data on main which outputs it all. I liked the pop window better than in the layer, just a personal preference, it is sort of less busy, since it's in its own window away from the other layers [though shorter than 600 would be nice, like around 470, about 40% or so of users still have 800x600 res :)] A reset this area defaults in each layer, if there's a way to get it to just reset the things in that layer to their default settings, though actually, since you can just choose another color that's really not necessary in the layers. An alert if they close the program and haven't output anything 'Save your data now, or exit without saving?'

Putting the reset defaults and output on the main is more a space issue than anything else, but it would clear up space so the tabs don't wrap at 800x600. [that's what I am using]


Poster: Ruth
Dated: Sunday September 25 2005 - 20:04:42 BST

Since you are using the little graphic instead of a form drop down for the colors, there's no reason for the color codes to be visiblbe. If I hide them I can do much more on layout since I can also make their size small. Being hidden doesn't affect the data output. I need to know if you don't want them hidden, because it affects how I set up the layout. I really think they should be hidden since the user isn't doing anything with them.


Poster: ywfbi
Dated: Monday September 26 2005 - 9:56:02 BST

I saw you took the hex color textboxes out, I would rather them in cause it gives much greater felexabiliy over setting the colors rather than just the colors given by the pop-up. Personally I like that sort of thing, but then hey it aint for me I guess ;) Go with what you think is best, dont spend any time getting the options working I can probibly get that done myself alot quicker (knowing where everything is in the js).
I use dreamweaver4 mainly cause I can switch to code view so easily and fix all the stupid mistakes it makes :lol:
Ahhh, :lol: I see what you mean with the italics and bold, they display fine but aren't outputted correctly, I havn't even looked at the output or tested it for that matter. I'll fix the output tonight, wasn't on the list of priorities ATM. Also still gotta find a way around a small problem Im having writing the HTML tags to the bottom of the output for design area. And finish the stuff from my last post.... all in time.
Also since Ive come this far Ive decided to implement a method to actually write the file (maybee from server with asp or php or local activeX) , so we can do without the 'save data' altogeather! But im gonna leave it in the menu untill everythings finished as it makes it easy to check the output.

Poster: Ruth
Dated: Monday September 26 2005 - 11:12:23 BST

I didn't know you could do insert the codes that's why I hid the boxes. I redo it and make them visible.

I should be done tomorrow sometime and will post the new page for you. Right now, I've got to get some sleep. I remember when all nighters were nothing!

Having it output automatically would it still be usable on the desktop?


Poster: ywfbi
Dated: Tuesday September 27 2005 - 7:22:28 BST

made some more changes.... usual link
set up a automatic online and local mode, removed save from tabs, more on images page, fixed a few small bugs, placed resets in pages, still gotta finish the initform() code for that one though.
working on saving now, will work fine with online or local mode - I hope ;)
Think I might have earnt at least a bottle of bourbon or 5 for this one....
Still to go... image checking (also a small bug in display), write to disc, output, initilising, final layout (inc colors tabs), edit contents...........
AND SO ON!!!! The more I do the more I have yet to do, will it ever be classified as finished :?:
Side note, maybee thats why I have never actually finished a project there just always seems to be something else that should be done. Hey at least its keeping me off the streets (I mean literally-lost my license through liking to ride my bike fast!!) Those coppers got no sence of humor when it come to stand-ups!!

Actually you may be able to help here.... are you on dial-up??
Im now up to ~161Kb in download size to view the page... thats gotta seem really slow on dial-up. Do I need to put a loading layer up first just to distract the user while it loads?? I think I might just put something there anyway... cant hurt I guess.
Edit: Don't worry set up a server with 5KB/s bandwidth, it takes...
20 secs to see milonic menus, and 30 to see full content. Load order is menus, then main js file. My initial attempt at creating a loading layer took the full 30 secs as it required everything to be loaded first (menus and main.js) I'll put in another very small script first to make a loading layer.
Edit2: Well Im happy with that.. what do you think??

Poster: Ruth
Dated: Tuesday September 27 2005 - 10:18:35 BST

Yes, I'm on dial-up, real inexpensive. It didn't seem to load slow even before the layer, but for some who are anxious that's a nice touch. Maybe put an old knock-knock joke on it to give them something to read? Hmm, but it would have to be short incase it loaded fast. That could be annoying :lol:

It looks good. I was just going to upload what I have, but I will add the new stuff first. The only thing, you have it set to not have the layers scroll, I'm at 800x600 and the reset buttons over each other. I'll change it to scroll. As soon as I add the new stuff I'll get it up. I think it came out pretty good. Actually, I think, if everything you have now works, it's 'usable' done. You can always add to it. If I knew how to make things work I'd add them, but whenever I try they don't work.

I'll try to finish the new stuff and get it up tomorrow night.

EDIT: You have to put a note in about removing the design area code that gets written after the drawmenus.


Poster: ywfbi
Dated: Tuesday September 27 2005 - 10:52:26 BST

I already have the design area working... just gotta get the <div ID=....></div> to output to the layer without actually creating a layer there!!! It wont be a problem actually writing it to a file (cause no HTML interpreter to read it). It will save to the menu_data.js file.
As to the scroll layers well 8x6 is tiny!!. The entry page gives another ~100px to play with if required. I could even only activate a pop-up if the res was 8x6-something to consider. I'll change the css now.
The layer won't speed the loading of the page up, just gives something instead of a blank screen. When I tested I limited bandwidth to 5KB/s which is probibly average for most dialup users. I been on cable for a year now and would just die waiting for 30secs for a page. Then again the main.js will be compressed too, that will speed it up a few secs. Can you post what you've done? Im always interested to look at another viewpoint :D

Edit: Ok so Ive been working on the write stage of this project... didnt realise ActiveX only works on IE. Bummer! What do you this about using it for IE and writing a php script to 'download' for the other browsers?
Im gonna make a start on that anyway, any ideas for other options?

Poster: Ruth
Dated: Tuesday September 27 2005 - 17:13:47 BST

Yes, I know it saves to the menu_data. I just figured you could put a note to have them remove it from that file. Beginners will not be able to figure out what that is and figure it's supposed to be there.

About 30% of users still have res 800x600, it loads faster for those like me with dialup. Again, I can only give you my point of view on this, others may think differently. I wouldn't like a pop up window with that part in it. Things are busy enough on the computer without having more popups, especially since using the overflow:scroll works fine at 800x600

As to the active x, yes, it's proprietary to IE. The overfilter in the menu is also only for IE, since it codes the IE transitions which are proprietary to that browser.

I don't really know what you are talking about as to the save data stuff. In the first examples you were doing, the output worked in FF. Maybe going back to the more simple output data would be a solution. I actually liked having the output open in a new window away from the editor. Having it in the layers was also OK, though it took up more space.

I'll put up the page when I get the new stuff in. Hopefully some time today.


Poster: Ruth
Dated: Wednesday September 28 2005 - 6:58:03 BST

zip file

I got it up. I made some changes. After making changes on the colors I finally decided I like them better on one page. So, I put them on one page, but put headers between the background/font colors and the border/separator colors.

The headerborder doesn't work. I put a note in the main layer about that.

I don't think the save data works either, I changed some colors and then tried the save data and view data and there was no change.

I tried to get margin to work, and I just can't figure out how to do that, same with openstyle, and menuwidth. I had them working in the other version, but can't get it working in this one. I wanted the menuwidth, the % menuwidth so that the menualign could be used. It can only be used with a menuwidth set to a percentage. In fact, it may only work in other than IE if the width is set to 100%, I haven't check.

All these files are the same name as yours so you probably don't want to download them over the top of yours.


Poster: ywfbi
Dated: Wednesday September 28 2005 - 9:41:37 BST

view data... Im gonna focus on the options and layout tonight.

As for now Im gonna leave the write to file part out (I'll leave the code in there if I choose to implement that later. Gonna have to think about that some more, will look into another cross browser compatable alternative.

I like the buttons on the top right of each page that works well, sorry but I dont like the color scheme, was thinking it should be more inline with the milonic site color scheme.
I would prefer that there was no scrolling on each page (at 1024 at least), well except the output data, I think you were really on track with seperating the colors onto 2 pages, but I love the banners you have put above each color group.
I dont think design area needs its own page, that should be incorporated into menu options, its just too empty by itself.

I just trimmed 28k off the index.htm, main.js is next for the axe!! 8) Load time is looking much better already! 5 seconds less already!

Poster: Ruth
Dated: Wednesday September 28 2005 - 23:23:53 BST

zip file

Here you go. I was working on one colored like the demos. I can't find where to color the buttons on the image page.


Poster: ywfbi
Dated: Thursday September 29 2005 - 11:40:07 BST

here is a table data entry from the image page....
      <div class="maskclass"><input type="text" ID="onbgimage" .......></div>
      <input type="file" ID="Bonbgimage" .........>

Due to security measures we cannot directly edit the file input field.
Thats why I put the "<div class="maskclass"><input type="text" in there, basically the file input field is hidden behind the layer onbgimage.
This enables me to change the file when I want to remove the path, or add the containing folder. To edit the button in theory you would add tags to the "<input type="file" ID="xxxx". That is the browse button. Off all inputs the browse seems to be the least flexable, let me know how you go.
look at this for help.
I'm having the night off, been hard at it for a while, Im gonna sit back and watch a movie, and let the brain just simmer for a change 8O

Poster: Ruth
Dated: Friday September 30 2005 - 11:21:38 BST

Hope you had a nice night off and a good movie :)

I did a new page. I prefer this color, it is the same as what is downloaded in the sample, so they see the same menu they got originally as to color. It is muted, but that means the color changes made will really stand out.

Pretty much everything is working. There's a note on the page about what isn't. I got menuwidth to work, which means menu align also works now, so they can set 100% menus. I took out screenposition. It was only working sometimes.


EDIT: Forgot to say I decided not to do the buttons. There seems to be a lot involved, which means more code, so instead I left them all the default color except the top ones on each layer.


Poster: ywfbi
Dated: Friday September 30 2005 - 12:45:30 BST

Hello, yah movie night was great! Needed a break been working on this evrey night after work for quite a while now, well pretty much every night, I get distracted easily ;)
Menualign wont center, but hey I how much goes into this, dont worry I'll fix it up. Also I'll do the seperators, Tell ya what give me about a week to get these last thngs working and incorporate changes from each togeather since I've done alot of work since the version you've eddited.
All up theres about a dozen things that need work
Im gonna try and stay on track and stop adding extra do-dads, instead get everything working that we've got so far ;)
As to the browse file buttons style, that can come later if required. Its not that much code really, well relativly anyway :!:

Poster: Ruth
Dated: Friday September 30 2005 - 19:22:09 BST


I'm going to put down what I think need to be working in addition to what is there. Screenposition, separatorheight and width [twice, see explanation below] menu margin.

Margin This really is a necessary property. Not only for layout but it can also be used in design to create interesting menus.

Screenposition is a 'matching' property to menualign. It sets fixed width menu alignment on the page.

Menualign works in IE, NN, FF, and OP which I tested. You must set a % width to use menualign. It aligns the menu 'items' inside the menu span behind them.

Separators Somehow what really needs to happen is to be able to have those properties in there twice once for horizontal and once for vertical. These properties can be applied to both orientations and when used that way can be a real design tool. i.e. swidth 2px and sheight 2px in a horizontal menu give you a 'dot' between items, used in conjunction with padding it's a real neat tool. Same in vertical, sheight 3px and swidth 15px align center gives you a short 'bar' between vertical items. So, if it could be done, two sections would be good.

Apply to horizontal menus separatorwidth separatorheight
Apply to vertical menus separatorwidth separatorheight

I haven't tested the Menu Contents section. That needs a good help explanation on how to use, I think. Or maybe it's just me. :?

Loading.js There is something wrong in Netscape 7.1. The entry page does not go away. It 'shrinks' up about 20% but stays over the editor page so it's not usable.

Just post when you get it working. I agree with you. If the above I listed can be made workable, all that is necessary is in there. Other things can be added as time goes on. What you have are the most used parameters and with them a complete menu can be designed. For now, if they want some of more 'obscure' things they can hand code the final file. The real need is for a 'visual' design tool and this is great :!: Thanks so much for all this and all the hard work.


Poster: Ruth
Dated: Friday September 30 2005 - 21:27:41 BST

:oops: I uploaded a new zip on that link. I had included the wrong main.js file. The new one has the working divides. Sorry.


Poster: ywfbi
Dated: Saturday October 1 2005 - 9:32:50 BST

Ahh I see the menu does center with align, maybee I didnt have the width set right, sorry! I'll semi automate that one so the width setting isn't an issue.
I have an idea for seperators, I'll get that working and everything else on that last post.
The contents section is a work in progress, that will be the last feature to do since its the most involved, Im sure the layout can be improved on that page to make it more user friendly.
I've taken the loading.js out and put it inline, havn't tested with NS, but Im surprised everything else works since I havnt put in the correct code, maybee the latest NS uses getElementById, anyway the main.js needs several new functions to be fully compatable with all browsers (probibly just the earlier ones), thats not a biggie though.
Anyway once I have everything togeather we will have a base to work from.

EDIT: It would appear that the seperatorheight cant be used as we intend, by setting the height of vertical seperators (even by menu_data.js on a new sample) it automatically alters the height of the horiznotal submenu seperators (Hor menu only). This overides the seperatorsize value. There is no such problems with the vert menu as every seperator runs the same way. This problem doesn't exist with the "all horizontal menu" sample though, since again all seperators are vertical.
EDIT2: Using screenposition, works better than menualign. Width is optional. menubgcolor working.

Poster: Ruth
Dated: Saturday October 1 2005 - 18:13:25 BST


About menualign and screenpostion: I think of them as 'matching' properties which in essence do the same thing for different scenarios.

If you set a fixed width i.e. pixel width for the menuwidth, menualign will not work. The property to 'align' the menu in that circumstance is screenposition.

If you set a % width for the menu, screenposition will not work so to get the menu to center you need to use menualign.

This has something to do with the 100% span menu. What the menualign really does is to 'center' [or shift right or left] the menu items. I think of it as a box with items in it. The menu 'box' when using % expands, but the menu items in the box remain at their same widths, so the menualign shifts those items as a group when you use it.

I hope that made sense.

So, I see two choices, though I'm sure you can think of a lot more. Either set it up so the person can only set fixed width and use screen position, or set it up so they can use either % or fixed width and use both menualign and screenposition and I can put a tag on the boxes. I.E. menualign [use only if menuwidth is %] screenposition [use only if menuwidth is px] Actually, that adds a 'teaching' dimension to the editor :) Or fix it so that the corresponding property is active, if they use px then only screenposition will be active, if % only menualign will be active, though that may confuse some. Or, set up an alert which tells them which to use depending on what they put in the menuwidth.


Poster: Ruth
Dated: Saturday October 1 2005 - 20:25:00 BST

I had a passing thought so figured I throw it out to you and let you think on it.

I wondered if it would be better to put the contents editing totally separate?

They output the design area which gives them what is there now, with the default menu as the 'menus' Then the content area would only output the actual menus, and that could be pasted into their menu_data file over the 'default' menus. Just thought I'd throw that out there.


Poster: ywfbi
Dated: Sunday October 2 2005 - 3:07:48 BST

ok... I though Id already replied...

yes the menu is contained within a apparently unnamed layer (box) which is drawn upon calling drawmenus();

Your spot on with the width % and px changes, and also menualign within that layer. The useability side of it I have a think about, could go either way on that one.

Since this layer is drawn only once thats why you were having trouble getting screenposition to work, I had to alter it directly with each menu change like the border-since its the same layer.
Those are working with the link below.

The edit conents part of this would certinly be alot easier as a seperate entity, much less code and no stuffing around with arrays. Idealy it would be great if this could be a all-in-one solution, but I agree it needs work to become simplier to use, however I will try to get it working at a later stage.

EDIT: Just do away with the menualign altogeather. Screenposition works fine by itself. Besides the margin can give enough whitespace, and submenus open outside the layer anyway causing a bad look IMO. Besides the design area can give a background look anyway, I'll setup a border for that.

Poster: Ruth
Dated: Sunday October 2 2005 - 22:25:37 BST

Hmmm, I didn't see the edit until now. I got both menualign and screenpostion to work along with the menuwidth. So, do you still want to eliminate align and menuwidth? I thought I had margin working [using your a. that you had for the screenposition] but it turns out it is actually just moving the menu down by whatever margin I set instead of putting a margin in the menu.


Poster: ywfbi
Dated: Monday October 3 2005 - 9:55:46 BST

Well whats the advantage of having a box around the menu? firstly it looks bad IMO, and secondly it makes submenus open (IMO) in the wrong place. By that reasoning I think we should do without width as a %age altogeather. This also applies to margin.
However margin can be done without any trouble, I'll set it up tonight anyway.
I can see value in setting width as a px value if required though. Not sure there.

When you altered the a. you were altering the 'menubuilder' layer, (the box containing the menu), this wouldnt output or be repeated by the menu_data.js in any way.

Ive also done away with the reset buttons on each page, I can implement them but dont think they're really nessicary. What do you think? If they are required what should they reset to? The menu_data or our default style? Both are possible with extra code.
Well Ive got enough to keep me going tonight.... :D

Poster: Ruth
Dated: Monday October 3 2005 - 14:23:11 BST


You're right, within the editor using % doesn't look good because item offborders are on as default. A lot of people use the 100% because of site design layout, say a forum where the menu is setup to be horizontal 100% across the page, like the one in the blueglass and silver shadow color choices here. But I see no problem leaving it out if you don't want that as an option. Those are always things they can set up themselves. Now that talking about the item borders brings it to mind again, I was going to suggest that the default menu showing when first loaded does not have the item offborders showing, those are not part of the default download menu, just border and separator are in that one. But, whatever you think.

About the buttons, I've been going round about those. I think they are necessary, maybe we need to get them to sit in the same color bar where the layer name is but off to the right, and color them to match whatever color you decide you want for the editor. If they are colored to match the editor I think they will look pretty good.

EDIT: I just looked again at the editor, how about just small text links at the right in that colored bar with the layer name?


Poster: Ruth
Dated: Monday October 3 2005 - 22:11:30 BST


I've been thinking about the width issue. I think maybe it should be left out totally and just leave in screenposition. The person would do in depth sizing, menuwidth, menuheight, itemwidth, itemheight, and things like swap3d, openstyle, etc., once the menu is designed and edited for content.


Poster: ywfbi
Dated: Tuesday October 4 2005 - 9:55:42 BST

Yes well this is the hard part, I can see valid reasoning for everything we've come up with. At the end of the day its gonna come down to who this is targeted at. Its really a functionality vs. user-frindly compromise when deciding what to include as settings.
How about a few initial setups on the main page :idea: , maybee a scroll list with menu samples that could be applied?

I will remove item borders, youre right the margin looks heaps better without them. Also I'll add swap 3D.

Colors need to be done yet, as well as seperators (thought I had done that??)
I'll do the reset links too, thinking Ill copy all menu data upon loading to a holding array. Then reset each page's contents from that when required. This means that if the user uses thier menu_data.js file it will reset to that instead of the default. Probibly the best way to go IMO.
Well thats enough for tonight, got RDO tomorrow, so I should get a fair bit done ;)

Poster: ywfbi
Dated: Friday October 7 2005 - 11:01:20 BST

Allo, Allo :!:

Well heres the latest update...
Ive reworked the internal layer layout to make it more cross browser compatable, this includes removing the list ( <ul> ) based menu with a css styled span menu. Much simplier!! Also removed a FF fix style I applied! Really was just bad css coding on my part!
Added a sample option on the main page, still needs work though to get it 100%. Its should be all but fully cross browser compatable.
How would you like to test NNav for me?
Have left width in, but only display align if width is set to %age.
Need to get reset working yet, also more on css styles to do.
Not to mention layout of each page, etc etc.
Work in progress.
Much more to go, but just not into it tonight, have another movie night planned! These things cant be rushed!

Side line... Ive just got Dreamweaver 8... WOW! I mean really WOW!
Did I say how much better it is than #4? Its heaps better than #4, really great by comparison-- not perfect but really good!
And I like dreamweaver 8, its heaps better than #4. Should have got it ages ago cause its heaps better than #4. Did I say how much I like the latest version???

Aint it funny how the small things can be so exciting!

Poster: Ruth
Dated: Sunday October 9 2005 - 3:03:33 BST


I will test for you in NN, but probably not for a couple of days. I'm down with the flu. Will post back when I test it.


Poster: ywfbi
Dated: Tuesday October 11 2005 - 9:21:47 BST

Yeah no stress there, Ive got alot on over the next couple of weeks. Progress will be virtually non-existant.
Zip Files below are up to date.
Will be back in contact when I have some free time again.
Hope you feel better soon :cry: , p.s. My mother always reccomended a nice strong bourbon! :lol:

Poster: Ruth
Dated: Friday December 30 2005 - 4:58:46 GMT


I know you are probably very busy since you've not posted back, but I've been trying to work on this for a few weeks off and on and I can't because I can't find out what's causing it to freeze everything when you click on the Images tab. With my lack of js knowledge, I can't find whatever might be causing that. I have figured out how to remove that layer, and I can get it to work with just that layer, but when they are all there, I can click all the others and it switches, when I click that one, it loads but it doesn't put in the little form boxes and freezes totally. If you have any time and can find that, I would then continue on with what I can do.

Hope you had a great Christmas, and have a marvelous New Year!

I also wanted to ask if you had any objection if I used part of the program as a tutorial? I don't know how to make interactive forms and have things apply to the menu and I wanted to put up a basic tutorial where beginners could see changes as they made them. I used this to make one. It doesn't included the content, it's really for design for beginners. I find that if they see things as they make changes then they remember better.

Also, is this going to be something I can put up at Milonic or is it for something you are providing for your clients? Not that it will change my trying things out. I'm learning a lot I didn't know, about the menu and about layers/divs, functions :D


Poster: ywfbi
Dated: Sunday January 8 2006 - 3:06:11 GMT

Hello, Hello!

I know its been a very long time, I do appologise. And to make matters worse Im absolutly snowed under still! Ive now got 2 sites on the go as well as my day job, not to mention plans for my own sites. But thats usual, nothing for ages then it comes all at once!

Please feel free to use my code in any way you wish, I am not looking to make money off it, that wasn't why I startd it in the first place.
If you could send some recognition my way it would be greatly appreciated.
I did have a great new years, I hope yours was the same!
I imagine at this stage with the work you've done it is quite different to my last update, would you like to post a link (zipped files) and I'll take a look at the images layer as soon as I get the chance.
It shouldn't be too hard to find the problem!

Regards Dean Watson

Poster: Ruth
Dated: Sunday January 8 2006 - 7:49:47 GMT

Hi Dean,

The link is your last posted link. Since it just kept freezing the browser when I tried clicking on the images tab, I went back to an older version for the tutorial which is coming nicely. As soon as I get it done, I'll post for you to see.

It doesn't output, it's strickly for letting beginners learn a bit about how to do the styles and such, so they feel a bit easier when they get the menu and hyperventilate on seeing a bunch of gobbledy gook which makes no sense to them when they open the data file. For this purpose I've been working to change as much of it to type-in boxes rather than select.

ywfbi wrote:
Im absolutly snowed under .... But thats usual, nothing for ages then it comes all at once!

Ain't it the truth. I'm about to move across country, lot's of work to get done.

Once I'm done with the tutorial, I'll go back to the menu builder and work on that, but given the move and since I do not know coding, it going to take me some time. When I get it done and up, I'll drop a link. And, certainly you will be given recognition. That's a lot of work! Thanks for all your time.

Good luck on your sites!