Пример #1
0
    // Use this for initialization
    void Awake()
    {
        shipSelect = 1;
        vulcanSelect = 1;
        laserSelect = 1;
        bombSelect = 1;

        prevGarageState = UiState.NONE;
        garageState = UiState.NONE;
        nextGarageState = UiState.MENU;
        nowSelection = 1;
        itemNo = 2;
        nowOk = 0;
        inputCnt = 0;
    }
Пример #2
0
    // Update is called once per frame
    void Update()
    {
        //今どのシーンか
        switch (garageState) {
        case UiState.MENU:
            if(nowOk == -1){
                GameData.nextState = OfflineStatus.E_OFFLINE_STATE.MENU;
            }
            if(nowOk == 1){
                nextGarageState = UiState.SHIP;
            }
            if(nowOk == 2){
                nextGarageState = UiState.WEAPON;
            }
            break;
        case UiState.SHIP:
            if(nowOk == -1){
                nextGarageState = UiState.MENU;
            }
            if(nowOk > 0){
                nextGarageState = UiState.MENU;
                shipSelect = nowOk;
            }

            ModelChange();
            break;
        case UiState.WEAPON:
            if(nowOk == -1){
                nextGarageState = UiState.MENU;
            }
            if(nowOk == 1){
                nextGarageState = UiState.VULCAN;
            }
            if(nowOk == 2){
                nextGarageState = UiState.LASER;
            }
            if(nowOk == 3){
                nextGarageState = UiState.BOMB;
            }
            break;
        case UiState.VULCAN:
            if(nowOk == -1){
                nextGarageState = UiState.WEAPON;
            }
            if(nowOk > 0){
                nextGarageState = UiState.WEAPON;
                vulcanSelect = nowOk;
            }
            break;
        case UiState.LASER:
            if(nowOk == -1){
                nextGarageState = UiState.WEAPON;
            }
            if(nowOk > 0){
                nextGarageState = UiState.WEAPON;
                laserSelect = nowOk;
            }
            break;
        case UiState.BOMB:
            if(nowOk == -1){
                nextGarageState = UiState.WEAPON;
            }
            if(nowOk > 0){
                nextGarageState = UiState.WEAPON;
                bombSelect = nowOk;
            }
            break;
        default:
            break;
        }

        //次のシーンに移るなら実行
        while(nextGarageState != UiState.NONE)
        {
            nowSelection = 1;
            prevGarageState = garageState;//今のシーンを古いものへ
            garageState = nextGarageState;//次ののシーンを今のシーンへ
            nextGarageState = UiState.NONE;//次のシーンは空に//それぞれ代入

            //シーン遷移
            switch(garageState)
            {
            case UiState.MENU:
                itemNo = 2;
                ui[(int)UiState.MENU].SetActive(true);
                break;
            case UiState.SHIP:
                itemNo = 3;
                ui[(int)UiState.SHIP].SetActive(true);
                break;
            case UiState.WEAPON:
                itemNo = 3;
                ui[(int)UiState.WEAPON].SetActive(true);
                break;
            case UiState.VULCAN:
                itemNo = 3;
                ui[(int)UiState.VULCAN].SetActive(true);
                break;
            case UiState.LASER:
                itemNo = 3;
                ui[(int)UiState.LASER].SetActive(true);
                break;
            case UiState.BOMB:
                itemNo = 3;
                ui[(int)UiState.BOMB].SetActive(true);
                break;
            }

            //古いシーンは消す
            switch(prevGarageState)
            {
            case UiState.MENU:
                ui[(int)UiState.MENU].SetActive(false);
                break;
            case UiState.SHIP:
                ui[(int)UiState.SHIP].SetActive(false);
                break;
            case UiState.WEAPON:
                ui[(int)UiState.WEAPON].SetActive(false);
                break;
            case UiState.VULCAN:
                ui[(int)UiState.VULCAN].SetActive(false);
                break;
            case UiState.LASER:
                ui[(int)UiState.LASER].SetActive(false);
                break;
            case UiState.BOMB:
                ui[(int)UiState.BOMB].SetActive(false);
                break;
            }
        }
        nowOk = KeyCommand ();
    }
Пример #3
0
 public SliceSettingsWidget(UiState uiState)
 {
     AddControls(uiState);
 }
Пример #4
0
 public UiStateMessage(UiState uiState, String uiText, UiDirection uiDirection, InputOption[] inputOptions)
     : base(Methods.UI_STATE)
 {
     this.uiState = uiState;
     this.uiText = uiText;
     this.uiDirection = uiDirection;
     this.inputOptions = inputOptions;
 }
