Jump to content
Eternal Lands Official Forums
bluap

User menu patch

Recommended Posts

I've been working on a patch that uses the Context Menu system to implement user configured command menus. I have quite a bit more to do but I though it was time I got some opinions. May be we already have too many menus... :P

 

Files with a .menu name extension found in the users config directory are considered user menu files. Each .menu file defines a new menu, its name is displayed in a standard EL window container. The window is always on top and can be moved around by the optional title bar. A standard right-click context menu controls window options. These options include a run-time reload function so you can update the menus without restarting the client. Left clicking a particular menu name opens the menu. The window options and position are saved between sessions in the el.cfg file. The use of user menus is enabled/disabled by an option in the config window.

 

The .menu files are flat text files (rather than xml) so they are easy to create and edit outside the client. The first line in a .menu file is used as the menu name in the container window. Each of the remaining lines are new lines for the menu. Lines for the menus have an associated set of commands that are executed when that line is selected. Valid commands are anything you can enter at the user command prompt; #commands, text for chat channels & PM, %setting etc. In addition, commands can be URLs which will be directly opened in your browser.

 

Each menu line in a .menu file has two or more fields, the field separator is "||". The first field is the text for the menu line, the remaining field or fields are the associated commands. One thing still to implement is allow the command to contain extra input. When these commands are processed, the user will be prompted for additional input. I would also like to make the container window a bit prettier, have better real-menu-like positioning, allow both horizontal and vertical alignment, auto-hide, icon launcher behaviour, ....

 

I have posted the code so far as patch #2753. There are not many touch points with the rest of the client but I have #defined those points anyway.

 

Here is an example .menu file:

Test
Show Server Stats||#stats
Show Invasion Monsters Count||#il
Show Day||#day||#date
||
Hi to me||/bluap hi
Say local hi||hi
Stats On||%show_stats_in_hud=1
Stats Off||%show_stats_in_hud=0
Channel Hi||@hi
||
Open Readonly Storage||#sto
Alias 99||#99
||
BBC News||http://news.bbc.co.uk/

 

And a couple of screen shots:

gallery_14814_13_23337.jpg

gallery_14814_13_3304.jpg

Share this post


Link to post
Share on other sites

I find this to be an interesting idea. Some people might really like having quick access to certain commands. Could preload it with "noob" commands too. Gone are the good-old days where people understood DOS and the command line.

Share this post


Link to post
Share on other sites

It's nice to have all the commands grouped, like guild stuff, combat stuff (#arm), and so on.

The chat might be fine too, but please add some delay so people won't spam with it.

Also, don't add stuff related to harvesting or manufacturing, so it won't be easier for people to macro. More spells, on the other hand, is OK.

Share this post


Link to post
Share on other sites

This looks interesting, although (honestly) I think I'll use the #alias more than defining menus.

 

I think consistency is important. If menus can be defined by a text file, I think aliases should too. They should use a common syntax, and have similar capabilities (any command you can define as a menu you can also do as an alias).

 

And I strongly thing they should allow multiple commands to be mapped to a single alias/manu. Your menu addition seems to support that, but I don't think the #alias does.

 

It would also be nice to be able to assign a keyboard-shortcut to the selections.

 

And just a nit, but "||" doesn't seem to be a standard separator for anything else I've seen. You might consider something that's more typically used in such cases.

Edited by bkc56

Share this post


Link to post
Share on other sites

Very nice idea. Menus are easier for less computer experienced people when compared to text aliases; it would be nice to have a simple example menu in the client download, so that one can see how it works and modify as intended.

 

Rehdon

Share this post


Link to post
Share on other sites
...Gone are the good-old days where people understood DOS and the command line.

I'm a command line fan myself but I think point and click is less effort and easier to remember. That's one of my drives to do this, I keep forgetting #commands and bot names. Adding "/some_bot wanted" to a menu should be much easier to remember.

 

It's nice to have all the commands grouped, like guild stuff, combat stuff (#arm), and so on.

The chat might be fine too, but please add some delay so people won't spam with it.

Also, don't add stuff related to harvesting or manufacturing, so it won't be easier for people to macro. More spells, on the other hand, is OK.

Apart from the url opening, these menus only pass text to the code that handles things typed in at the command prompt. I can certainly add a delay when there are multiple commands associated with one menu entry. I don't think these menus will introduce any additional help for macroing. I might build in rejection of some #commands though, like the character destruction and password changing commands. People might exchange .menu files and while they are plain text, some people might not check what they do.

 

