示例#1
0
        private void menuCtxDelete_Click(object sender, RoutedEventArgs e)
        {
            object item = listImportedFile.SelectedItem;

            if (item != null)
            {
                string name = string.Empty;
                if (item is CadFile)
                {
                    name = ((CadFile)item).FileName;
                }
                else if (item is GerberFile)
                {
                    name = ((GerberFile)item).FileName;
                }
                var r = MessageBox.Show(string.Format("Are you want to delete {0} file?", name), "Question", MessageBoxButton.YesNoCancel, MessageBoxImage.Question);
                if (r == MessageBoxResult.Yes)
                {
                    if (item is CadFile)
                    {
                        CadFile cad = ((CadFile)item);
                        mModel.Cad.Remove(cad);
                        ShowAllLayerImb(ActionMode.Draw_Cad);
                    }
                    else if (item is GerberFile)
                    {
                        GerberFile gerber = ((GerberFile)item);
                        mModel.Gerber.Dispose();
                        mModel.Gerber = null;
                        ShowAllLayerImb(ActionMode.Render);
                    }
                    UpdateListImportedFile();
                }
            }
        }
示例#2
0
        private void SetPadName(System.Drawing.Rectangle Rect)
        {
            List <Tuple <CadFile, int> > suggets = mModel.GetSuggestCadItemName(Rect);
            int id = -1;

            if (suggets.Count > 0)
            {
                SuggestLinkPadWindow avaiWD = new SuggestLinkPadWindow(suggets);
                avaiWD.ShowDialog();
                id = avaiWD.ItemSelected;
            }
            if (id > -1)
            {
                List <PadItem> pads = mModel.GetPadsInRect(Rect, Linked: false);
                foreach (var item in pads)
                {
                    CadFile cadFile   = suggets[id].Item1;
                    int     idCadItem = suggets[id].Item2;
                    CadItem cadItem   = cadFile.CadItems[idCadItem];
                    PadItem pad       = item;
                    int     idPadItem = mModel.Gerber.PadItems.IndexOf(pad);
                    pad.CadFileID    = cadFile.CadFileID;
                    pad.CadItemIndex = idCadItem;
                    cadItem.PadsIndex.Add(idPadItem);
                }
                ShowAllLayerImb(ActionMode.Update_Color_Gerber);
            }
        }
示例#3
0
        private void menuCtxCopy_Click(object sender, RoutedEventArgs e)
        {
            object item = listImportedFile.SelectedItem;

            if (item != null)
            {
                if (item is GerberFile)
                {
                    MessageBox.Show(string.Format("Only support Cad file!"), "Question", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                CadFile cad = ((CadFile)item).Copy();
                mModel.Cad.Add(cad);
                ShowAllLayerImb(ActionMode.Draw_Cad);
                UpdateListImportedFile();
            }
        }
        private void button_Click(object sender, RoutedEventArgs e)
        {
            GerberFile gerber = mGerbers[cbGerber.SelectedIndex];
            CadFile    cad    = mCads[cbCad.SelectedIndex];;

            System.Drawing.Point cGerber = gerber.GetCenterPadsSelected();
            System.Drawing.Point cCad    = cad.GetCenterSelected();
            if (cGerber != new System.Drawing.Point() && cCad != new System.Drawing.Point())
            {
                int subx = cGerber.X - cCad.X;
                int suby = cGerber.Y - cCad.Y;
                cad.X += subx;
                cad.Y += suby;
                mGerberToolsWindow.ShowAllLayerImb(ActionMode.Draw_Cad);
            }
            else
            {
                MessageBox.Show(string.Format("Please select item on the layers selected..."), "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
示例#5
0
        private void btSetY_Click(object sender, RoutedEventArgs e)
        {
            int val = 0;

            try
            {
                val = Convert.ToInt32(Convert.ToDouble(txtY.Text));
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "ERROR", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            object item = cbLayer.SelectedItem;

            if (item is CadFile)
            {
                CadFile cad = (CadFile)item;
                cad.Y = val;
                mGerberToolsForm.ShowAllLayerImb(ActionMode.Draw_Cad);
            }
        }