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
    • Recent
    • Tags
    • Users
    • Login

    image in description?

    Scheduled Pinned Locked Moved SDK Help
    6 Posts 0 Posters 477 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

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

      On 29/09/2010 at 13:17, xxxxxxxx wrote:

      User Information:
      Cinema 4D Version:   11 / 12 
      Platform:   Windows  ;   
      Language(s) :     C++  ;

      ---------
      Hi there,

      can somebody quickly point me towards how i can add images to my description?
      I'd like to add some small icons next  to my parameters.

      is that possible? maybe in the res file?

      cheers and thanks,
      ello

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

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

        On 29/09/2010 at 14:21, xxxxxxxx wrote:

        It is possible but not simple.  If you don't want them to be buttons, just omit BUTTON from the .res file:

        // Ogreebler.res  
        CONTAINER Ogreebler  
        {  
          NAME    Ogreebler;  
          INCLUDE Obase;  
          
          GROUP ID_OBJECTPROPERTIES  
          {  
              DEFAULT            1;  
              // Help and Information about Greebler  
              BITMAPBUTTON    GREEBLER_INFO                                { ANIM OFF; BUTTON; }  
              ...  
          
        // GreeblerObject.cpp  
        // NodeData.Message  
        //*---------------------------------------------------------------------------*  
        Bool GreeblerObj::Message(GeListNode* node, LONG type, void* data)  
        //*---------------------------------------------------------------------------*  
        {  
          if (!node)    return FALSE;  
          if        (type == MSG_DESCRIPTION_GETBITMAP)  
              return MsgGetBitmap(static_cast<DescriptionGetBitmap*>(data), static_cast<BaseObject*>(node));  
          ...  
          return SUPER::Message(node,type,data);  
        }  
        // GreeblerObj.MsgGetBitmap  
        //*---------------------------------------------------------------------------*  
        Bool GreeblerObj::MsgGetBitmap(DescriptionGetBitmap* dgb, BaseObject* op)  
        //*---------------------------------------------------------------------------*  
        {  
          if (!(dgb && op))        return TRUE;  
          BaseContainer*    bc =    op->GetDataInstance();  
          LONG            id =    dgb->id[0].id;  
          if (id == GREEBLER_INFO)  
          {  
              Filename    bg =    GeGetPluginPath()+Filename("res")+Filename("banner.tif");  
              if (!GeFExist(bg))    return TRUE;  
              AutoAlloc<BaseBitmap>    bm;  
              bm->Init(bg);  
              dgb->bmp =            bm.Release();  
          }  
          return TRUE;  
        }  
        // NodeData.GetDParameter  
        //*---------------------------------------------------------------------------*  
        Bool GreeblerObj::GetDParameter(GeListNode* node, const DescID& id, GeData& t_data, DESCFLAGS_GET& flags)  
        //*---------------------------------------------------------------------------*  
        {  
          if (!node)        return FALSE;  
          LONG    did =    id[0].id;  
          switch (did)  
          {  
              // BitmapButtons  
              case GREEBLER_INFO:  
              {  
                  BitmapButtonStruct bbs(static_cast<PluginObject*>(node), id, 0L);  
                  t_data =        GeData(CUSTOMDATATYPE_BITMAPBUTTON, bbs);  
                  flags |=        DESCFLAGS_GET_PARAM_GET;  
                  break;  
              }  
              default:  
                  break;  
          }  
          return SUPER::GetDParameter(node, id, t_data, flags);  
        }  
        // NodeData.SetDParameter  
        //*---------------------------------------------------------------------------*  
        Bool GreeblerObj::SetDParameter(GeListNode* node, const DescID& id, const GeData& t_data, DESCFLAGS_SET& flags)  
        //*---------------------------------------------------------------------------*  
        {  
          if (!node)        return FALSE;  
          LONG    did =    id[0].id;  
          // Info BitmapButton  
          if (did == GREEBLER_INFO)  
          {  
              if (flags & DESCFLAGS_SET_USERINTERACTION)  
              {  
                  // user clicked on button - open Dialog  
                  greebler->ShowHelpDialog();  
              }  
              flags |=    DESCFLAGS_SET_PARAM_SET;  
          }  
          return SUPER::SetDParameter(node, id, t_data, flags);  
        }  
        
        1 Reply Last reply Reply Quote 0
        • H Offline
          Helper
          last edited by

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

          On 29/09/2010 at 23:08, xxxxxxxx wrote:

          Omg.. thank you for that. This is quite a lot to just display an image 🙂 And i was planing to add a picture to all parameters because they are hard to describe by words.

          Lets see if i can get that to work...

          kind regards,
          ello

          edit: just wanted to say thank you.. i got it working 🙂

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

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

            On 01/10/2010 at 05:53, xxxxxxxx wrote:

            just one more question: how can i use a bitmap which contains a bunch of symbols and adress them via an offset? somehow like cinema does it with its interface icons?

            thanks for any input..
            cheers,
            ello

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

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

              On 01/10/2010 at 09:06, xxxxxxxx wrote:

              Load the big image and copy the part you need to the the allocated basebitmap.

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

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

                On 01/10/2010 at 09:18, xxxxxxxx wrote:

                thank you very much for the hint...

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