This looks interesting, although (honestly) I think I'll use the #alias more than defining menus.

I think consistency is important. If menus can be defined by a text file, I think aliases should too. They should use a common syntax, and have similar capabilities (any command you can define as a menu you can also do as an alias).

And I strongly thing they should allow multiple commands to be mapped to a single alias/manu. Your menu addition seems to support that, but I don't think the #alias does.

This feature is very similar to the #alias commands. I think the menus will be easier to use and you can already have an #alias command as a menu entry. When you change the alias, the menu entry does the new thing automatically. I agree we should keep the alias and user menus similar, I'll keep that in mind and may be revisit the #alias code when I'm done to see if there are sensible changes to make.

 

One think might be to limit user menu commands to things you can enter at the command line. For example, I have added direct url opening but this can instead be achieved by adding a new text command "#open_url <string>". That way you could program #aliases and user menus the same way and keep command logic out of the menu code. Likewise, following entropy's suggestion, we could have a couple of new spell commands: "#show_spell" could print the last cast spell in ascii format (HEX string and spell name). Then "#cast_spell <HEX string>" could be used to re-cast the spell at any time, similar to the spells quick list.

 

It would also be nice to be able to assign a keyboard-shortcut to the selections.

And just a nit, but "||" doesn't seem to be a standard separator for anything else I've seen. You might consider something that's more typically used in such cases.

Keyboard-shortcuts would be interesting, however, we don't have many keys left to use. I picked the "||" delimiter to avoid using a complex string parsing routine but it would be easy to change. Currently you cannot have the delimiter in the menu text or the one of the commands; thats why I chose the obscure "||".

 

Thanks all for the feedback, I'll continue on and may be add those new #commands too......

 

Edit: Sorry forgot to add this...

Very nice idea. Menus are easier for less computer experienced people when compared to text aliases; it would be nice to have a simple example menu in the client download, so that one can see how it works and modify as intended.

Currently only your config directory is searched for .menu files. This could easily be extended to (may be optionally) look in the data_dir too.

Edited by bluap

Share this post


Link to post
Share on other sites
Likewise, following entropy's suggestion, we could have a couple of new spell commands: "#show_spell" could print the last cast spell in ascii format (HEX string and spell name). Then "#cast_spell <HEX string>" could be used to re-cast the spell at any time, similar to the spells quick list.

I would love commands like that because it would allow one to place more magic spells as #alias commands. Time-critical ones (like restore or harm) could be in the quick bar. Heavily used commands (like portal room) could be a #alias. It would help reduce the pain of only having 6 slots in the quick-bar.

 

You could do the same thing with a #use_slot command to get around the 6 item limit there also.

 

And please, if you re-visit #alias, allow one to be able to define multiple commands per line/alias.

Share this post


Link to post
Share on other sites
...It would help reduce the pain of only having 6 slots in the quick-bar.

You could do the same thing with a #use_slot command to get around the 6 item limit there also.

There is an apparently sanctioned patch in the wild that increases the number of slots. I have been given a copy of the patch and keep meaning to check it over and propose it for inclusion in the client....

 

And please, if you re-visit #alias, allow one to be able to define multiple commands per line/alias.

Yep, I'm keeping this in mind.

 

 

So it sounds like this user menu patch is OK to commit. I'm still working on it adding features but it is stable and does not touch the rest of the client in many places; and these places are #def protected anyway. So, I was considering commiting what I have. That way, I can make use of CVS version control rather than saving patch files or version managing it locally.

Edited by bluap

Share this post


Link to post
Share on other sites

I've just updated this code in CVS adding the facility to get input for a command. Any command text enclosed between "<" and ">" is used as a prompt for user input. The user input replaces the "<...prompt...>" text. I've also added a delay of at least 0.5 seconds between commands. By default, the code now also looks for .menu files in your data_dir but there is a context menu option to disable this. I have more additions planned but I'd say this code was fully functional now.

 

Some example user input commands:

Player Info...||#open_url http://game.eternal-lands.com/view_user.php?user=<Player Name>
Send Joining PM...||/<Player name> you need to type "#join_guild el linux community"
Accept Player...||#accept <Accept Player>||#change_rank <Rank 6 Player> 6

 

