예제 #1
0
        public static UICheckBox AddSavedToggle(this UIHelperBase helper, string label, SavedBool savedBool)
        {
            return(helper.AddCheckbox(label, savedBool, delegate(bool value) {
                savedBool.value = value;
                Log.Debug($"option {label} is set to " + value);
                RoadEditorUtils.RefreshRoadEditor();
            }) as UICheckBox);

            Log.Debug($"option {label} is set to " + savedBool.value);
        }
예제 #2
0
        public static void OnRefreshARMode()
        {
            ARMode.value = !VanillaModeToggle.isChecked;
            Log.Debug($"Vanilla Mode toggle =  {VanillaModeToggle.isChecked}. ARMode = {ARMode.value}");

            if (Helpers.InStartupMenu)
            {
                return;
            }
            NetInfoExtionsion.Ensure_EditedNetInfos();
            RoadEditorUtils.RefreshRoadEditor();
        }
예제 #3
0
        public static void OnSettingsUI(UIHelperBase helper)
        {
            var general = helper.AddGroup("General") as UIHelper;

            var keymappingsPanel = general.AddKeymappingsPanel();

            keymappingsPanel.AddKeymapping("Hotkey", Hotkey);

            VanillaModeToggle = general.AddCheckbox("Vanilla mode", !ARMode, delegate(bool vanillaMode) {
                if (ARMode == !vanillaMode) // happens after rejecting confirmation message
                {
                    return;                 // no change is necessary
                }
                if (vanillaMode)
                {
                    OnConfimRemoveARdata(); // set to vanilla mode
                }
                else
                {
                    OnRefreshARMode(); // set to ARMode
                }
            }) as UICheckBox;

            var btn = general.AddCheckbox("Left Hand Traffic", NetUtil.LHT, RoadUtils.SetDirection) as UICheckBox;

            btn.eventVisibilityChanged += (_, __) => btn.isChecked = NetUtil.LHT;


            var dd = general.AddDropdown(
                "prefered speed unit",
                Enum.GetNames(typeof(SpeedUnitType)),
                0, // kph
                sel => {
                var value       = GetEnumValues <SpeedUnitType>()[sel];
                SpeedUnit.value = (int)value;
                Log.Debug("option 'prefered speed unit' is set to " + value);
                RoadEditorUtils.RefreshRoadEditor();
            });

            general.AddSavedToggle("hide irrelevant flags", HideIrrelavant);
            general.AddSavedToggle("hide floating hint box", HideHints);
            general.AddSavedToggle("Set default scale to 100", DefaultScale100);

            //var export = helper.AddGroup("import/export:");
            //export.AddButton("export edited road", null);
            //export.AddButton("import to edited road", null);

            var extensions = helper.AddGroup("UI components visible in asset editor:");
            var segment    = extensions.AddGroup("Segment");

            segment.AddSavedToggle("Node flags", Segment_Node);
            segment.AddSavedToggle("Segment End flags", Segment_SegmentEnd);

            var node = extensions.AddGroup("Node");

            node.AddSavedToggle("Segment and Segment-extension flags", Node_Segment);

            var laneProp = extensions.AddGroup("Lane prop");

            laneProp.AddSavedToggle("Segment and Segment-extension flags", Lane_Segment);
            //laneProp.AddSavedToggle("Node flags", Lane_Node);
            laneProp.AddSavedToggle("Segment End flags", Lane_SegmentEnd);
        }