public override OutputData DoAction(IInputData input)
        {
            PageStyle style = input.Style.Style;
            KeyData   data  = null;

            if (style == PageStyle.Delete)
            {
                try
                {
                    Prepare();
                    data = DoDeleteAction(input);
                }
                catch (WebPostException ex)
                {
                    return(OutputData.CreateToolkitObject(ex.CreateErrorResult()));
                }
            }
            else
            {
                TkDebug.ThrowToolkitException(string.Format(ObjectUtil.SysCulture,
                                                            "当前支持页面类型为Delete,当前类型是{0}", input.Style), this);
            }

            return(OutputData.CreateToolkitObject(data));
        }
Beispiel #2
0
        public Tk5TableScheme(ITableSchemeEx scheme, IInputData input, ISingleMetaData config,
                              Func <ITableSchemeEx, IFieldInfoEx, IInputData, ISingleMetaData, Tk5FieldInfoEx> createFunc)
            : this()
        {
            TkDebug.AssertArgumentNull(scheme, "scheme", null);
            TkDebug.AssertArgumentNull(input, "input", null);
            TkDebug.AssertArgumentNull(config, "config", null);
            TkDebug.AssertArgumentNull(createFunc, "createFunc", null);

            SetFileDependency(scheme);
            TableName = scheme.TableName;
            TableDesc = scheme.TableDesc;
            NameField = scheme.NameField;

            PageStyle pageStyle = input.Style.Style;
            var       list      = from item in scheme.Fields
                                  where (item.Control.DefaultShow & pageStyle) == pageStyle
                                  select item;

            foreach (var item in list)
            {
                Tk5FieldInfoEx fieldInfo = createFunc(scheme, item, input, config);
                fList.Add(fieldInfo);
            }

            ProcessRefField();
        }
Beispiel #3
0
        public string GetTemplateUrl(IPageStyle style, IPageData pageData)
        {
            if (style == null || pageData == null)
            {
                return(string.Empty);
            }

            var       info        = pageData.SourceInfo;
            string    source      = info.Source;
            PageStyle pageStyle   = style.Style;
            string    styleString = pageStyle.ToString().ToLower(ObjectUtil.SysCulture);

            switch (pageStyle)
            {
            case PageStyle.Custom:
                return($"c/{info.ModuleCreator}/{style}/{source}");

            case PageStyle.Insert:
            case PageStyle.List:
            case PageStyle.Update:
            case PageStyle.Delete:
            case PageStyle.Detail:
                return($"c/{info.ModuleCreator}/{styleString}/{source}");

            default:
                TkDebug.ThrowImpossibleCode(this);
                return(null);
            }
        }
Beispiel #4
0
 /// <summary>
 /// 设置分页样式
 /// </summary>
 /// <param name="pageStyle"></param>
 public void SetPageStyle(PageStyle pageStyle)
 {
     if (pageStyle == PageStyle.Taobao)
     {
         ShowCurrentBeforPage = false;
         FirstPageText        = "1";
         LastPageText         = "{0}";
         FnFormat             = "{1} {0}";
         NlFormat             = "{1} {0}";
         ShowEllipsis         = true;
         IndexCenter          = true;
     }
     else if (pageStyle == PageStyle.Google)
     {
         IndexCenter   = true;
         ShowJump      = false;
         FirstPageText = "";
         LastPageText  = "";
     }
     else if (pageStyle == PageStyle.ABL)
     {
         IndexCenter          = true;
         ShowEllipsis         = true;
         ShowJump             = false;
         ShowCurrentBeforPage = true;
         FirstPageText        = "|«";
         NextPageText         = "»";
         PrevPageText         = "«";
         LastPageText         = "»|";
     }
 }
Beispiel #5
0
        protected override PostPageMaker CreateEditPostPageMaker(PageStyle style)
        {
            var pageMaker = new PostPageMaker(ContentDataType.Json, PageStyle.Custom,
                                              new CustomUrlConfig(false, false, "CloseDialogAndRefresh"));

            return(pageMaker);
        }