Пример #5
0
        void AddControls(UiState uiState)
        {
            int minSettingNameWidth = 220;

			showHelpBox = new CheckBox(new LocalizedString("Show Help").Translated);
			showHelpBox.Checked = uiState.showHelp;

			showAllDetails = new CheckBox(new LocalizedString("Show All Settings").Translated);
            showAllDetails.Checked = uiState.userLevel == "Advanced";

            FlowLayoutWidget pageTopToBottomLayout = new FlowLayoutWidget(FlowDirection.TopToBottom, vAnchor: Agg.UI.VAnchor.ParentTop);
            pageTopToBottomLayout.AnchorAll();
            pageTopToBottomLayout.Padding = new BorderDouble(3, 0);
            this.AddChild(pageTopToBottomLayout);

            settingsControlBar = new SettingsControlBar();
            pageTopToBottomLayout.AddChild(settingsControlBar);

			noConnectionMessageContainer = new GroupBox(new LocalizedString("No Printer Selected").Translated);
            noConnectionMessageContainer.Margin = new BorderDouble(top: 10);
            noConnectionMessageContainer.TextColor = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessageContainer.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessageContainer.HAnchor = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;
            noConnectionMessageContainer.Height = 80;

			TextWidget noConnectionMessage = new TextWidget(new LocalizedString("No printer is currently selected. Select printer to edit slice settings.").Translated);
            noConnectionMessage.Margin = new BorderDouble(5);
            noConnectionMessage.TextColor = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessage.VAnchor = VAnchor.ParentCenter;

            noConnectionMessageContainer.AddChild(noConnectionMessage);
            pageTopToBottomLayout.AddChild(noConnectionMessageContainer);

            categoryTabs = new TabControl();
            categoryTabs.TabBar.BorderColor = RGBA_Bytes.White;
            categoryTabs.Margin = new BorderDouble(top: 8);
            categoryTabs.AnchorAll();
            List<TabBar> sideTabBarsListForLayout = new List<TabBar>();
            for (int categoryIndex = 0; categoryIndex < SliceSettingsOrganizer.Instance.UserLevels[UserLevel].CategoriesList.Count; categoryIndex++)
            {
                OrganizerCategory category = SliceSettingsOrganizer.Instance.UserLevels[UserLevel].CategoriesList[categoryIndex];
				string categoryPageLbl = new LocalizedString (category.Name).Translated;
				TabPage categoryPage = new TabPage(categoryPageLbl);
                SimpleTextTabWidget textTabWidget = new SimpleTextTabWidget(categoryPage, 16,
                        ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());
                categoryPage.AnchorAll();
                categoryTabs.AddTab(textTabWidget);

                TabControl sideTabs = CreateSideTabsAndPages(minSettingNameWidth, category, uiState);
                sideTabBarsListForLayout.Add(sideTabs.TabBar);

                categoryPage.AddChild(sideTabs);
            }

            if (showAllDetails.Checked && ActivePrinterProfile.Instance.ActiveSliceEngineType == ActivePrinterProfile.SlicingEngineTypes.Slic3r)
            {
                TabPage extraSettingsPage = new TabPage("Other");
                SimpleTextTabWidget extraSettingsTextTabWidget = new SimpleTextTabWidget(extraSettingsPage, 16,
                        ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());
                extraSettingsPage.AnchorAll();
                int count;
                TabControl extraSettingsSideTabs = CreateExtraSettingsSideTabsAndPages(minSettingNameWidth, categoryTabs, out count);
                if (count > 0)
                {
                    categoryTabs.AddTab(extraSettingsTextTabWidget);
                    sideTabBarsListForLayout.Add(extraSettingsSideTabs.TabBar);
                    extraSettingsPage.AddChild(extraSettingsSideTabs);
                }
            }

            double sideTabBarsMinimumWidth = 0;
            foreach (TabBar tabBar in sideTabBarsListForLayout)
            {
                sideTabBarsMinimumWidth = Math.Max(sideTabBarsMinimumWidth, tabBar.Width);
            }
            foreach (TabBar tabBar in sideTabBarsListForLayout)
            {
                tabBar.MinimumSize = new Vector2(sideTabBarsMinimumWidth, tabBar.MinimumSize.y);
            }

            // space before checkboxes (hold the right aligned)
            {
                GuiWidget hSpacer = new GuiWidget();
                hSpacer.HAnchor = HAnchor.ParentLeftRight;

                categoryTabs.TabBar.AddChild(hSpacer);
            }

            // add in the ability to turn on and off all details settings
            {
                showAllDetails.TextColor = RGBA_Bytes.White;
                showAllDetails.Margin = new BorderDouble(right: 8);
                showAllDetails.VAnchor = VAnchor.ParentCenter;
                showAllDetails.Cursor = Cursors.Hand;
                showAllDetails.CheckedStateChanged += new CheckBox.CheckedStateChangedEventHandler(RebuildSlicerSettings);

                categoryTabs.TabBar.AddChild(showAllDetails);
            }

            // add in the ability to turn on and off help text
            {
                showHelpBox.TextColor = RGBA_Bytes.White;
                showHelpBox.Margin = new BorderDouble(right: 3);
                showHelpBox.VAnchor = VAnchor.ParentCenter;
                showHelpBox.Cursor = Cursors.Hand;
                showHelpBox.CheckedStateChanged += new CheckBox.CheckedStateChangedEventHandler(RebuildSlicerSettings);

				categoryTabs.TabBar.AddChild(showHelpBox);
            }

            pageTopToBottomLayout.AddChild(categoryTabs);
            AddHandlers();
            SetVisibleControls();

            if (!categoryTabs.SelectTab(uiState.selectedCategory.name))
            {
                categoryTabs.SelectTab(uiState.selectedCategory.index);
            }
        }
