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

    Link input in dialog?

    Scheduled Pinned Locked Moved PYTHON Development
    2 Posts 0 Posters 509 Views
    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 Offline
      Helper
      last edited by

      On 01/03/2018 at 05:56, xxxxxxxx wrote:

      I'm a newbie in python and c4d api/dom etc. (even tho i have pretty vast programming experience)
      So my question may look silly. But how can i add a selection field (like Link input for UserData) in the python scripted dialog. I've seen a lot of scripts which only operate with object input via doc.GetSelectedObjects(), but it's not very convenient, especially when u need few different objects selected (with different roles), so i wanted to create a dialog with selection input, but couldn't find one.
      So well, i've thought to create my own via text field to display object name/id + "Select" button, but the thing is i couldn't make the dialog to be asynchronous, when i use anything except DIALOG_TYPE_MODAL dialog just makes C4D hang up =\
      I guess i didn't understood something very important about user input handling via dialogs...

      So i'm looking for help from more experienced devs: how can i make a script which will allow to select few different objects in the same way as i can do that (say with Python Generator + UserData fields) ???

      P.S. i'm already thinking about getting rid of that silly script manager and doing what i want via Python Generator (e.g. action performed via Quicktab userdata-field with resetting it into default state? =), but it still makes no sense cuz i need to operate on existing objects in the scene and not create anything new lol

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

        On 02/03/2018 at 07:47, xxxxxxxx wrote:

        Hi Markus_13, thanks for writing us.

        With regard to your issue, it's actually not possible to create a GUI element in a dialog generated by a Python script. It should be instead created a CommandData Python plugin hosting the dialog and managing the relationship and interaction between the data referenced by the GUI elements and the code itself.
        On out GitHub repository it's available a Python plugin example that could shed some light on implementing a python plugin with an asynchronous dialog.
        Last but not least although it could work to some extent, using a Python Generator for this purposes could result actually sub-optimal.

        Best, Riccardo

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