Beispiel #6
0
        public void SwitchToStyle(PageStyle newStyle)
        {
            var frame = Window.Current.Content as Frame;

            if (frame?.CurrentSourcePageType == typeof(MainPage))
            {
                if (newStyle == PageStyle.Narrow)
                {
                    if (Vm.SelectedThread != null)
                    {
                        Utils.EnableBackButton(Vm.BackButton_Click);
                        Vm.IsPaneOpen        = false;
                        Vm.CompactPaneLength = 0;
                    }
                    else
                    {
                        Unselect();
                        Vm.IsPaneOpen = true;
                    }
                }
                else if (newStyle == PageStyle.Wide)
                {
                    Utils.DisableBackButton(Vm.BackButton_Click);
                    Vm.IsPaneOpen        = false;
                    Vm.CompactPaneLength = ContactsGrid.Width = 320;
                }
                UpdateStyle(newStyle);
            }
        }
Beispiel #7
0
        private PageStyleClass(PageStyle style)
        {
            TkDebug.AssertArgument(IsNormalStyle(style), "style",
                                   "Style不支持Custom,All和AllNoList", null);

            Style = style;
        }
Beispiel #8
0
        public static void Update(this PageStyle o, PageStyleViewModel model, HttpPostedFileBase imglogo,
                                  HttpPostedFileBase imgbackground, HttpPostedFileBase imgnav, HttpPostedFileBase imgfooter, HttpServerUtilityBase server)
        {
            o.BackgroundColor = model.BackgroundColor;
            o.ForegroundColor = model.ForegroundColor;
            o.NavColor        = model.NavColor;
            o.SheetColor      = model.SheetColor;
            o.Name            = model.Name;

            if (imglogo != null)
            {
                o.Logo = imglogo.AddUploadedImage(server, o.Owner);
            }

            if (imgbackground != null)
            {
                o.BackgroundImage = imgbackground.AddUploadedImage(server, o.Owner);
            }

            if (imgnav != null)
            {
                o.NavImage = imgnav.AddUploadedImage(server, o.Owner);
            }

            if (imgfooter != null)
            {
                o.FooterImage = imgfooter.AddUploadedImage(server, o.Owner);
            }
        }
Beispiel #9
0
        protected override ISource CreateGetSource(PageStyle style, IInputData input)
        {
            switch (style)
            {
            case PageStyle.Insert:
                return(new SingleDbInsertSource(this));

            case PageStyle.Update:
                return(new SingleDbDetailSource(this));

            case PageStyle.Delete:
                return(new SingleDbDeleteSource(this));

            case PageStyle.Detail:
                return(new SingleDbDetailSource(this));

            case PageStyle.List:
                return(new DbListSource(this));

            case PageStyle.Custom:
                if (input.Style.Operation == DbListSource.TAB_STYLE_OPERATION)
                {
                    return(new DbListSource(this));
                }
                break;
            }
            return(null);
        }
        public void Page_ConstructorTest()
        {
            PageStyle target = new PageStyle();

            Assert.IsNotNull(target);
            Assert.AreEqual(StyleKeys.PageItemKey, target.ItemKey);
        }
 private void CreatePageStyleButton(string[] pages, PageStyle pageStyle, bool isData)
 {
     if (pages == null || pages.Length == 0 || pages.Contains(PageStyle.All.ToString()) || pages.Contains(pageStyle.ToString()))
     {
         CreateButton(pageStyle, isData);
     }
 }