Пример #6
0
        private TabControl CreateSideTabsAndPages(int minSettingNameWidth, OrganizerCategory category, UiState uiState)
        {
            TabControl groupTabs = new TabControl(Orientation.Vertical);
            groupTabs.Margin = new BorderDouble(0, 0, 0, 5);
            groupTabs.TabBar.BorderColor = RGBA_Bytes.White;
            foreach (OrganizerGroup group in category.GroupsList)
            {
                tabIndexForItem = 0;
				string groupTabLbl = new LocalizedString (group.Name).Translated;
				TabPage groupTabPage = new TabPage(groupTabLbl);
                SimpleTextTabWidget groupTabWidget = new SimpleTextTabWidget(groupTabPage, 14,
                   ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());

                FlowLayoutWidget subGroupLayoutTopToBottom = new FlowLayoutWidget(FlowDirection.TopToBottom);
                subGroupLayoutTopToBottom.AnchorAll();

                bool needToAddSubGroup = false;
                foreach (OrganizerSubGroup subGroup in group.SubGroupsList)
                {
                    bool addedSettingToSubGroup = false;
                    FlowLayoutWidget topToBottomSettings = new FlowLayoutWidget(FlowDirection.TopToBottom);
                    topToBottomSettings.HAnchor = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;

                    foreach (OrganizerSettingsData settingInfo in subGroup.SettingDataList)
                    {
                        if (ActivePrinterProfile.Instance.ActiveSliceEngine.MapContains(settingInfo.SlicerConfigName))
                        {
                            addedSettingToSubGroup = true;
                            GuiWidget controlsForThisSetting = CreateSettingInfoUIControls(settingInfo, minSettingNameWidth);
                            topToBottomSettings.AddChild(controlsForThisSetting);

                            if (showHelpBox.Checked)
                            {
                                AddInHelpText(topToBottomSettings, settingInfo);
                            }
                        }
                    }

                    if (addedSettingToSubGroup)
                    {
                        needToAddSubGroup = true;
						string groupBoxLbl = new LocalizedString (subGroup.Name).Translated;
						GroupBox groupBox = new GroupBox (groupBoxLbl);
                        groupBox.TextColor = ActiveTheme.Instance.PrimaryTextColor;
                        groupBox.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
                        groupBox.AddChild(topToBottomSettings);

                        groupBox.HAnchor = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;

                        subGroupLayoutTopToBottom.AddChild(groupBox);
                    }
                }

                if (needToAddSubGroup)
                {
                    ScrollableWidget scrollOnGroupTab = new ScrollableWidget(true);
                    scrollOnGroupTab.AnchorAll();
                    subGroupLayoutTopToBottom.HAnchor = HAnchor.Max_FitToChildren_ParentWidth;
                    subGroupLayoutTopToBottom.VAnchor = VAnchor.FitToChildren;
                    //subGroupLayoutTopToBottom.DebugShowBounds = true;
                    //scrollOnGroupTab.DebugShowBounds = true;
                    scrollOnGroupTab.AddChild(subGroupLayoutTopToBottom);
                    groupTabPage.AddChild(scrollOnGroupTab);
                    groupTabs.AddTab(groupTabWidget);
                }
            }

            if (!groupTabs.SelectTab(uiState.selectedGroup.name))
            {
                groupTabs.SelectTab(uiState.selectedGroup.index);
            }
            return groupTabs;
        }
