コード例 #1
0
        public override void OnApplyTemplate()
        {
            this.Width  = DEFAULT_PAPER_WIDTH;
            this.Height = DEFAULT_PAPER_HEIGHT;

            loadTimer       = new DispatcherTimer();
            loadTimer.Tick += new EventHandler(MapLoadTimer_Tick);

            PrintMap     = this.GetTemplateChild(_PRINT_MAP) as Map;
            LegendGrid   = this.GetTemplateChild(_LEGEND_GRID) as Grid;
            TitleBlock   = this.GetTemplateChild(_TITLE_BLOCK) as TextBlock;
            LegendPanel  = this.GetTemplateChild(_LEGEND_PANEL) as StackPanel;
            OverviewMap  = this.GetTemplateChild(_OVERVIEW_MAP) as OverviewMap;
            TemplateGrid = this.GetTemplateChild(_TEMPLATE_GRID) as Grid;

            if (PrintMap != null)
            {
                this.CloneMap();
            }

            if (LegendPanel != null)
            {
                this.CreateLegend();
            }

            if (OverviewMap != null && OverviewMapLayer != null)
            {
                this.OverviewMap.Layer = OverviewMapLayer.Clone();
            }
        }
コード例 #2
0
ファイル: File_TDB.cs プロジェクト: FSofTlpz/GarminCore
        /// <summary>
        /// lese die Daten aus einer TDB-Datei ein
        /// </summary>
        /// <param name="br"></param>
        public void Read(BinaryReaderWriter br)
        {
            BlockHeader blh = new BlockHeader();

            Tilemap.Clear();
            BlockHeaderTypList.Clear();

            br.Seek(0);
            blh.Read(br);
            if (blh.ID != BlockHeader.Typ.Header)
            {
                throw new Exception("Keine TDB-Datei.");
            }
            Head = new Header(blh);
            Head.ReadData(br);
            BlockHeaderTypList.Add(blh.ID);
            BlockLength.Add(blh.Length);

            do
            {
                blh.Read(br);
                BlockHeaderTypList.Add(blh.ID);
                BlockLength.Add(blh.Length);
                switch (blh.ID)
                {
                case BlockHeader.Typ.Copyright:
                    Copyright = new SegmentedCopyright(new BlockHeader(blh));
                    Copyright.ReadData(br);
                    break;

                case BlockHeader.Typ.Overviewmap:
                    Overviewmap = new OverviewMap(new BlockHeader(blh));
                    Overviewmap.ReadData(br);
                    break;

                case BlockHeader.Typ.Tilemap:
                    TileMap dm = new TileMap(new BlockHeader(blh));
                    dm.ReadData(br);
                    Tilemap.Add(dm);
                    break;

                case BlockHeader.Typ.Description:
                    Mapdescription = new Description(new BlockHeader(blh));
                    Mapdescription.ReadData(br);
                    break;

                case BlockHeader.Typ.Crc:
                    Crc = new PseudoCRC(new BlockHeader(blh));
                    Crc.ReadData(br);
                    break;

                default:   // unbekannter Block
                    br.Position += blh.Length;
                    break;
                }
            } while (br.Position < br.Length);
        }
コード例 #3
0
ファイル: File_TDB.cs プロジェクト: FSofTlpz/GarminCore
 public File_TDB()
 {
     BlockHeaderTypList = new List <BlockHeader.Typ>();
     BlockLength        = new List <int>();
     Head           = new Header(new BlockHeader(BlockHeader.Typ.Header, 0));
     Copyright      = new SegmentedCopyright(new BlockHeader(BlockHeader.Typ.Copyright, 0));
     Overviewmap    = new OverviewMap(new BlockHeader(BlockHeader.Typ.Overviewmap, 0));
     Tilemap        = new List <TileMap>();
     Crc            = new PseudoCRC(new BlockHeader(BlockHeader.Typ.Crc, 0));
     Mapdescription = new Description(new BlockHeader(BlockHeader.Typ.Description, 0));
 }
コード例 #4
0
    /// <summary>
    /// Handles Page's PreRenderComplete.
    /// </summary>
    protected void Page_PreRenderComplete(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            // add separator between each task in task menu

            Map map = Map1;


            // Remove the overview toggle it overviewmap doesn't exist, and identify if none of the resources support it.
            OverviewMap ov               = Page.FindControl("OverviewMap1") as OverviewMap;
            Magnifier   magnifier        = Page.FindControl("Magnifier1") as Magnifier;
            bool        supportsIdentify = true;
            bool        canMeasure       = true;
            //if (Measure1.MapUnits == MapUnit.Resource_Default)
            //    canMeasure = Measure1.CanGetUnits();
            Toolbar tb = Page.FindControl("Toolbar1") as Toolbar;
            if (tb != null)
            {
                for (int t = tb.ToolbarItems.Count - 1; t >= 0; t--)
                {
                    ToolbarItem item = tb.ToolbarItems[t];
                    if (item.Name == "OverviewMapToggle" && ov == null)
                    {
                        tb.ToolbarItems.Remove(item);
                    }
                    if (item.Name == "MapIdentify" && !supportsIdentify)
                    {
                        tb.ToolbarItems.Remove(item);
                    }
                    if (item.Name == "Measure" && !canMeasure)
                    {
                        tb.ToolbarItems.Remove(item);
                    }
                    if (item.Name == "Magnifier" && magnifier == null)
                    {
                        tb.ToolbarItems.Remove(item);
                    }
                }
            }
        }
    }