예제 #1
0
파일: OptionsUI.cs 프로젝트: via5/Synergy
        public OptionsUI(int flags = 0)
        {
            collapsible_ = new Collapsible("Options and presets", null, flags);


            resetValuesOnFreeze_ = new Checkbox(
                "Reset positions on freeze", options_.ResetValuesOnFreeze,
                ResetValuesOnFreezeChanged, flags);

            resetCountersOnThaw_ = new Checkbox(
                "Reset counters on thaw", options_.ResetCountersOnThaw,
                ResetCountersOnThaw, flags);

            pickAnimatable_ = new Checkbox(
                "Pick animatable", PickAnimatableChanged, flags);

            manageAnimatable_ = new Button(
                "Manage animatables", ManageAnimatables, flags);

            overlapTime_ = new FloatSlider(
                "Global overlap time", options_.OverlapTime,
                new FloatRange(0, 1), OverlapTimeChanged, flags);

            logLevel_ = new StringList(
                "Log level", Options.LogLevelToString(options_.LogLevel),
                Options.GetLogLevelNames(), LogLevelChanged, flags);

            logOverlap_ = new Checkbox(
                "Log overlap", LogOverlapChanged, flags);

            usePlaceholder_ = new Checkbox(
                "Save: use placeholder for atoms", null, flags);

            collapsible_.Add(resetValuesOnFreeze_);
            collapsible_.Add(resetCountersOnThaw_);
            collapsible_.Add(pickAnimatable_);
            collapsible_.Add(manageAnimatable_);
            collapsible_.Add(overlapTime_);
            collapsible_.Add(logLevel_);
            collapsible_.Add(logOverlap_);
            collapsible_.Add(new SmallSpacer(flags));

            collapsible_.Add(usePlaceholder_);

            collapsible_.Add(new Button(
                                 "Full: save", SaveFull, flags));

            collapsible_.Add(new Button(
                                 "Full: load, replace everything",
                                 () => { LoadFull(Utilities.PresetReplace); },
                                 flags));

            collapsible_.Add(new Button(
                                 "Full: load, append steps",
                                 () => { LoadFull(Utilities.PresetAppend); },
                                 flags));

            collapsible_.Add(new SmallSpacer(flags));


            collapsible_.Add(new Button(
                                 "Step: save current", SaveStep, flags));

            collapsible_.Add(new Button(
                                 "Step: load, replace current",
                                 () => { LoadStep(Utilities.PresetReplace); },
                                 flags));

            collapsible_.Add(new Button(
                                 "Step: load, add modifiers to current step",
                                 () => { LoadStep(Utilities.PresetMerge); },
                                 flags));

            collapsible_.Add(new Button(
                                 "Step: load, append as new step",
                                 () => { LoadStep(Utilities.PresetAppend); },
                                 flags));

            collapsible_.Add(new SmallSpacer(flags));


            collapsible_.Add(new Button(
                                 "Modifier: save current", SaveModifier, flags));

            collapsible_.Add(new Button(
                                 "Modifier: load, replace current",
                                 () => { LoadModifier(Utilities.PresetReplace); },
                                 flags));

            collapsible_.Add(new Button(
                                 "Modifier: load, append to current step",
                                 () => { LoadModifier(Utilities.PresetAppend); },
                                 flags));


            collapsible_.Add(new SmallSpacer(flags));
        }