Edit: I think all my gt/lt characters confused the BB code!

Edited by bluap

Share this post


Link to post
Share on other sites

Hi

I have compiled I freshen the version from cvs (data 27.05.09)

Also has created a file.menu, in a directory /home/admin/.elc/main

But the menu does not work

26575682.th.jpg

my make.conf

# set this to "no" if you don't want this file to be overwritten                                                                                                                           
UPDATE_CONF=yes                                                                                                                                                                            

# tune these for your setup & compile options
# IMPORTANT: if you are using a linker that needs libraries in correct order, make sure you list EYE_CANDY before PNG_SCREENSHOT if you use both

### Current release default options ###
FEATURES += ATTACHED_ACTORS                 # allows to have 2 actors that are attached together, one of the actor will exist only on client side (needs server support)
FEATURES += CLUSTER_INSIDES                 # Group objects into separate clusters for clipping on inside maps                                                          
FEATURES += CONTEXT_MENUS                   # Enable context menus                                                                                                      
FEATURES += CUSTOM_LOOK                     # allows you to customize your look.                                                                                        
FEATURES += CUSTOM_UPDATE                   # allows autoupdating of custom look information                                                                            
FEATURES += FUZZY_PATHS                     # Makes Tab Map walking not always follow exaclty the same path                                                             
FEATURES += MINIMAP2                        # Disables the rectangular minimap and enables the rotating minimap                                                         
FEATURES += NEW_CAMERA_MOTION               # Changes the behaviour of the camera by replacing the rotation duration by a constant deceleration. This gives a better control on the positionning of the camera.                                                                                                                                                                                                           
FEATURES += NEW_SELECTION                   # Enables new selection system. Needs OpenGL 1.3 or GL_ARB_texture_env_combine                                                                                   
FEATURES += NEW_SOUND                       # Enables extended sound effects system                                                                                                                          
FEATURES += NEW_TEX                         # use new texture coordinates for enhanced actors                                                                                                                
FEATURES += NEW_WEATHER                     # new weather effects                                                                                                                                            
FEATURES += PNG_SCREENSHOT                  # make screenshots in W3C's PNG format in game, requires libpng                                                                                                  
FEATURES += SKY_FPV                         # Use skybox with clouds/stars/etc, enable first person view, and other misc changes from Emajekral                                                              
FEATURES += TEXT_ALIASES                    # Text aliases                                                                                                                                                   
FEATURES += USE_INLINE                      # enable some optimizations to use inline functions instead of pure function calls                                                                               
FEATURES += USE_SHADER                      # Using shaders for water rendering. Needs NEW_FILE_IO                                                                                                           
FEATURES += VARIABLE_SPEED                  # allow to change the moving speed of actors (needs server support)                                                                                              
FEATURES += ZLIB                            # Enables being able to read gzip compressed files, requires -lzlib/-lz                                                                                          


### Testing options (these options are possible for the next release and should be tested) ###
FEATURES += ANTI_ALIAS                      # allows to enable/disable anti-aliasing in el.ini
#FEATURES += DYNAMIC_ANIMATIONS              # Synchronizes animation to FPS instead of a fixed timer
#FEATURES += EMOTES                          # Support for additional animations parsed from local text with a seperate anim que
#FEATURES += EXT_ACTOR_DICT                  # Removes remaining hard-coded actor def dictionaries - requires updated actor defs files (http://el.grug.redirectme.net/actor_defs.zip)
#FEATURES += NEW_ALPHA                       # (undocumented)                                                                                                                        
FEATURES += NIGHT_TEXTURES                  # enable night textures. changes textures at night to cooler colors                                                                      
FEATURES += USER_MENUS                      # enable user command menus, requires CONTEXT_MENUS                                                                                      


### Machine specific options (fixes or performance enhancements) ###
#FEATURES += EL_BIG_ENDIAN                   # Enable big-endian code (automatically detected for OSX)
#FEATURES += NO_PF_MACRO                     # Use a function instead of a macro for pf_get_tile()    
#FEATURES += SIMPLE_LOD                      # enable a simplistic distance culling to improve performance