Пример #7
0
        public void SetAuth(UserAuth auth)
        {
            try
            {
                Auth = auth;

                ResoursHandler = new ResourceHandler(Auth.SecurityToken, Auth.TenantID, Auth.CompanyID);

                SipSetting = ProfileManagementHandler.GetSipProfile(auth.SecurityToken, auth.guUserId);
                if (SipSetting == null)
                {
                    Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "Fail to Get SIP Profile", Logger.LogLevel.Error);
                    MessageBox.Show("Fail to Get SIP Profile", "Duo Dialer", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                ResoursHandler.OnResourceRegistrationCompleted += (r) =>
                {
                    try
                    {
                        switch (r.Command)
                        {
                        case WorkflowResultCode.ACDS101:     //- Agent sucessfully registered (ACDS101)
                            ResoursHandler.SendModeChangeRequestInbound(Auth);
                            break;

                        case WorkflowResultCode.ACDE101:     //- Agent already registered with different IP (ACDE101)
                            Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "Agent already registered with different IP-ARDS Code : ACDE101", Logger.LogLevel.Info);
                            MessageBox.Show("Agent already registered with different IP", "Duo Dialer", MessageBoxButtons.OK, MessageBoxIcon.Error);

                            break;

                        default:
                            Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "Login Fail-- ARDS not allow to Login. ARDS Code : " + r.Command, Logger.LogLevel.Info);
                            MessageBox.Show("Login Fail", "Duo Dialer", MessageBoxButtons.OK, MessageBoxIcon.Error);

                            break;
                        }
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "OnResourceRegistrationCompleted", exception, Logger.LogLevel.Error);
                    }
                };

                ResoursHandler.OnSendModeChangeRequestInboundCompleted += (s) =>
                {
                    try
                    {
                        CallHandler = new CallHandler(auth.SecurityToken, auth.TenantID, auth.CompanyID);
                        UiState.InInitiateMsgState(CallHandler.AutoAnswerByDefault(), (CallHandler.AutoAnswerByDefault() && CallHandler.AutoAnswerCanAgentEnable()), auth.UserName);
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "OnSendModeChangeRequestInboundCompleted", exception, Logger.LogLevel.Error);
                    }
                };

                ResoursHandler.OnStatusUpdatedMessage += (s) =>
                {
                    try
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, string.Format("OnStatusUpdatedMessage : {0}", s), Logger.LogLevel.Info);
                        //if (!string.IsNullOrEmpty(s.ExtraData))
                        //    mynotifyicon.ShowBalloonTip(5, "Duo Soft Phone", s.ExtraData, ToolTipIcon.Info);
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "OnStatusUpdatedMessage", exception, Logger.LogLevel.Error);
                    }
                };

                ResoursHandler.OnSendStatusChangeRequestIdelCompleted += (s) =>
                {
                    try
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, string.Format("OnSendStatusChangeRequestIdelCompleted : {0}", s), Logger.LogLevel.Info);
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "OnSendStatusChangeRequestIdelCompleted", exception, Logger.LogLevel.Error);
                    }
                };
            }
            catch (Exception exception)
            {
                Logger.Instance.LogMessage(Logger.LoggerFiles.DuoDefault, "SetAuth", exception, Logger.LogLevel.Error);
            }
        }
Пример #8
0
        public void Perform()
        {
            BattleEnemy enemy = BattleEnemy.Find(_v.Target);

            if (!HasStealableItems(enemy))
            {
                UiState.SetBattleFollowFormatMessage(BattleMesages.DoesNotHaveAnything);
                return;
            }

            if (!_v.Caster.HasSupportAbility(SupportAbility2.Bandit))
            {
                _v.Context.HitRate = (Int16)(_v.Caster.Level + _v.Caster.Will);
                _v.Context.Evade   = _v.Target.Level;

                if (GameRandom.Next16() % _v.Context.HitRate < GameRandom.Next16() % _v.Context.Evade)
                {
                    UiState.SetBattleFollowFormatMessage(BattleMesages.CouldNotStealAnything);
                    return;
                }
            }

            if (_v.Caster.HasSupportAbility(SupportAbility1.MasterThief))
            {
                if (enemy.StealableItems[3] != Byte.MaxValue && GameRandom.Next8() < 32)
                {
                    StealItem(enemy, 3);
                }
                else if (enemy.StealableItems[2] != Byte.MaxValue && GameRandom.Next8() < 32)
                {
                    StealItem(enemy, 2);
                }
                else if (enemy.StealableItems[1] != Byte.MaxValue && GameRandom.Next8() < 64)
                {
                    StealItem(enemy, 1);
                }
                else
                {
                    StealItem(enemy, 0);
                }
            }
            else
            {
                if (GameRandom.Next8() < 1)
                {
                    StealItem(enemy, 3);
                }
                else if (GameRandom.Next8() < 16)
                {
                    StealItem(enemy, 2);
                }
                else if (GameRandom.Next8() < 64)
                {
                    StealItem(enemy, 1);
                }
                else
                {
                    StealItem(enemy, 0);
                }
            }
        }
