Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    Where is BFM_DRAGRESULT defined??

    SDK Help
    0
    7
    834
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Helper
      last edited by

      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

      On 09/06/2003 at 13:36, xxxxxxxx wrote:

      User Information:
      Cinema 4D Version:   8.100 
      Platform:      
      Language(s) :   C.O.F.F.E.E  ;

      ---------
      hi

      The documentation about Ge:Dialog::DragMessage says:

      ... (example)
      var result = new(BaseContainer, BFM_DRAGRESULT);
      ...

      I searched for this variable but can't find it (not in the c4d R7 C++ SDK or the whole cinema4D directory).
      As long as I don't know at least the value, the code is pretty useless.

      Another awardwinning "I-cannot-search" mistake or a bug in the documentation?

      thx in advance

      -zet

      1 Reply Last reply Reply Quote 0
      • H
        Helper
        last edited by

        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

        On 09/06/2003 at 15:09, xxxxxxxx wrote:

        what about "I-can-search-this-forum" option? 😉

        1 Reply Last reply Reply Quote 0
        • H
          Helper
          last edited by

          THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

          On 09/06/2003 at 21:36, xxxxxxxx wrote:

          what about the - WHERE?

          1 Reply Last reply Reply Quote 0
          • H
            Helper
            last edited by

            THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

            On 10/06/2003 at 09:44, xxxxxxxx wrote:

            Centurion: So, your father was a Voman. Who was he?
            Brian: He was a centurion, in the Jerusalem garrison, sir.
            Pontius Pilate: Veally? What was his name?
            Brian: Naughtius Maximus.
            Centurion: Pahaha...
            Pontius Pilate: Centuvion, do you have anyone of that name
            in the gavvison?
            Centurion: Well...no, sir.
            Pontius Pilate: Well, you sound very sure. Have you checked?
            Centurion: Well, no, sir, ehm...I think it's a joke, sir.
            Like, ehm, Sillius Soddus, or...or, Biggus Dickus, sir.
            Legionary III: Pffhrpffpfff...
            Pontius Pilate: What's, ehm...funny about Biggus Dickus?

            ----

            So have you checked - or do you want to let me die stupid?

            Btw: Can I catch Material drops - whenever I am pulling a Material over the window, I receive a null message...

            1 Reply Last reply Reply Quote 0
            • H
              Helper
              last edited by

              THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

              On 10/06/2003 at 13:51, xxxxxxxx wrote:

              First of all, I don't think DragMessage() has been in the SDK since R6, so you can probably disregard that part of the C.O.F.F.E.E. docs. I couldn't find BFM_DRAGRESULT either.
              There's an example of drag and drop in the guidemo.cof file. I couldn't detect any specific problems with materials there. However, the drag finished message doesn't seem to be working out-of-the box with R8 in that example file.
              If you search for BFM_DRAG_FINISHED you'll find two threads discussing this issue. (From what I can see in the console, this message is sent, just not in the same way that is was in R7.)
              And Samir, you're more than welcome to fill me in. Your C.O.F.F.E.E. drag&drop is more recent than mine I guess... 😉

              1 Reply Last reply Reply Quote 0
              • H
                Helper
                last edited by

                THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                On 10/06/2003 at 15:36, xxxxxxxx wrote:

                Hi,
                well, the last posts I have done is the rest of my COFFEE drag & drop thoughts crawling through my head too 😉
                Once again here is an example plugin I have posted. It should work fine in R8.1 and uses an editfield for the dragoperation. BFM_DRAGRESULT isn´t necessary and I never used it either for it wasn´t documented...but you can use SetDragDestination() to change the mouse pointer to indicate the dropping result.

                    
                    
                    var PLUGIN_ID = 1010111;
                    
                    
                    
                    
                    class MyDialog : GeDialog  
                    {  
                     public:  
                      MyDialog();  
                      CreateLayout();  
                      Message(msg);  
                    }
                    
                    
                    
                    
                    MyDialog::MyDialog()  
                     {  
                      super(PLUGIN_ID);  
                     }
                    
                    
                    
                    
                    enum  
                    {  
                     drag_TEST=1000  
                    }
                    
                    
                    
                    
                    MyDialog::CreateLayout()  
                    {  
                     AddEditText(drag_TEST , BFH_SCALE, 200, 0);  
                     return TRUE;  
                    }  
                    var obj;  
                    MyDialog::Message(msg)  
                    {  
                     if(msg->GetId() == BFM_dragRECEIVE)    
                     {  
                      if(CheckDropArea(drag_TEST, msg, TRUE, TRUE))  
                      {  
                       obj= GetdragObject(msg);  
                       SetString(drag_TEST, obj->GetName());  
                        **Set dragDestination(MOUSE_POINT_HAND);  
                    **   return TRUE;
                    
                    
                    
                    
                      }  
                     }  
                     return super::Message(msg);  
                    }
                    
                    
                    
                    
                    class MyMenuPlugin : MenuPlugin  
                    {  
                     public:  
                      MyMenuPlugin();  
                      GetID();  
                      GetName();  
                      GetHelp();  
                      Execute(doc);  
                      RestoreLayout(secret);  
                    }
                    
                    
                    
                    
                    MyMenuPlugin::MyMenuPlugin() { super(); }  
                    MyMenuPlugin::GetID() { return PLUGIN_ID; }  
                    MyMenuPlugin::GetName() { return "drag"; }  
                    MyMenuPlugin::GetHelp() { return "drag"; }
                    
                    
                    
                    
                    var d;  
                    MyMenuPlugin::Execute(doc)  
                    {  
                     d->Open(TRUE,-1,-1);  
                    }  
                    MyMenuPlugin::RestoreLayout(secret)  
                    {  
                     if (!d) d = new(MyDialog);  
                     d->RestoreLayout(secret);  
                    }
                    
                    
                    
                    
                    main()  
                    {  
                     d = new(MyDialog);  
                     Register(MyMenuPlugin);  
                    }
                

                Maybe you want to add a few lines that will help you get the object only
                if the drag is finished. Then your message function should look somehow like
                this:

                var obj,temp;  
                MyDialog::Message(msg)  
                {  
                 if(msg->GetId() == BFM_dragRECEIVE)    
                 {  
                  if(CheckDropArea(drag_TEST, msg, TRUE, TRUE))  
                  {  
                   temp = GetdragObject(msg);  
                   SetdragDestination(MOUSE_POINT_HAND);  
                   SetString(drag_TEST, temp->GetName());
                
                
                
                
                   if(msg->GetData(BFM_drag_FINISHED))  
                   {   
                      obj= GetdragObject(msg);  
                      SetString(drag_TEST, obj->GetName());  
                      
                   }  
                   return TRUE;  
                     
                  }  
                  else SetString(drag_TEST, "");  
                 }  
                 return super::Message(msg);  
                }
                

                1 Reply Last reply Reply Quote 0
                • H
                  Helper
                  last edited by

                  THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

                  On 10/06/2003 at 22:30, xxxxxxxx wrote:

                  Thank you very much for your time to help me.

                  I found your earlier code Samir, and it works great for my use. The not so important problem was then to catch the material drop - GetdragObject(msg); returns null in that case.

                  cu

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post