Author Topic: CommandFlags  (Read 6867 times)

0 Members and 1 Guest are viewing this topic.

TR

  • Guest
CommandFlags
« on: December 29, 2005, 09:54:20 AM »
Can someone please 'splain to me the differences between the CommandFlags? I know this is a pretty newbie question but I've yet to find a decent answer anywhere.

Like what exactly does CommandFlags.Transparent mean?

Draftek

  • Guest
Re: CommandFlags
« Reply #1 on: December 29, 2005, 11:02:15 AM »
Not sure about all of them but .Session means for the entire session of autocad's existence, not in the document session and .Transparent is the opposite of .Modal meaning the command can be actived while the user is being prompted for input - like osnap settings..

Kerry

  • Mesozoic relic
  • Seagull
  • Posts: 11654
  • class keyThumper<T>:ILazy<T>
Re: CommandFlags
« Reply #2 on: December 29, 2005, 06:59:06 PM »
Tim, do you have the ArxDoc.chm from the ObjectARX SDK, the AC2006 release.

If not, In the mean time ...
kdub, kdub_nz in other timelines.
Perfection is not optional.
Everything will work just as you expect it to, unless your expectations are incorrect.
Discipline: None at all.

TR

  • Guest
Re: CommandFlags
« Reply #3 on: January 02, 2006, 01:40:01 PM »
Kerry:

That was exactly what I was looking for, thank you.

CADbloke

  • Bull Frog
  • Posts: 342
  • Crash Test Dummy
Re: CommandFlags
« Reply #4 on: May 14, 2013, 08:52:34 PM »
Hey, this thread is only 7 years old ... I thought I'd drop some of my template notes in here for anyone who is looking for info on CommandFlags. The links have examples with them to clarify what they mean. sometimes.

If I have made (m)any errors here please point them out


CommandFlags.UsePickSet          |  //   Use the pre-selected entities for Editor.GetSelection() .. ADSK docs are BOLLOX ==> When the pickfirst set is retrieved, it is cleared. ... http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-commandflag-usepickset.html

CommandFlags.Redraw              |  // When the pickfirst set or grip set are retrieved, they are not cleared.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-commandflag-redraw.html

CommandFlags.Interruptible       |  //   The command may be interrupted when prompting for user input.  the command is able to interact with other user interfaces such as the OPM (Object Property Manager) or PP (Property Palette) when collecting input from users through calling Editor.GetXXX() methods  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-commandflag-interruptible.html

CommandFlags.DocExclusiveLock    |  // the command will have the Exclusive Write privilege to the current document that the command is running in. The default privilege is Share Write, or just Write.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-docexclusivelock.html

CommandFlags.DocReadLock         |  //   Document will be read locked when command is invoked.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsdocreadlock.html

CommandFlags.NoInternalLock      |  // Pointless. http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnointernallock.html

CommandFlags.NoTileMode          |  // Command cannot be used in Model Space (when TILEMODE is set to 1.)  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnopaperspace-vs-commandflagsnotilemode.html

CommandFlags.NoPaperSpace        |  // the command is not permitted in the paper space  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnopaperspace-vs-commandflagsnotilemode.html

CommandFlags.NoPerspective       |  // the command will not be permitted in the perspective view.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnoperspective.html

CommandFlags.ActionMacro         |  // Not in 2007  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsactionmacro-vs-commandflagsnoactionrecording.html

CommandFlags.NoActionRecording   |  // Not in 2007 http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsactionmacro-vs-commandflagsnoactionrecording.html

CommandFlags.InProgress          |  // NFI  http://spiderinnet1.typepad.com/blog/2012/01/autocad-net-command-flag-commandflagsinprogress.html

CommandFlags.NoMultiple          |  // the command will not be possible to repeat itself through the MULTIPLE command. http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnomultiple.html

CommandFlags.NoNewStack          |  // NFI  http://spiderinnet1.typepad.com/blog/2012/01/autocad-net-command-flag-commandflagsnonewstack-and-commandflagsnooem.html

CommandFlags.NoOem               |  //  the command will not be available to OEM products.

CommandFlags.NoUndoMarker        |  // Command does not support undo markers. This is intended for commands that do not modify the database, and therefore should not show up in the undo file.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnoundomarker.html

CommandFlags.NoHistory           |  // will not be added into the command history (Recent Commands) list and it cannot be repeated by simply pressing the enter key or choosing it from the context menu.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnohistory.html

CommandFlags.NoBlockEditor       |  // command will not be allowed in the block editor environment.  http://spiderinnet1.typepad.com/blog/2011/12/autocad-net-command-flag-commandflagsnoblockeditor.html

CommandFlags.NoInferConstraint   |  // Not in 2007 nor 2010

CommandFlags.Defun               |  // command can be invoked from LISP code as a parameter-less function.  http://spiderinnet1.typepad.com/blog/2012/01/autocad-net-command-flag-commandflagsdefun.html

CommandFlags.TempShowDynDimension|  // Not in 2007 nor 2010

CommandFlags.Undefined               // command cannot be invoked by its own name directly. Instead, it is supposed that the fully qualified command name should be used: GroupName.CommandName  http://spiderinnet1.typepad.com/blog/2012/01/autocad-net-command-flag-commandflagsundefined.html

TheMaster

  • Guest
Re: CommandFlags
« Reply #5 on: May 14, 2013, 11:45:17 PM »
Hey, this thread is only 7 years old ... I thought I'd drop some of my template notes in here for anyone who is looking for info on CommandFlags. The links have examples with them to clarify what they mean. sometimes.

If I have made (m)any errors here please point them out


I wouldn't make the assumption that SpiderMan is an authority on ObjectARX internals, and regarding his reinterpretation of the ObjectARX docs for CommandFlags, with the exception of those which he hasn't figured out yet and/or speculates on, are either clearly-documented in the docs (both in the managed docs and the native docs for AcEdCommnd::commandFlags), the SDK C++ header (*.h) files, and/or are entirely self-explanatory, with the exception of CommandFlags.UsePickSet and CommandFlags.Redraw, which the author of the Autodesk docs botched, as has been discussed here in the past.

For example, The CommandFlags.InProgress flag is used internally by AutoCAD to indicate that the command is currently in-progress (duh).   And so, that one has no purpose or effect in CommandMethod attributes.

« Last Edit: May 14, 2013, 11:49:20 PM by TT »

CADbloke

  • Bull Frog
  • Posts: 342
  • Crash Test Dummy
Re: CommandFlags
« Reply #6 on: May 15, 2013, 11:17:33 PM »
I wouldn't make the assumption that SpiderMan is an authority on ObjectARX internals
That's a fair enough call and that qualification should be stated, which you did. Thanks. I posted the links simply because some contain usage examples which may help out those unfamiliar with the API.

with the exception of CommandFlags.UsePickSet and CommandFlags.Redraw, which the author of the Autodesk docs botched, as has been discussed here in the past.
here (I think): http://www.theswamp.org/index.php?topic=42871.0 for those interested in that discussion.

You also raise (again) a good point that the ARX docs are very helpful for deciphering the managed API. If others who stumble across this weren't already aware of this then it may be worthwhile to browse them.