Beispiel #12
0
        /// <summary>
        /// Apples the style for a <see cref="Schema.PageType" /> on top of a default style.
        /// </summary>
        /// <param name="styledObject">An object to pull the style values from.</param>
        /// <returns>A <see cref="Style" /> containing the merged style data.</returns>
        private static PageStyle TransformPageStyle(object styledObject)
        {
            if (styledObject == null)
            {
                return(new PageStyle());
            }

            dynamic obj      = styledObject;
            var     newStyle = new PageStyle();

            if (obj.PageMarginBottomSpecified)
            {
                newStyle.PageMarginBottom = obj.PageMarginBottom;
            }
            if (obj.PageMarginLeftSpecified)
            {
                newStyle.PageMarginLeft = obj.PageMarginLeft;
            }
            if (obj.PageMarginRightSpecified)
            {
                newStyle.PageMarginRight = obj.PageMarginRight;
            }
            if (obj.PageMarginTopSpecified)
            {
                newStyle.PageMarginTop = obj.PageMarginTop;
            }

            return(newStyle);
        }
 public void Initialize(PageConfigView pageView, FormConfigView formView, ColumnConfig columnConfig, PageStyle style)
 {
     this.PageView      = pageView;
     this.FormView      = formView;
     this.Config        = columnConfig;
     this.ViewPageStyle = style;
 }
        public ValidatoinResult ValidateParagraph(IList <PageStyle> paragraphStyles)
        {
            ValidatoinResult result = new ValidatoinResult();

            if (paragraphStyles.Count != 0)
            {
                if (paragraphStyles.Count > 1)
                {
                    result     = new ValidatoinResult("More than one page style applied to paragraph, please applay only one style from Frontmatter (DAISY), Bodymatter (DAISY) and Rearmatter (DAISY)");
                    _lastStyle = paragraphStyles[paragraphStyles.Count - 1];
                }

                else
                {
                    PageStyle currentStyle = paragraphStyles[0];
                    switch (_lastStyle)
                    {
                    case PageStyle.Empty:
                        if (currentStyle == PageStyle.Rearmatter)
                        {
                            result = new ValidatoinResult("Rearmatter (Daisy) can be applied only after Bodymetter (DAISY) style");
                        }
                        break;

                    case PageStyle.Frontmatter:
                        if (currentStyle == PageStyle.Frontmatter)
                        {
                            result = new ValidatoinResult("Frontmatter (DAISY) style should be applied only one time");
                        }
                        else if (currentStyle == PageStyle.Rearmatter)
                        {
                            result = new ValidatoinResult("Rearmatter (DAISY) style can be applied only after Bodymatter (DAISY) style");
                        }
                        break;

                    case PageStyle.Bodymatter:
                        if (currentStyle == PageStyle.Frontmatter)
                        {
                            result = new ValidatoinResult("Frontmatter (DAISY) style can not be applied after Bodymatter (DAISY) style");
                        }
                        else if (currentStyle == PageStyle.Bodymatter)
                        {
                            result = new ValidatoinResult("Bodymatter (DAISY) style should be applied only one time");
                        }
                        break;

                    case PageStyle.Rearmatter:
                        result = new ValidatoinResult("Frontmatter (DAISY), Bodymatter (DAISY) and Rearmatter (DAISY) styles can not be applied after Rearmatter (DAISY) style");
                        break;

                    default:
                        throw new ArgumentOutOfRangeException();
                    }
                    _lastStyle = currentStyle;
                }
            }

            return(result);
        }
Beispiel #15
0
        public override void SetPageData(ISource source, IInputData input, OutputData outputData, object pageData)
        {
            PageStyle style = input.Style.Style;

            if (style == PageStyle.Insert || style == PageStyle.Update)
            {
                InternalRazorUtil.SetDialogMode(pageData, true);
            }
        }
 public static bool IsSupportPage(string supportPage, PageStyle pagestyle)
 {
     if (!supportPage.IsEmpty() && supportPage != "All")
     {
         var pages = supportPage.Split('|').ToList();
         return(pages.Contains(pagestyle.ToString()));
     }
     return(true);
 }
Beispiel #17
0
 public Website(int id, string title, string url, PageStyle pageStyle, DateTime lastChecked, UpdatePeriod updatePeriod, int expectedDay = 1, DayOfWeek expectedDayOfWeek = DayOfWeek.Monday)
 {
     ID                = id;
     Title             = title;
     Url               = url;
     PageStyle         = pageStyle;
     LastChecked       = lastChecked;
     UpdatePeriod      = updatePeriod;
     ExpectedDay       = expectedDay;
     ExpectedDayOfWeek = expectedDayOfWeek;
 }
