本文整理汇总了C#中Editor.WriteMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Editor.WriteMessage方法的具体用法?C# Editor.WriteMessage怎么用?C# Editor.WriteMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Editor
的用法示例。
在下文中一共展示了Editor.WriteMessage方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: IncludeSubdirs
private static SearchOption IncludeSubdirs(Editor ed, DirectoryInfo dir)
{
// Вопрос - включая подпапки?
SearchOption recursive = SearchOption.AllDirectories;
if (dir.GetDirectories().Length > 0)
{
var opt = new PromptKeywordOptions("\nВключая подпапки");
opt.Keywords.Add("Да");
opt.Keywords.Add("Нет");
opt.Keywords.Default = "Да";
var res = ed.GetKeywords(opt);
if (res.Status == PromptStatus.OK)
{
if (res.StringResult == "Нет")
{
recursive = SearchOption.TopDirectoryOnly;
}
}
}
ed.WriteMessage("\nПапка для переопределения блока " + dir.FullName);
if (recursive == SearchOption.AllDirectories)
ed.WriteMessage("\nВключая подпапки");
else
ed.WriteMessage("\nТолько в этой папке, без подпапок.");
return recursive;
}
示例2: SelecteazaIncapere
private void SelecteazaIncapere(out List<Incapere> incapere, Editor ed, Database acCurDb)
{
//int nrIncapere = 1;
bool selectez = true;
incapere = new List<Incapere>();
while (selectez)
{
PromptEntityResult select = ed.GetEntity("Selecteaza Incapere");
if (select.Status == PromptStatus.OK)
{
using (Transaction trans = acCurDb.TransactionManager.StartTransaction())
{
Incapere camera = new Incapere();
DBObject obj = trans.GetObject(select.ObjectId, OpenMode.ForRead);
if (obj.GetType() == typeof(Polyline))
{
Polyline poly = (Polyline)obj;
camera.SuprafataIncapere = poly.Area;
PromptResult result;
PromptStringOptions interogare;
interogare = new PromptStringOptions("\nNr. Incapere: ");
result = ed.GetString(interogare);
camera.NrIncapere = result.StringResult;
interogare = new PromptStringOptions("\nDestinatie Incapere: ");
result = ed.GetString(interogare);
camera.DestinatieIncapere = result.StringResult;
incapere.Add(camera);
}
else
{ ed.WriteMessage("\nEntitatea selectata nu este o polilinie"); }
trans.Commit();
}
}
else
{ selectez = false; }
}
}
示例3: GetDir
private List<FileInfo> GetDir(Document doc, Editor ed)
{
var dir = GetFiles(ed);
List<FileInfo> filesDwg = dir.GetFiles("*.dwg", IncludeSubdirs(ed, dir)).ToList();
// Если выбрана папка текущего чертежа
if (Path.GetFullPath(dir.FullName).Equals(Path.GetDirectoryName(doc.Name), StringComparison.OrdinalIgnoreCase))
{
// удалить файл чертежа из списка файлов
List<FileInfo> readOnlyFiles = new List<FileInfo>();
FileInfo ownerFile= null;
foreach (var file in filesDwg)
{
if (Path.GetFileName(doc.Name).Equals(Path.GetFileName(file.Name)))
{
ownerFile = file;
}
else if (file.Attributes.HasFlag(FileAttributes.ReadOnly))
{
Inspector.AddError($"Файл доступен только для чтения - пропущен. '{file.Name}'", System.Drawing.SystemIcons.Warning);
readOnlyFiles.Add(file);
}
}
foreach (var item in readOnlyFiles)
{
filesDwg.Remove(item);
}
if (ownerFile != null)
filesDwg.Remove(ownerFile);
}
ed.WriteMessage("\nОбщее количество файлов для переопределения: " + filesDwg.Count);
return filesDwg;
}
示例4: RedefBlockInFiles
private void RedefBlockInFiles(Editor ed, Database db, List<RedefineBlock> blocksRedefine,
List<RedefineBlock> renameBlocks, List<FileInfo> filesDwg)
{
int countFilesRedefined = 0;
int countFilesWithoutBlock = 0;
int countFilesError = 0;
// Прогресс бар
ProgressMeter pBar = new ProgressMeter();
pBar.Start("Переопределение блоков в файлах... нажмите Esc для отмены");
pBar.SetLimit(filesDwg.Count);
// Переименование блоков в этом файле
var errs = RenameBlocks(db, renameBlocks);
if (errs.Count != 0)
Inspector.Errors.AddRange(errs);
Dictionary<string, Document> dictDocs = new Dictionary<string, Document>(StringComparer.OrdinalIgnoreCase);
foreach (Document doc in Autodesk.AutoCAD.ApplicationServices.Core.Application.DocumentManager)
{
dictDocs.Add(doc.Name, doc);
}
foreach (var file in filesDwg)
{
// Переопределение блока в файле
try
{
Document doc;
if (dictDocs.TryGetValue(file.FullName, out doc))
{
using (doc.LockDocument())
{
RedefineBlockInFile(doc, blocksRedefine, renameBlocks, file, ref countFilesRedefined, ref countFilesWithoutBlock);
Inspector.AddError($"Обработан открытый документ '{doc.Name}'", System.Drawing.SystemIcons.Hand);
}
}
else
{
RedefineBlockInFile(ed, db, blocksRedefine, renameBlocks, file, ref countFilesRedefined, ref countFilesWithoutBlock);
}
}
catch (System.Exception ex)
{
Inspector.AddError($"Ошибка при переопределении блока в файле {file.Name} - {ex.Message}", System.Drawing.SystemIcons.Error);
ed.WriteMessage("\nОшибка при переопределении блока в файле " + file.Name);
ed.WriteMessage("\nТекст ошибки " + ex.Message);
}
pBar.MeterProgress();
}
pBar.Stop();
ed.WriteMessage("\nПереопределен блок в " + countFilesRedefined + " файле.");
if (countFilesWithoutBlock != 0)
ed.WriteMessage("\nНет блока в " + countFilesWithoutBlock + " файле.");
if (countFilesError != 0)
ed.WriteMessage("\nОшибка при переопределении блока в " + countFilesError + " файле.");
ed.WriteMessage("\nГотово");
}
示例5: checkName
//
// Vérification de la non-utilisation du nom des blocks
//
private string checkName(BoxCollection boxArray, BlockTable bt, int x, Editor ed)
{
string blkName = "";
do
try
{
blkName = boxArray.ArrayBox[x].BlckName + _id.ToString(CultureInfo.InvariantCulture);
while (bt.Has(blkName))
{
_id++;
blkName = boxArray.ArrayBox[x].BlckName + _id.ToString(CultureInfo.InvariantCulture);
}
}
catch
{
ed.WriteMessage("\nInvalid block name.");
} while (blkName == "");
return blkName;
}