### Debug options ###
#FEATURES += CONTEXT_MENUS_TEST              # Enable "#cmtest" command to help test/demo the context menu code
#FEATURES += DEBUG                           # (undocumented)
FEATURES += DEBUG_XML                       # Enables missing (optional) XML string property messages
#FEATURES += DEBUG_POINT_PARTICLES           # (undocumented)
#FEATURES += DEBUG_TIME                      # Fakes the acceleration of time for use in debugging shadows and the like.
#FEATURES += DEBUG_MAP_SOUND                 # Adds (some??) map boundary areas to tab maps and additional logging to stdout
#FEATURES += ECDEBUGWIN                      # press ctrl-alt-c to open the Eye Candy debug window: trigger most effects without casting spells or server side events
#FEATURES += EXTRA_DEBUG                     # (undocumented)
#FEATURES += MEMORY_DEBUG                    # gather information about memory allocation and freeing
#FEATURES += MISSILES_DEBUG                  # Enables debug for missiles feature. It will create a file missiles_log.txt file in your settings directory.
#FEATURES += MUTEX_DEBUG                     # (undocumented)
#FEATURES += OPENGL_TRACE                    # make far more frequent checks for OpenGL errors (requires -DDEBUG to be of any use). Will make error_log.txt a lot larger.
#FEATURES += TIMER_CHECK                     # (undocumented)
#FEATURES += _EXTRA_SOUND_DEBUG                          # Enable debug for sound effects


### Other options (Experimental, unfinished, defunct or otherwise unknown) ###
FEATURES += NEW_CURSOR                      # New coloured cursors made by Emajekral (Experimental) Extract [url="http://users.on.net/~gingerman/sky_cursor-textures.zip"]http://users.on.net/~gingerman/sky_cursor-textures.zip[/url] into datadir/textures/
#FEATURES += NEW_LIGHTING                    # (undocumented)
#FEATURES += PAWN                            # Experimental, not for release, will need server support to function properly. This *will* eat your cat. You've been warned. Enables the Pawn abstract machine.
#FEATURES += UID                             # use unique ID sent from server for custom looks. (INCOMPLETE)
#FEATURES += USE_ACTORS_OPTIMIZER            # Enables actor optimizations
#FEATURES += USE_BOOST
#FEATURES += USE_TR1                         # Needs tr1 version of c++ stl, used for NEW_FILE_IO
#FEATURES += WRITE_XML                       # dangerous to use, will wipe out some XML files that are part of the main game download
#FEATURES += ZLIBW                           # Enables being able to write gzip compressed files, requires -lzlib/-lz needed for map_editor




#PLATFORM=-march=i686
PLATFORM=-march=x86-64
XDIR=-L/usr/X11R6/lib
CWARN=-Wall -Wdeclaration-after-statement
# -Wno-pointer-sign -Wno-sign-compare -Werror
CXXWARN=-Wall
# -Wno-sign-compare -Werror

## These needed to be adjusted on a per system basis based on compile options & library versions

## These 2 lines should be uncommented if you used Emajekral's Windows compilation how-to (adjust them if required)
#EXTRA_LIBS=-lstdc++
#EXTRA_INCLUDES=-IC:\\Dev-Cpp\\Include\\AL -IC:\\Dev-Cpp\\Include\\SDL

## These are the originally listed settings, uncomment them if you need them
#EXTRA_INCLUDES=-IC:\\Programme\\Dev-Cpp\\Include
#EXTRA_LIBS=-lz
#EXTRA_STATICLIBS=libs/zlib.a

CC=gcc
CXX=g++
LINK=gcc

Share this post


Link to post
Share on other sites
Hi

I have compiled I freshen the version from cvs (data 27.05.09)

Also has created a file.menu, in a directory /home/admin/.elc/main

But the menu does not work

To get that "no user menu" text means that the code is compiled into the client OK. It is just that no .menu files can be read. Are there any user_menu related error messages in /home/admin/.elc/error_log.txt? I presume you are running the client as the admin user? Do you have the format correct for your menu file file.menu as described above?

Share this post


Link to post
Share on other sites
Hi

I have compiled I freshen the version from cvs (data 27.05.09)

Also has created a file.menu, in a directory /home/admin/.elc/main

But the menu does not work

To get that "no user menu" text means that the code is compiled into the client OK. It is just that no .menu files can be read. Are there any user_menu related error messages in /home/admin/.elc/error_log.txt? I presume you are running the client as the admin user? Do you have the format correct for your menu file file.menu as described above?