Beispiel #18
0
        /// <summary>
        /// Initializes a new instance of the ResolverConfig class.
        /// </summary>
        public ResolverConfig(TableResolver resolver, PageStyle style, UpdateKind kind,
                              UpdateMode mode, bool disposeResolver)
        {
            TkDebug.AssertArgumentNull(resolver, "resolver", this);

            Resolver            = resolver;
            resolver.UpdateMode = mode;
            Kind             = kind;
            Mode             = mode;
            Style            = style;
            fDisposeResolver = disposeResolver;
        }
Beispiel #19
0
        protected override ISource CreatePostSource(PageStyle style, IInputData input)
        {
            switch (style)
            {
            case PageStyle.Insert:
            case PageStyle.Update:
                return(new SingleDbEditSource(this));

            case PageStyle.List:
                return(new DbListSource(this));
            }
            return(null);
        }
Beispiel #20
0
        public SimpleFieldControl(IFieldControl control, IPageStyle style)
        {
            fStyle     = style.Style;
            Order      = control.GetOrder(style);
            SrcControl = control.GetControl(style);
            var customCtrl = control.GetCustomControl(style);

            if (customCtrl != null)
            {
                CustomControl     = customCtrl.Item1;
                CustomControlData = customCtrl.Item2;
            }
        }
Beispiel #21
0
        private static bool IsShow(IFieldInfoEx field, PageStyle pageStyle,
                                   RegNameList <OverrideFieldConfig> overrideFields)
        {
            bool result = (field.Control.DefaultShow & pageStyle) == pageStyle;

            if (!result)
            {
                if (overrideFields != null)
                {
                    result = overrideFields.ConstainsKey(field.NickName);
                }
            }
            return(result);
        }
Beispiel #22
0
        private static bool IsNormalStyle(PageStyle style)
        {
            switch (style)
            {
            case PageStyle.Insert:
            case PageStyle.Update:
            case PageStyle.Delete:
            case PageStyle.Detail:
            case PageStyle.List:
                return(true);

            default:
                return(false);
            }
        }
Beispiel #23
0
 public static void Update(this Shop shop, ShopViewModel model, PageStyle style, PageLayout layout)
 {
     shop.Address = model.Address;
     shop.Email   = model.Email;
     shop.Name    = model.Name;
     shop.Phone   = model.Phone;
     if (style != null)
     {
         shop.PageStyle = style;
     }
     if (layout != null)
     {
         shop.PageLayout = layout;
     }
 }
Beispiel #24
0
        public static bool GetReadOnly(PageStyle style)
        {
            switch (style)
            {
            case PageStyle.Insert:
            case PageStyle.Update:
                return(false);

            case PageStyle.List:
            case PageStyle.Detail:
                return(true);

            default:
                return(true);
            }
        }
Beispiel #25
0
 private void UpdateStyle(PageStyle currentStyle)
 {
     if (currentStyle == PageStyle.Narrow)
     {
         // TODO: When phone is in landscape mode this is incorrect and some stuff gets cut off, we need to
         // get the actual useable width (actualwidth - top icon bar - bottom control bar)
         ContactsGrid.Width = ActualWidth;
         if (Vm.SelectedThread == null)
         {
             MainPanel.OpenPaneLength = ActualWidth;
         }
     }
     else if (currentStyle == PageStyle.Wide)
     {
         MainPanel.CompactPaneLength = MainPanel.OpenPaneLength = ContactsGrid.Width = 320;
     }
 }