Пример #9
0
 public SliceSettingsWidget(UiState uiState)
 {
     AddControls(uiState);
 }
Пример #10
0
        void AddControls(UiState uiState)
        {
            int minSettingNameWidth = 220;

            showHelpBox         = new CheckBox(new LocalizedString("Show Help").Translated);
            showHelpBox.Checked = uiState.showHelp;

            showAllDetails         = new CheckBox(new LocalizedString("Show All Settings").Translated);
            showAllDetails.Checked = uiState.userLevel == "Advanced";

            FlowLayoutWidget pageTopToBottomLayout = new FlowLayoutWidget(FlowDirection.TopToBottom, vAnchor: Agg.UI.VAnchor.ParentTop);

            pageTopToBottomLayout.AnchorAll();
            pageTopToBottomLayout.Padding = new BorderDouble(3, 0);
            this.AddChild(pageTopToBottomLayout);

            settingsControlBar = new SettingsControlBar();
            pageTopToBottomLayout.AddChild(settingsControlBar);

            noConnectionMessageContainer             = new GroupBox(new LocalizedString("No Printer Selected").Translated);
            noConnectionMessageContainer.Margin      = new BorderDouble(top: 10);
            noConnectionMessageContainer.TextColor   = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessageContainer.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessageContainer.HAnchor     = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;
            noConnectionMessageContainer.Height      = 80;

            TextWidget noConnectionMessage = new TextWidget(new LocalizedString("No printer is currently selected. Select printer to edit slice settings.").Translated);

            noConnectionMessage.Margin    = new BorderDouble(5);
            noConnectionMessage.TextColor = ActiveTheme.Instance.PrimaryTextColor;
            noConnectionMessage.VAnchor   = VAnchor.ParentCenter;

            noConnectionMessageContainer.AddChild(noConnectionMessage);
            pageTopToBottomLayout.AddChild(noConnectionMessageContainer);

            categoryTabs = new TabControl();
            categoryTabs.TabBar.BorderColor = RGBA_Bytes.White;
            categoryTabs.Margin             = new BorderDouble(top: 8);
            categoryTabs.AnchorAll();
            List <TabBar> sideTabBarsListForLayout = new List <TabBar>();

            for (int categoryIndex = 0; categoryIndex < SliceSettingsOrganizer.Instance.UserLevels[UserLevel].CategoriesList.Count; categoryIndex++)
            {
                OrganizerCategory   category        = SliceSettingsOrganizer.Instance.UserLevels[UserLevel].CategoriesList[categoryIndex];
                string              categoryPageLbl = new LocalizedString(category.Name).Translated;
                TabPage             categoryPage    = new TabPage(categoryPageLbl);
                SimpleTextTabWidget textTabWidget   = new SimpleTextTabWidget(categoryPage, 16,
                                                                              ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());
                categoryPage.AnchorAll();
                categoryTabs.AddTab(textTabWidget);

                TabControl sideTabs = CreateSideTabsAndPages(minSettingNameWidth, category, uiState);
                sideTabBarsListForLayout.Add(sideTabs.TabBar);

                categoryPage.AddChild(sideTabs);
            }

            if (showAllDetails.Checked && PrinterCommunication.Instance.ActiveSliceEngine == PrinterCommunication.SlicingEngine.Slic3r)
            {
                TabPage             extraSettingsPage          = new TabPage("Other");
                SimpleTextTabWidget extraSettingsTextTabWidget = new SimpleTextTabWidget(extraSettingsPage, 16,
                                                                                         ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());
                extraSettingsPage.AnchorAll();
                int        count;
                TabControl extraSettingsSideTabs = CreateExtraSettingsSideTabsAndPages(minSettingNameWidth, categoryTabs, out count);
                if (count > 0)
                {
                    categoryTabs.AddTab(extraSettingsTextTabWidget);
                    sideTabBarsListForLayout.Add(extraSettingsSideTabs.TabBar);
                    extraSettingsPage.AddChild(extraSettingsSideTabs);
                }
            }

            double sideTabBarsMinimumWidth = 0;

            foreach (TabBar tabBar in sideTabBarsListForLayout)
            {
                sideTabBarsMinimumWidth = Math.Max(sideTabBarsMinimumWidth, tabBar.Width);
            }
            foreach (TabBar tabBar in sideTabBarsListForLayout)
            {
                tabBar.MinimumSize = new Vector2(sideTabBarsMinimumWidth, tabBar.MinimumSize.y);
            }

            // space before checkboxes (hold the right aligned)
            {
                GuiWidget hSpacer = new GuiWidget();
                hSpacer.HAnchor = HAnchor.ParentLeftRight;

                categoryTabs.TabBar.AddChild(hSpacer);
            }

            // add in the ability to turn on and off all details settings
            {
                showAllDetails.TextColor            = RGBA_Bytes.White;
                showAllDetails.Margin               = new BorderDouble(right: 8);
                showAllDetails.VAnchor              = VAnchor.ParentCenter;
                showAllDetails.Cursor               = Cursors.Hand;
                showAllDetails.CheckedStateChanged += new CheckBox.CheckedStateChangedEventHandler(RebuildSlicerSettings);

                categoryTabs.TabBar.AddChild(showAllDetails);
            }

            // add in the ability to turn on and off help text
            {
                showHelpBox.TextColor            = RGBA_Bytes.White;
                showHelpBox.Margin               = new BorderDouble(right: 3);
                showHelpBox.VAnchor              = VAnchor.ParentCenter;
                showHelpBox.Cursor               = Cursors.Hand;
                showHelpBox.CheckedStateChanged += new CheckBox.CheckedStateChangedEventHandler(RebuildSlicerSettings);

                categoryTabs.TabBar.AddChild(showHelpBox);
            }

            pageTopToBottomLayout.AddChild(categoryTabs);
            AddHandlers();
            SetVisibleControls();

            if (!categoryTabs.SelectTab(uiState.selectedCategory.name))
            {
                categoryTabs.SelectTab(uiState.selectedCategory.index);
            }
        }