localhost .elc # pwd
/home/admin/.elc
localhost .elc # ls -la
total 3964
drwxr-x---  5 admin users    4096 May 27 11:37 .
drwxr-xr-x 45 admin users    4096 May 27 11:43 ..
drwxr-x---  2 admin users    4096 May 24 11:12 cache
drwxr-x---  3 admin users    4096 May 27 11:37 custom
-rw-r--r--  1 admin users   33523 May 27 11:30 error_log.old
-rw-r--r--  1 admin users 3992854 May 27 12:35 error_log.txt
drwxr-x---  5 admin users    4096 May 27 11:37 main

 

mu error_log.txt very big ...

yes user - "admin" and example .menu file

  
localhost main # pwd
/home/admin/.elc/main
localhost main # ls -la
total 9684
drwxr-x--- 5 admin users    4096 May 27 15:47 .
drwxr-x--- 5 admin users    4096 May 27 11:37 ..
-rw-r--r-- 1 admin users     287 May 27 15:42 .menu
-rw-r--r-- 1 admin users      14 May 27 12:16 alias.ini
-rw-r--r-- 1 admin users 9796787 May 27 15:47 chat_log.txt
-rw-r--r-- 1 admin users      54 May 27 11:37 connection_log.txt
-rw-r--r-- 1 admin users      52 May 19 15:48 counters_stormx64.dat
-rw-r--r-- 1 admin users    2462 May 27 11:30 counters_stormzel.dat
-rw-r--r-- 1 admin users     276 May 27 11:30 el.cfg
-rw------- 1 admin users   16694 May 27 11:30 el.ini
-rw-r--r-- 1 admin users    9863 May 27 11:37 infos.log
-rw-r--r-- 1 admin users    9863 May 27 11:24 infos.old
drwxr-x--- 2 admin users    4096 May 26 11:54 maps
-rw-r--r-- 1 admin users     366 May 27 01:35 notes.xml
drwxr-x--- 2 admin users    4096 May 26 02:52 screenshots
-rw-r--r-- 1 admin users     560 May 19 15:48 spells_stormx64.dat
-rw-r--r-- 1 admin users     560 May 27 11:30 spells_stormzel.dat
-rw-r--r-- 1 admin users       0 May 14 05:03 srv_log.txt
drwxr-x--- 2 admin users    4096 May 27 11:37 tmp
localhost main # cat .menu
Test
Show Server Stats||#stats
Show Invasion Monsters Count||#il
Show Day||#day||#date
||
Hi to me||/bluap hi
Say local hi||hi
Stats On||%show_stats_in_hud=1
Stats Off||%show_stats_in_hud=0
Channel Hi||@hi
||
Open Readonly Storage||#sto
Alias 99||#99
||
BBC News||http://news.bbc.co.uk/

 

 

users menu is working ! I have rectified the error and have renamed a file

-rw-r--r-- 1 admin users	 253 May 27 16:03 example.menu 
-rw-r--r-- 1 admin users	 287 May 27 16:05 file.menu

Edited by stormzel

Share this post


Link to post
Share on other sites

Great Work! :P

 

I updated the project-file for the MAC-client, so that the user-menus get compiled in there, too.

The patch is on Berlios...

Share this post


Link to post
Share on other sites
I updated the project-file for the MAC-client, so that the user-menus get compiled in there, too.

The patch is on Berlios...

Thanks for the patch. Unfortunately, for some weird reason I am unable to apply the patch to my copy of the code. Also, I don't have a mac to test this on. Any chance one of the mac dev with commit permissions could apply this, test and patch please?

Edited by bluap

Share this post


Link to post
Share on other sites

right click paste doesn't work in the user input box

text is pasted in command line

but ctrl+v works

 

could the box get smaller? only first line is processed anyway

I'm also getting some artifacts of my last input when I pasted several lines and open it again and scroll down.

Share this post


Link to post
Share on other sites

I tried the user menu today, and find it very good. But i have one request, is it possible to put in some textvariables to the menus?

For example if i want to sell something in the marketing channel and want to give some basics of the deal in an multiline pm to someone, who reacts to my offer i have no joice then to start each line with an <textinput> where i put him into a line. even with the use of the alias command and its variables a 3 line pm would be something like

Deals Detail ||#1 <name>||#2 <name>||#3 <name>

And the result would be that i have 3 Inputs for his name.

 