Beispiel #26
0
        public override OutputData DoAction(IInputData input)
        {
            PageStyle style = input.Style.Style;

            if (style == PageStyle.Insert)
            {
                DoInsertAction(input);
                input.CallerInfo.AddInfo(DataSet);
            }
            else
            {
                TkDebug.ThrowToolkitException(string.Format(ObjectUtil.SysCulture,
                                                            "当前支持页面类型为Insert,当前类型是{0}", input.Style), this);
            }

            return(OutputData.Create(DataSet));
        }
        public void Page_PaperSizeTest()
        {
            PageStyle target   = new PageStyle();
            PaperSize expected = PaperSize.A4;

            Assert.AreEqual(expected, target.PaperSize);

            expected         = PaperSize.C0;
            target.PaperSize = expected;
            Assert.AreEqual(expected, target.PaperSize);

            expected         = PaperSize.Tabloid;
            target.PaperSize = expected;
            Assert.AreEqual(expected, target.PaperSize);

            expected = PaperSize.A4;
            target.RemovePaperSize();
            Assert.AreEqual(expected, target.PaperSize);
        }
Beispiel #28
0
        internal Tk5TableScheme(ITableSchemeEx scheme, IInputData input, BaseSingleMetaDataConfig config,
                                Func <ITableSchemeEx, IFieldInfoEx, IInputData, BaseSingleMetaDataConfig, Tk5FieldInfoEx> createFunc)
            : this()
        {
            SetFileDependency(scheme);
            if (!string.IsNullOrEmpty(config.TableName))
            {
                TableName = config.TableName;
            }
            else
            {
                TableName = scheme.TableName;
            }
            if (config.TableDesc != null)
            {
                TableDesc = config.TableDesc.ToString();
            }
            else
            {
                TableDesc = scheme.TableDesc;
            }
            NameField = scheme.NameField;

            PageStyle pageStyle = input.Style.Style;
            var       list      = from item in scheme.Fields
                                  where IsShow(item, pageStyle, config.OverrideFields)
                                  select item;

            foreach (var item in list)
            {
                Tk5FieldInfoEx fieldInfo = createFunc(scheme, item, input, config);
                fList.Add(fieldInfo);
            }

            // 删除主Schema中的字段
            DelFields(config.DelFields);
            // 重载主Schema中的字段
            OverrideFields(input, config.OverrideFields);
            // 添加虚拟字段到主Schema中
            AddFields(input, config.AddFields);

            ProcessRefField();
        }
        protected override ISource CreateGetSource(PageStyle style, IInputData input)
        {
            switch (style)
            {
            case PageStyle.Insert:
                return(new MultipleDbInsertSource(this));

            case PageStyle.Update:
                return(new MultipleDbDetailSource(this)
                {
                    FillDetailData = true
                });

            case PageStyle.Delete:
                return(new MultipleDbDeleteSource(this));

            case PageStyle.Detail:
                return(new MultipleDbDetailSource(this)
                {
                    FillDetailData = FillDetailData
                });

            case PageStyle.List:
                return(new DbListSource(this));

            case PageStyle.Custom:
                if (input.Style.Operation == DbListSource.TAB_STYLE_OPERATION)
                {
                    return(new DbListSource(this));
                }
                if (MetaDataUtil.StartsWith(input.Style, "DetailList"))
                {
                    int index = input.QueryString["Index"].Value <int>(0);
                    if (index < ChildTables.Count)
                    {
                        var child = ChildTables[index];
                        return(new DbDetailListSource(this, Resolver, child));
                    }
                }
                break;
            }
            return(null);
        }
        public void Page_PaperOrientationTest()
        {
            PageStyle        target   = new PageStyle();
            PaperOrientation expected = PaperOrientation.Portrait;

            Assert.AreEqual(expected, target.PaperOrientation);

            expected = PaperOrientation.Landscape;
            target.PaperOrientation = expected;
            Assert.AreEqual(expected, target.PaperOrientation);

            expected = PaperOrientation.Portrait;
            target.PaperOrientation = expected;
            Assert.AreEqual(expected, target.PaperOrientation);

            expected = PaperOrientation.Portrait;
            target.RemovePaperOrientation();
            Assert.AreEqual(expected, target.PaperOrientation);
        }