private void load_menu_help()
    {
        global::System.Int32 subMenuIdx = 0;
        var menuItem = new menuItemClass();

        menuItem.menuUID                = "Help";
        menuItem.menuTitle              = rm.GetString("menuHelpTitle", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = default;
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "help.icon.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = HELP;
        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU CHECK FOR UPDATES
        menuItem                        = new menuItemClass();
        subMenuIdx                     += 1;
        menuItem.menuUID                = "CheckUpdates";
        menuItem.menuTitle              = rm.GetString("menuItemCheckUpdate", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = "update.dll";
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = HELP;
        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU ABOUT
        menuItem                        = new menuItemClass();
        subMenuIdx                     += 1;
        menuItem.menuUID                = "About";
        menuItem.menuTitle              = rm.GetString("menuItemAbout", CultureInfo.CurrentCulture) + " " + enVars.customization.ApplicationBrandNAme;
        menuItem.assemblyFriendlyUID    = "about.dll";
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = HELP;
        enVars.layoutDesign.menu.items.Add(menuItem);
    }
        private void buildMenuOption(menuItemClass menuItem, int placeIndex, int firstmenuItemListIndex, int menuItemsCount)
        {
            int titlePosY         = 0;
            int menuPosX          = enVars.layoutDesign.menu.properties.ClosedStateSize;
            int iconSize          = Convert.ToInt16(enVars.layoutDesign.menu.properties.ClosedStateSize * 0.7);
            var subMenuExpandIcon = new IconPictureBox();
            var subMenuIcon       = new PictureBox();

            menuItem.iconPicHolder = new List <PictureBox>();
            PanelDoubleBuffer activeBar;
            var index        = enVars.layoutDesign.menu.items.FindIndex(c => c.menuUID.Equals(menuItem.menuUID));
            var subMenuPanel = new PanelDoubleBuffer()
            {
                Width     = enVars.layoutDesign.menu.properties.width,
                Height    = enVars.layoutDesign.menu.properties.height,
                BackColor = enVars.layoutDesign.menu.properties.backColor,
                Parent    = setup.menuPanel,
                Name      = menuItem.menuUID + "-" + index,
                Location  = new Point(0, enVars.layoutDesign.menu.properties.height * placeIndex)
            };

            subMenuPanel.Click += menuPanel_Click;
            if (placeIndex.Equals(0))
            {
                subMenuIcon = new PictureBox()
                {
                    Width    = iconSize,
                    Height   = iconSize,
                    Location = new Point((enVars.layoutDesign.menu.properties.height - iconSize) / 2, (enVars.layoutDesign.menu.properties.height - iconSize) / 2),
                    Parent   = subMenuPanel,
                    Cursor   = Cursors.Hand
                };
                if (menuItem.menuTitle.Equals("username"))
                {
                    if (enVars.userPhoto.Equals(""))
                    {
                        subMenuIcon.Image = Image.FromFile(enVars.imagesPath + "worker.icon.png");
                    }
                    else
                    {
                        subMenuIcon.InitialImage = Image.FromFile(enVars.imagesPath + Convert.ToString("loading.png"));
                        subMenuIcon.SizeMode     = PictureBoxSizeMode.StretchImage;
                        var tClient = new WebClient();
                        try
                        {
                            // TODO where to save the files
                            Bitmap tImage = (Bitmap)Image.FromStream(new MemoryStream(tClient.DownloadData(enVars.ServerBaseAddr + "/csl/photos/" + enVars.userPhoto)));
                            subMenuIcon.Image = tImage;
                        }
                        catch (Exception ex)
                        {
                            System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.GetCultureInfo(enVars.currentLang);
                            subMenuIcon.Image = Image.FromFile(enVars.imagesPath + Convert.ToString("worker.icon.png"));
                            updateStausMessage?.Invoke(this, resources.GetString("errorDownloadingPhoto"));
                        }
                    }
                }
                else if (!menuItem.icon.Equals(""))
                {
                    var checkFile = new FileInfo(enVars.imagesPath + menuItem.icon);
                    checkFile.Refresh();
                    if (checkFile.Exists)
                    {
                        subMenuIcon.Image = Image.FromFile(enVars.imagesPath + menuItem.icon);
                    }
                }

                subMenuIcon.SizeMode = PictureBoxSizeMode.StretchImage;
                subMenuIcon.Click   += menuPanel_Click;
                subMenuPanel.Controls.Add(subMenuIcon);

                //expand icon
                subMenuExpandIcon = new IconPictureBox()
                {
                    IconColor = enVars.layoutDesign.labelForeColor,
                    BackColor = Color.Transparent,
                    Cursor    = Cursors.Hand,
                    IconChar  = IconChar.ArrowDown,
                    IconSize  = iconSize,
                    Location  = new Point(enVars.layoutDesign.menu.properties.width - enVars.layoutDesign.menu.properties.height, Convert.ToInt16(enVars.layoutDesign.menu.properties.height / 2 - iconSize / 2)),
                    Name      = menuItem.menuUID + "_expandIcon-" + index,
                    Size      = new Size(enVars.layoutDesign.menu.properties.height - 6, enVars.layoutDesign.menu.properties.height - 6),
                    Parent    = subMenuPanel
                };

                // TODO add tooltips
                subMenuExpandIcon.Click += menuExpandPanel_Click;
                subMenuPanel.Controls.Add(subMenuExpandIcon);
            }

            // MENU ITEM ACTIVE BAR  =====================================================================================================================
            // TODO: ????
            if (placeIndex.Equals(0))
            {
                menuPosX = enVars.layoutDesign.menu.properties.height;
            }
            else
            {
                menuPosX = enVars.layoutDesign.menu.properties.activeBarWidth + 5;
            }

            if (placeIndex > 0)
            {
                activeBar = new PanelDoubleBuffer()
                {
                    Width     = enVars.layoutDesign.menu.properties.activeBarWidth,
                    Height    = subMenuPanel.Height - 1,
                    BackColor = Color.Transparent,
                    Location  = new Point(0, 0),
                    Parent    = subMenuPanel,
                    Name      = menuItem.menuUID + "_activeBar-" + index
                };
                subMenuPanel.Controls.Add(activeBar);
            }
            else
            {
                activeBar = default;
            }

            // MENU ITEM NOTIFICATION  =====================================================================================================================
            var notif = new LabelDoubleBuffer()
            {
                Location  = new Point(subMenuPanel.Width - enVars.layoutDesign.menu.properties.ClosedStateSize, 5),
                Font      = new Font(enVars.layoutDesign.fontTitle.Families[0], enVars.layoutDesign.subMenuTitleFontSize, FontStyle.Regular),
                Text      = "",
                Parent    = subMenuPanel,
                ForeColor = Color.Orange,
                BackColor = Color.Transparent,
                Cursor    = Cursors.Hand,
                Name      = menuItem.menuUID + "_notificationIcon-" + index
            };

            if (menuItem.notifications > 0)
            {
                if (menuItem.notifications < 10)
                {
                    notif.Text = "0" + menuItem.notifications.ToString();
                }
                else
                {
                    notif.Text = menuItem.notifications.ToString();
                }
            }

            notif.Click += menuNotification_Click;
            subMenuPanel.Controls.Add(notif);

            // MENU ITEM TITLE TEXT =====================================================================================================================
            if (menuItem.menuTitle.Equals("username"))
            {
                var subtitle = new LabelDoubleBuffer()
                {
                    Font      = new Font(enVars.layoutDesign.fontTitle.Families[0], enVars.layoutDesign.subMenuTitleFontSize, FontStyle.Regular),
                    Location  = new Point(menuPosX, 26),
                    Text      = enVars.customization.businessname,
                    Parent    = setup.menuPanel,
                    ForeColor = Color.White,
                    BackColor = Color.Transparent,
                    Width     = enVars.layoutDesign.menu.properties.width,
                    Cursor    = Cursors.Hand
                };
                subtitle.Click += menuPanel_Click;
                setup.menuPanel.Controls.Add(subtitle);
                titlePosY = 5;
            }
            else if (placeIndex.Equals(0))
            {
                titlePosY = Convert.ToInt16((setup.menuPanel.Height - sizeOfString.Height) / 2);
            }
            else
            {
                titlePosY = Convert.ToInt16((setup.menuPanel.Height - sizeOfString.Height) / 2);
            }

            var title = new LabelDoubleBuffer()
            {
                Font      = new Font(enVars.layoutDesign.fontTitle.Families[0], enVars.layoutDesign.menuTitleFontSize, FontStyle.Regular),
                Location  = new Point(menuPosX, titlePosY),
                Text      = menuItem.menuTitle.Equals("username") ? enVars.username.Equals("") ? "user" : enVars.username : menuItem.menuTitle,
                Parent    = setup.menuPanel,
                ForeColor = Color.White,
                BackColor = Color.Transparent,
                Width     = enVars.layoutDesign.menu.properties.width,
                Cursor    = Cursors.Hand,
                Name      = menuItem.menuUID + "_title-" + index
            };

            title.Click += menuPanel_Click;
            subMenuPanel.Controls.Add(title);
            setup.menuPanel.Controls.Add(subMenuPanel);
            enVars.layoutDesign.menu.items[index].menuListIndex      = firstmenuItemListIndex;
            enVars.layoutDesign.menu.items[index].menuItemPanel      = subMenuPanel;
            enVars.layoutDesign.menu.items[index].menuActiveBarPanel = activeBar;
            enVars.layoutDesign.menu.items[index].iconPicHolder      = new List <PictureBox>();
            enVars.layoutDesign.menu.items[index].iconPicHolder.Add(subMenuIcon);
            enVars.layoutDesign.menu.items[index].iconPicHolderFontAwesome[1] = subMenuExpandIcon;
        }
    public static environmentVarsCore loadTestingEnvironmentVars(environmentVarsCore envars)
    {
        const int PROFILE  = 1;
        const int HELP     = 100;
        const int PROFILE2 = 200;
        const int PROFILE3 = 300;

        envars.customization.ApplicationBrandNAme                 = "MainTestApp";
        envars.customization.designLayoutAssemblyFileName         = "ltbm.layout.dll";
        envars.customization.designLayoutAssemblyNameSpace        = "AeonLabs.Layouts.Main";
        envars.customization.designStartupLayoutAssemblyFileName  = "medieval.startup.layout.dll";
        envars.customization.designStartupLayoutAssemblyNameSpace = "AeonLabs.Layouts.StartUp";
        envars.customization.hasLogin                    = true;
        envars.customization.hasSetup                    = true;
        envars.customization.hasLocalSettings            = true;
        envars.customization.hasCloudSettings            = true;
        envars.customization.hasStaticAssemblies         = true;
        envars.customization.hasDynamicAssemblies        = true;
        envars.customization.hasStaticDocumentTemplates  = true;
        envars.customization.hasDynamicDocumentTemplates = true;

        // TODO: replace by API ACCESS KEY string : office435dfgjdn4235
        envars.customization.softwareAccessMode    = "humanResources"; // possible values: office, site, contractor, rh
        envars.customization.expireDate            = "01/01/2021";
        envars.customization.updateServerAddr      = "http://www.store.aeonlabs.solutions/index.php";
        envars.customization.crashReportServerAddr = "http://www.sitelogistics.construction/shared/crash/api.php?task=crash";
        envars.customization.websiteToLoadProgram  = "http://www.sitelogistics.construction";



        envars.layoutDesign.PanelBackColor         = Color.Black;
        envars.layoutDesign.PanelTransparencyIndex = 70;
        envars.layoutDesign.IconsDefaultSize       = 40;
        envars.layoutDesign.PANEL_SCROOL_UNDERLAY  = 100;


        // MENUS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

        envars.layoutDesign.menu.properties.ClosedStateSize = 40;
        envars.layoutDesign.menu.properties.height          = 40;
        envars.layoutDesign.menu.properties.width           = 400;
        envars.layoutDesign.menu.properties.activeBarWidth  = 5;
        envars.layoutDesign.menu.properties.activeBarColor  = Color.Orange;


        // MENU PRIFILE ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        envars.layoutDesign.menu.items = new System.Collections.Generic.List <menuItemClass>();
        var menuItem   = new menuItemClass();
        int subMenuIdx = 0;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "Menu 1";
        menuItem.friendlyUID            = "profile.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "usersProfileForm";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "icon.person.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = PROFILE;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU SETTINGS
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "Submenu 1";
        menuItem.friendlyUID            = "settings.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU LOGOUT
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "Subemenu 2";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;
        menuItem.tasks.Add(runInternalTask.LOGOUT.ToString());


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU EXIT APP
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 3";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = false;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;
        menuItem.tasks.Add(runInternalTask.EXITAPP.ToString());

        envars.layoutDesign.menu.items.Add(menuItem);

        // MENU profile 2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        menuItem   = new menuItemClass();
        subMenuIdx = 0;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "menu 2";
        menuItem.friendlyUID            = "profile.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "usersProfileForm";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "icon.person.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = PROFILE2;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU SETTINGS
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 1";
        menuItem.friendlyUID            = "settings.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE2;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU LOGOUT
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 2";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE2;
        menuItem.tasks.Add(runInternalTask.LOGOUT.ToString());


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU EXIT APP
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 3";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = false;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE2;
        menuItem.tasks.Add(runInternalTask.EXITAPP.ToString());


        envars.layoutDesign.menu.items.Add(menuItem);

        // MENU PRIFILE 3++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        menuItem   = new menuItemClass();
        subMenuIdx = 0;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "menu 3";
        menuItem.friendlyUID            = "profile.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "usersProfileForm";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "icon.person.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = PROFILE3;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU SETTINGS
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 1";
        menuItem.friendlyUID            = "settings.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE3;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU LOGOUT
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 2";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE3;
        menuItem.tasks.Add(runInternalTask.LOGOUT.ToString());


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU EXIT APP
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 3";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = false;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE3;
        menuItem.tasks.Add(runInternalTask.EXITAPP.ToString());


        envars.layoutDesign.menu.items.Add(menuItem);
        // MENU HELP ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        subMenuIdx = 0;
        menuItem   = new menuItemClass();

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "menu 4";
        menuItem.friendlyUID            = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "icon.help.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = HELP;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU CHECK FOR UPDATES
        subMenuIdx += 1;
        menuItem    = new menuItemClass();

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 1";
        menuItem.friendlyUID            = "update.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = HELP;


        envars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU ABOUT
        menuItem                        = new menuItemClass();
        subMenuIdx                     += 1;
        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = "sub menu 2";
        menuItem.friendlyUID            = "about.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = HELP;
        envars.layoutDesign.menu.items.Add(menuItem);
        return(envars);
    }
示例#4
0
    private void load_profile_menu()
    {
        //Assembly assembly = Assembly.GetExecutingAssembly();
        //foreach (string s in assembly.GetManifestResourceNames())
        //    System.Diagnostics.Debug.WriteLine(s);

        var menuItem = new menuItemClass();

        global::System.Int32 subMenuIdx = 0;
        menuItem.menuUID                = "MyProfile";
        menuItem.menuTitle              = rm.GetString("menuItemMyProfile", CultureInfo.CurrentCulture);
        menuItem.friendlyUID            = "profile.dll";
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "usersProfileForm";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = PROFILE;
        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU SETTINGS
        subMenuIdx                     += 1;
        menuItem.menuUID                = "Settings";
        menuItem.menuTitle              = rm.GetString("menuItemSettings", CultureInfo.CurrentCulture);
        menuItem.friendlyUID            = "settings.dll";
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = PROFILE;
        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU LOGOUT
        subMenuIdx                     += 1;
        menuItem.menuUID                = "Logout";
        menuItem.menuTitle              = rm.GetString("menuItemLogout", CultureInfo.CurrentCulture);
        menuItem.friendlyUID            = default;
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = PROFILE;
        menuItem.tasks.Add(constants.runInternalTask.LOGOUT.ToString());
        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU EXIT APP
        subMenuIdx                     += 1;
        menuItem.menuUID                = "Exit";
        menuItem.menuTitle              = rm.GetString("menuItemLogout", CultureInfo.CurrentCulture);
        menuItem.friendlyUID            = default;
        menuItem.formWithContentsToLoad = default;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = default;
        menuItem.icon                   = "";
        menuItem.subMenuIndex           = subMenuIdx;
        menuItem.menuIndex              = PROFILE;
        menuItem.tasks.Add(constants.runInternalTask.EXITAPP.ToString());
        enVars.layoutDesign.menu.items.Add(menuItem);
    }
    private void load_profile_menu()
    {
        enVars.layoutDesign.menu.items = new System.Collections.Generic.List <menuItemClass>();
        var menuItem   = new menuItemClass();
        int subMenuIdx = 0;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = rm.GetString("menuItemMyProfile", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = "profile.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "usersProfileForm";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "icon.person.png";
        menuItem.subMenuIndex = 0;
        menuItem.menuIndex    = PROFILE;

        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU SETTINGS
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = rm.GetString("menuItemSettings", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = "settings.dll";
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;

        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU LOGOUT
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = rm.GetString("menuItemLogout", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = true;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;
        menuItem.tasks.Add(runInternalTask.LOGOUT.ToString());

        enVars.layoutDesign.menu.items.Add(menuItem);

        // SUB MENU EXIT APP
        menuItem    = new menuItemClass();
        subMenuIdx += 1;

        menuItem.menuUID                = Guid.NewGuid().ToString().Replace("-", "");
        menuItem.menuTitle              = rm.GetString("menuItemLogout", CultureInfo.CurrentCulture);
        menuItem.assemblyFriendlyUID    = null;
        menuItem.formWithContentsToLoad = null;
        menuItem.nameSpaceString        = "";
        menuItem.showAsDialog           = false;
        menuItem.icon         = "";
        menuItem.subMenuIndex = subMenuIdx;
        menuItem.menuIndex    = PROFILE;
        menuItem.tasks.Add(runInternalTask.EXITAPP.ToString());

        enVars.layoutDesign.menu.items.Add(menuItem);
    }