Пример #11
0
        private TabControl CreateSideTabsAndPages(int minSettingNameWidth, OrganizerCategory category, UiState uiState)
        {
            TabControl groupTabs = new TabControl(Orientation.Vertical);

            groupTabs.Margin             = new BorderDouble(0, 0, 0, 5);
            groupTabs.TabBar.BorderColor = RGBA_Bytes.White;
            foreach (OrganizerGroup group in category.GroupsList)
            {
                tabIndexForItem = 0;
                string              groupTabLbl    = new LocalizedString(group.Name).Translated;
                TabPage             groupTabPage   = new TabPage(groupTabLbl);
                SimpleTextTabWidget groupTabWidget = new SimpleTextTabWidget(groupTabPage, 14,
                                                                             ActiveTheme.Instance.TabLabelSelected, new RGBA_Bytes(), ActiveTheme.Instance.TabLabelUnselected, new RGBA_Bytes());

                FlowLayoutWidget subGroupLayoutTopToBottom = new FlowLayoutWidget(FlowDirection.TopToBottom);
                subGroupLayoutTopToBottom.AnchorAll();

                bool needToAddSubGroup = false;
                foreach (OrganizerSubGroup subGroup in group.SubGroupsList)
                {
                    bool             addedSettingToSubGroup = false;
                    FlowLayoutWidget topToBottomSettings    = new FlowLayoutWidget(FlowDirection.TopToBottom);
                    topToBottomSettings.HAnchor = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;

                    foreach (OrganizerSettingsData settingInfo in subGroup.SettingDataList)
                    {
                        if (PrinterCommunication.Instance.ActiveSliceEngine == PrinterCommunication.SlicingEngine.Slic3r ||
                            CuraEngineMappings.MapContains(settingInfo.SlicerConfigName))
                        {
                            addedSettingToSubGroup = true;
                            GuiWidget controlsForThisSetting = CreateSettingInfoUIControls(settingInfo, minSettingNameWidth);
                            topToBottomSettings.AddChild(controlsForThisSetting);

                            if (showHelpBox.Checked)
                            {
                                AddInHelpText(topToBottomSettings, settingInfo);
                            }
                        }
                    }

                    if (addedSettingToSubGroup)
                    {
                        needToAddSubGroup = true;
                        string   groupBoxLbl = new LocalizedString(subGroup.Name).Translated;
                        GroupBox groupBox    = new GroupBox(groupBoxLbl);
                        groupBox.TextColor   = ActiveTheme.Instance.PrimaryTextColor;
                        groupBox.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
                        groupBox.AddChild(topToBottomSettings);

                        groupBox.HAnchor = Agg.UI.HAnchor.Max_FitToChildren_ParentWidth;

                        subGroupLayoutTopToBottom.AddChild(groupBox);
                    }
                }

                if (needToAddSubGroup)
                {
                    ScrollableWidget scrollOnGroupTab = new ScrollableWidget(true);
                    scrollOnGroupTab.AnchorAll();
                    subGroupLayoutTopToBottom.HAnchor = HAnchor.Max_FitToChildren_ParentWidth;
                    subGroupLayoutTopToBottom.VAnchor = VAnchor.FitToChildren;
                    //subGroupLayoutTopToBottom.DebugShowBounds = true;
                    //scrollOnGroupTab.DebugShowBounds = true;
                    scrollOnGroupTab.AddChild(subGroupLayoutTopToBottom);
                    groupTabPage.AddChild(scrollOnGroupTab);
                    groupTabs.AddTab(groupTabWidget);
                }
            }

            if (!groupTabs.SelectTab(uiState.selectedGroup.name))
            {
                groupTabs.SelectTab(uiState.selectedGroup.index);
            }
            return(groupTabs);
        }
    public void Change(UiState state)
    {
        NetworkCanvas.gameObject.SetActive(true);
        NetworkCanvas.enabled = false;
        GameCanvas.gameObject.SetActive(true);
        GameCanvas.enabled = false;
        RoleCanvas.gameObject.SetActive(true);
        RoleCanvas.enabled = false;
        QuestCanvas.gameObject.SetActive(true);
        QuestCanvas.enabled = false;
        ResultCanvas.gameObject.SetActive(true);
        ResultCanvas.enabled = false;
        PlacementCanvas.gameObject.SetActive(true);
        PlacementCanvas.enabled = false;
        ProjectCanvas.gameObject.SetActive(true);
        ProjectCanvas.enabled = false;
        LevelCanvas.enabled   = false;
        LevelCanvas.gameObject.SetActive(true);
        MenuButton.gameObject.SetActive(true);
        MenuButton.enabled = true;
        ProjectButton.gameObject.SetActive(false);
        ProjectButton.enabled = false;
        GlobalStateCanvas.gameObject.SetActive(true);
        GlobalStateCanvas.enabled = false;
        GlobalStateButton.gameObject.SetActive(false);
        GlobalStateButton.enabled = false;
        GameEndCanvas.gameObject.SetActive(false);
        GameEndCanvas.enabled = false;
        PlayerVariables.SetActive(true);
        CurrentState = state;
        switch (CurrentState)
        {
        case UiState.Network:
            NetworkCanvas.enabled = true;
            PlayerVariables.SetActive(false);
            if (NetMng.Instance.isNetworkActive)
            {
                LocalManager.Instance.NetworkCommunicator.SetPlayerState("Network");
            }

            break;

        case UiState.Role:
            RoleCanvas.enabled = true;
            PlayerVariables.SetActive(false);
            MenuButton.gameObject.SetActive(false);
            if (NetMng.Instance.isNetworkActive)
            {
                LocalManager.Instance.NetworkCommunicator.SetPlayerState("Role");
            }
            break;

        case UiState.Game:
            GameCanvas.enabled    = true;
            ProjectButton.enabled = true;
            ProjectButton.gameObject.SetActive(true);
            GlobalStateButton.gameObject.SetActive(true);
            GlobalStateButton.enabled = true;
            LocalManager.Instance.NetworkCommunicator.SetPlayerState("Game");
            break;

        case UiState.Level:
            LevelCanvas.enabled = true;
            break;

        case UiState.Projects:
            ProjectCanvas.enabled = true;
            ProjectButton.enabled = true;
            ProjectButton.gameObject.SetActive(true);
            break;

        case UiState.Placement:
            PlacementCanvas.enabled = true;
            break;

        case UiState.Quest:
            LocalManager.Instance.NetworkCommunicator.SetPlayerState("Quest");
            QuestCanvas.enabled = true;
            break;

        case UiState.Result:
            ResultCanvas.enabled = true;
            break;

        case UiState.GlobalState:
            GlobalStateCanvas.enabled = true;
            GlobalStateButton.gameObject.SetActive(true);
            GlobalStateButton.enabled = true;
            break;

        case UiState.GameEnd:
            PlayerVariables.gameObject.SetActive(false);
            GameEndCanvas.gameObject.SetActive(true);
            GameEndCanvas.enabled = true;
            break;
        }
    }
