static void Main(string[] args)
        {
            var lst = new List <Td>();
            var p   = new Panel();

            p.Tr = new List <tr>();
            var tr = new tr();

            p.Tr.Add(tr);
            tr.td = new List <Td>();
            tr.td.Add(new Td()
            {
                Element = "Val1"
            });
            tr.td.Add(new Td()
            {
                Element = "Val2"
            });
            var          xmlRel = SerializeObject(p);
            FileStream   fs     = new FileStream("ser.xml", FileMode.Create);
            StreamWriter sw     = new StreamWriter(fs);

            sw.Write(xmlRel);
            sw.Close();
            fs.Close();
        }
        public Worker AddWorker()
        {
            var TSettings = new ScheduleController.ToggleButtonSettings
                                {
                                    States = this.WorkerStates,


                                };

            var row = new tr();

            this.Body.insertBefore(row, this.ActualPercentageRow);

            var NameColumn = row.AddColumn();

            NameColumn.style.padding = "2px";

            var w = new ScheduleController.Worker
                {
                    Row = row,
                    NameInput = new input(HTMLInputTypeEnum.text).AttachTo(NameColumn),
                    SettingsForDays = TSettings
                }.AddTo(this.Workers);

            // disable planning on a nameless worker
            TSettings.IsEnabled = () => !w.Name.IsNullOrEmpty();

            w.Disposing += () => this.Workers.Remove(w);


            w.Days = this.days.AsRange().Select(
                i =>
                {
                    var c5 = row.AddColumn();

                    this.ApplyStyle(c5, this.date.GetDayWithinMonth(i + 1));

                    return new ScheduleController.ToggleButton
                    {
                        Settings = TSettings,
                        Control = c5,
                        Changed = () => this.UpdateActualPercentage(i)
                    }.Attach();
                }
            ).ToArray();

            w.CountColumn = row.AddColumn();

            w.CountColumn.style.padding = "2px";

            TSettings.Changed = delegate
            {
                if (w.Name.IsNullOrEmpty())
                {
                    w.CountColumn.innerText = "";

                    return;
                }

                var total = w.Days.Sum(i => i.Value.Hours);//.GetFractString();

                // compiler bug: cannot chain this call?
                var total_str = total.GetFractString();

                w.CountColumn.innerText = total_str;
            };

            TSettings.Changed();

            w.NameInput.onchange +=
                delegate
                {
                    if (WorkersChanged != null)
                        WorkersChanged();
                };

            w.NameInput.WhenNoLongerEmpty(
                delegate
                {
                    AddWorker();
                    this.UpdateActualPercentages();
                    w.SettingsForDays.Changed();
                });

            // compiler bug: cannot take implicit delegate from a type with Script(HasNoPrototype=true)
            // compiler bug: will loose parameters if statement is complex - workaround: use locals

            Func<ScheduleController.Worker, bool> IsNamelessWorker = i => i.NameInput.value.IsNullOrEmpty();

            w.NameInput.WhenNoLongerNeeded(() => this.Workers.Count(IsNamelessWorker) > 1,
                delegate
                {
                    w.Dispose();
                    this.UpdateActualPercentages();
                });

            return w;
        }
Example #3
0
 new HashSet<LTSState>(lts.Transitions.Where(tr => X.Contains(tr.Right)).Select(tr => tr.Left))
Example #4
0
 curState = curState.Push(new ConstantValue(tr, op((T)cVal1.Value, (T2)cVal2.Value))).PushIf(dubWidth);
Example #5
0
 : dsl is BankingFree <A> .Transfer tr?Transfer(tr, bank)
     : dsl is BankingFree <A> .Withdraw wd?Withdraw(wd, bank)