Exemplo n.º 1
0
        public static void CloseSelected(List <Drawing> drawings)
        {
            WindowController2.BringAutoCadToTop();
            AutoCad.Command.Prepare();

            AutoCad.Db.Database.SetFileDialogMode(false);

            foreach (var drawing in drawings)
            {
                WindowController2.BringDrawingToTop(drawing.WindowHandle);
                AutoCad.Command.Prepare();

                try
                {
                    while (true)
                    {
                        //closeコマンドはスクリプトを使わないと、保存を確かめるダイアログが出て処理が止まってしまう。
                        AutoCad.Command.SendLineEsc(@"script C:\UnitWiring\Scripts\Close.scr");

                        var currentHandle = WindowController2.GetTopDrawingHandle();

                        if (drawing.WindowHandle != currentHandle)
                        {
                            break;
                        }
                    }
                }
                catch
                { //取得に失敗したということは開いている図面が無いということなので抜けて良し
                }
            }

            AutoCad.Db.Database.SetFileDialogMode(true);
        }
Exemplo n.º 2
0
        public static Drawing GetCurrent()
        {
            var currentDrawingHandle = WindowController2.GetTopDrawingHandle();

            var drawing = new Drawing();

            drawing.WindowHandle = currentDrawingHandle;
            drawing.FullPath     = WindowController2.GetWindowTitle(currentDrawingHandle);

            return(drawing);
        }