If the implement of the parser would save the name of the <text promt> and use for the same named one the input window one time, and uses the input every time, a lot more could be done with the menu then before.

Share this post


Link to post
Share on other sites
right click paste doesn't work in the user input box

text is pasted in command line

but ctrl+v works

Yep, I've noticed that too but have not found a easy way to fix it yet.

 

could the box get smaller? only first line is processed anyway

I'm also getting some artifacts of my last input when I pasted several lines and open it again and scroll down.

Sorry, why do you say only the first line is processed? As you type, the text is wrapped if it gets longer than a single line. The wrapped text is used as you would expect. May be I misunderstand what you are saying.... Yes, I've seen the "artefacts of my last input" but have not found a fix for that either.

Share this post


Link to post
Share on other sites
I tried the user menu today, and find it very good. But i have one request, is it possible to put in some textvariables to the menus?

For example if i want to sell something in the marketing channel and want to give some basics of the deal in an multiline pm to someone, who reacts to my offer i have no joice then to start each line with an <textinput> where i put him into a line. even with the use of the alias command and its variables a 3 line pm would be something like

Deals Detail ||#1 <name>||#2 <name>||#3 <name>

And the result would be that i have 3 Inputs for his name.

 

If the implement of the parser would save the name of the <text promt> and use for the same named one the input window one time, and uses the input every time, a lot more could be done with the menu then before.

Sounds like a great idea to me. So if the same <prompt text> appears more than once in a menu line, the user will be prompted the first time for input but not again for the other occurrences. The input entered the first time will be reused. Thanks, I'll add that feature....

Share this post


Link to post
Share on other sites

Great stuff :P

 

I have a question tho. I created links.menu and player.menu among some others, and Links is now in the middle of the menus. How do I make appear the last one in the list? Because they're sorted alphabetically.

Share this post


Link to post
Share on other sites
Great stuff :pickaxe:

I have a question tho. I created links.menu and player.menu among some others, and Links is now in the middle of the menus. How do I make appear the last one in the list? Because they're sorted alphabetically.

The menu name text is specified on the files first line, the file-name can be anything but the alphabet order of the file-names will control the order in the menu window. So just rename you .menu files so they give the required order. For example 01_first.menu 02_second.menu etc.

Share this post


Link to post
Share on other sites

I've noticed that the menu window ignores the "window on top" option and instead is always on top. It sometimes gets in the way of mapwalking or reading chat: could it be made so that it responds to alt+w like the other windows do?

 

The other thing is: these menu are a brilliant feature, but they risk to not be used much, since most users won't know how to add them without asking or searching. Would it be possible to have some defaults menu in a folder shipped with the client (they are just small text files, will take almost no space) and the client loading those default menu when the user menu are enabled but there is no .menu file in the settings directory?

- .menu files in EL_data/menu/ (shipped with the client)

- the user enables the menu, the client search for .menu files in the EL_settings/main/

- if there are no .menu files in EL_settings/main/, the client loads the ones from EL_data/menu/

Share this post


Link to post
Share on other sites
I've noticed that the menu window ignores the "window on top" option and instead is always on top. It sometimes gets in the way of mapwalking or reading chat: could it be made so that it responds to alt+w like the other windows do?

 

The other thing is: these menu are a brilliant feature, but they risk to not be used much, since most users won't know how to add them without asking or searching. Would it be possible to have some defaults menu in a folder shipped with the client (they are just small text files, will take almost no space) and the client loading those default menu when the user menu are enabled but there is no .menu file in the settings directory?

- .menu files in EL_data/menu/ (shipped with the client)

- the user enables the menu, the client search for .menu files in the EL_settings/main/

- if there are no .menu files in EL_settings/main/, the client loads the ones from EL_data/menu/

The user menus ignore the "windows on top" feature deliberately, in fact there is no show/hide mechanism except the config option. I expected the user to want the menu displayed all the time or never. If you have room, it can easily sit at the top of the screen or in space on the bottom hud. You can remove the title bar, make the font small and the text fades when the mouse is not over; all indented to allow it to melt into the background but still be there when needed. However, it would be possible to make "windows on top" an option but I would want to turn it off personally.

 

There is already an option to show "System menus" that could be shipped with the client data; *.menu from "data_dir" will be used. This provides the functionality you suggest I think but in a slightly different way. The way it is implemented, you can keep both sets of menus if you want.

Edited by bluap

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×