Auto close dialog by default selection

Auto close dialog by default selection

milindnalgirkar
Enthusiast Enthusiast
1,245 Views
8 Replies
Message 1 of 9

Auto close dialog by default selection

milindnalgirkar
Enthusiast
Enthusiast

am using 'Autodesk.AutoCAD.Internal.Utils.CloseCommandLine();' as attached in Image1 for closing command line. But command waits for input and after 'enter' it prompts for confirmation dialog box. I need to close it without user input.

 

 

1.png

 

 

2.png

0 Likes
Accepted solutions (2)
1,246 Views
8 Replies
Replies (8)
Message 2 of 9

Alexander.Rivilis
Mentor
Mentor

This post can help you: http://adndevblog.typepad.com/autocad/2015/04/dismissing-popup-dialogs-in-autocad.html

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes
Message 3 of 9

Alexander.Rivilis
Mentor
Mentor

Other solution: https://adndevblog.typepad.com/autocad/2013/07/disable-task-dialogs-programmatically.html

Also read comments to that post.

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes
Message 4 of 9

lena.talkhina
Alumni
Alumni

Hello @milindnalgirkar  !

Great to see you here on .NET Forum.

Did Alexander's links helped you to find a solution?
If yes, please click on the "Accept as Solution" button as then also other community users can easily find and benefit from the information.
If not please don't hesitate to give an update here in your topic so all members know what ́s the progression on your question is and what might be helpful to achieve what you ́re looking for. 🙂

Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям! | Do you find the posts helpful? "LIKE" these posts!
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.



Лена Талхина/Lena Talkhina
Менеджер Сообщества - Русский/Community Manager - Russian

0 Likes
Message 5 of 9

milindnalgirkar
Enthusiast
Enthusiast

I tried almost all options..nothing is working...

0 Likes
Message 6 of 9

Alexander.Rivilis
Mentor
Mentor

@milindnalgirkar wrote:

I tried almost all options..nothing is working...


Please show your code was tried to use and maybe I can help you.

 

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes
Message 7 of 9

Alexander.Rivilis
Mentor
Mentor
Accepted solution

Try this code:

using Autodesk.AutoCAD.Runtime;
using Autodesk.Internal.Windows;

// This line is not mandatory, but improves loading performances
[assembly: CommandClass(typeof(CloseCommanLine.MyCommands))]

namespace CloseCommanLine
{
  public class MyCommands
  {
    
    [CommandMethod("CC")]
    public void CC()
    {
      EnableCloseCommandLineWindow();
      Autodesk.AutoCAD.Internal.Utils.CloseCommandLine();
      DisableCloseCommandLineWindow();
    }
    static void EnableCloseCommandLineWindow()
    {
      Autodesk.AutoCAD.Internal.Windows.ProfileManager.LoadHideableDialogSettingsDictionary();
      HideableDialogSettingsDictionary dict =
        Autodesk.Windows.TaskDialog.HideableDialogSettingsDictionary;
      if (!dict.ContainsKey("MainFrame.CommandLineHideWindow"))
      {
        HideableDialogSettings sets = new HideableDialogSettings();
        sets.Application = "";
        sets.Id = "MainFrame.CommandLineHideWindow";
        sets.Title = "Command Line – Close Window";
        sets.Category = "Command Line";
        sets.Result = 6;
        dict.Add(sets);
      }
      try
      {
        dict.SetResult("MainFrame.CommandLineHideWindow", 6);
        Autodesk.AutoCAD.Internal.Windows.ProfileManager.SaveHideableDialogSettingsDictionary();
      }
      catch { }
    }
    static void DisableCloseCommandLineWindow()
    {
      try
      {
        Autodesk.AutoCAD.Internal.Windows.ProfileManager.LoadHideableDialogSettingsDictionary();
        HideableDialogSettingsDictionary dict =
          Autodesk.Windows.TaskDialog.HideableDialogSettingsDictionary;
        if (dict.ContainsKey("MainFrame.CommandLineHideWindow"))
        {
          dict.Remove("MainFrame.CommandLineHideWindow");
        }
        Autodesk.AutoCAD.Internal.Windows.ProfileManager.SaveHideableDialogSettingsDictionary();
      }
      catch { }
    }
  }
}

You have to add references to AdWindows.dll and AcWindows.dll

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

Message 8 of 9

milindnalgirkar
Enthusiast
Enthusiast

Thank you so much for reply. This solution works perfectly to Autocad 2020 and 2021, but is not working to Autocad  2019. 

 

 

Any reason to this? Please suggest.

0 Likes
Message 9 of 9

Alexander.Rivilis
Mentor
Mentor
Accepted solution

I've tested with AutoCAD 2019 (with all updates). This code works as expected:

 

Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"


Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Expert Elite Member

0 Likes