Пример #13
0
 public override Point[] GetDataHull(TItem item, UiState uiState, int delta, bool extend)
 {
     return(this.GetDataHull(item, GetStyle(item, uiState), null, delta, extend));
 }
Пример #14
0
        public SketchImageViewModel(DisplayOptions displayOptions, SessionData sessionData, UiState uiState)
            : this()
        {
            this.displayOptions = displayOptions;
            this.sessionData    = sessionData;
            this.uiState        = uiState;

            SetupDisplayOptionsSync();
            SetupSessionDataSync();
        }
Пример #15
0
        private void InitializeArdsEvent()
        {
            try
            {
                ardsHandler.OnStatusUpdatedMessage += (s) =>
                {
                    try
                    {
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnStatusUpdatedMessage", exception, Logger.LogLevel.Error);
                    }
                };



                #region Breake

                ardsHandler.OnSendResourceChangeBreakCompleted += (s) =>
                {
                    try
                    {
                        AgentCurrentState = new AgentBreak();
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendResourceChangeBreakCompleted", exception, Logger.LogLevel.Error);
                    }
                };


                ardsHandler.OnSendStatusChangeRequestBreakCompleted += (s) =>
                {
                    try
                    {
                        if (s.Command == WorkflowResultCode.ACDS301 || s.Command == WorkflowResultCode.ACDS4032)
                        {
                            AgentCurrentState = new AgentBreak();
                            ardsHandler.ResourceStatusChangeBreak(Auth, CallSessionId);
                        }
                        UiState.ShowNotifications(s);
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendStatusChangeRequestBreakCompleted", exception, Logger.LogLevel.Error);
                    }
                };

                ardsHandler.OnCancelBreakRequestCompleted += (s) =>
                {
                    try
                    {
                        UiState.CancelBreakRequest(s);
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnCancelBreakRequestCompleted", exception, Logger.LogLevel.Error);
                    }
                };

                #endregion Breake

                #region Reregistor

                ardsHandler.OnResourceRegistrationCompleted += (s) =>
                {
                    Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnResourceRegistrationCompleted", Logger.LogLevel.Debug);
                };

                #endregion Reregistor



                #region StatusChangeRequestIdel

                ardsHandler.OnSendStatusChangeRequestIdelCompleted += (s) =>
                {
                    try
                    {
                        switch (s.Command)
                        {
                        case WorkflowResultCode.ACDS4033:
                        {
                            ardsHandler.ResourceModeChange(Auth, CallSessionId);
                        }
                        break;

                        case WorkflowResultCode.ACDS403:
                        {
                            UiState.InAgentIdleState(_agentPvState);
                        }
                        break;

                        case WorkflowResultCode.ACDS301:
                        case WorkflowResultCode.ACDS4032:
                        {
                            AgentCurrentState = new AgentBreak();
                            ardsHandler.ResourceStatusChangeBreak(Auth, CallSessionId);
                        }
                        break;
                        }
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendStatusChangeRequestIdelCompleted", exception, Logger.LogLevel.Error);
                    }
                };

                #endregion StatusChangeRequestIdel

                #region Mode

                ardsHandler.OnSendModeChangeRequestOutboundCompleted += (s) =>
                {
                    if (s.Command == WorkflowResultCode.ACDS501)
                    {
                        ardsHandler.ResourceModeChange(Auth, CallSessionId);
                    }
                    else
                    {
                        UiState.OnSendModeChangeRequestOutbound(s);
                    }
                };

                ardsHandler.OnSendModeChangeRequestInboundCompleted += (s) =>
                {
                    if (s.Command == WorkflowResultCode.ACDS501)
                    {
                        ardsHandler.ResourceModeChange(Auth, CallSessionId);
                    }
                    else
                    {
                        UiState.OnSendModeChangeRequestInbound(s);
                    }
                };

                ardsHandler.OnResourceModeChanged += (r) =>
                {
                    try
                    {
                        AgentMode = AgentReqMode;
                    }
                    catch (Exception exception)
                    {
                        Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnResourceModeChanged", exception, Logger.LogLevel.Error);
                    }
                };
                #endregion
            }
            catch (Exception exception)
            {
                Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "InitializeArdsEvent", exception, Logger.LogLevel.Error);
            }
        }