6 Replies Latest reply: Mar 2, 2012 7:59 AM by Dirk Becker RSS

    Issue with having grouped radio button

    suren_tringer Community Member

      Hi, all,

       

      i have issue with creating grouped radio button, here i included the code which i use. can any one help me.

       

      resource BscPnlPanelWidget(kSDKDefPanelResourceID + index_enUS)

      {

          __FILE__, __LINE__,                     

          kBscPnlPanelWidgetID,              

          kPMRsrcID_None,                    

          kBindNone,                           

          0, 0, 800, 300,                    

          kTrue, kTrue,                      

          kBscPnlPanelTitleKey,             

          {

              GroupPanelWidget

              (

              kBscGroupWidgetID,

              kPMRsrcID_None,

              kBindNone,

              Frame(0, 60, 150, 115),

              kTrue,

              kTrue,

              kBscTabWidgetID,

              {

              ClusterPanelWidget

              (

              kBscClusterWidgetID,

              kPMRsrcID_None,

              kBindNone,

              Frame( 0, 0, 60, 70),

              kTrue,

              kTrue,

              "Select Type",

              {   

                  RadioButtonWidget

                  (

                  kBscRadioButton1WidgetID,

                  kSysRadioButtonPMRsrcId,

                  kBindNone,

                  Frame(2, 10, 50, 30),

                  kTrue, kTrue,

                  "Type 1",

                  ),

                  RadioButtonWidget

                  (

                  kBscRadioButton2WidgetID,

                  kSysRadioButtonPMRsrcId,

                  kBindNone,

                  Frame( 2, 32, 50, 52),

                  kTrue, kTrue,

                  "Type 2",

                  ),   

               }

                ),

             }

          ),

         

        }

      };

        • 1. Re: Issue with having grouped radio button
          Dirk Becker Community Member

          Where is the kBscTabWidgetID referenced by the group as border widget?

          Include a FittedStaticTextWidget as first item in the widget list, same level as that ClusterPanelWidget.

           

          Dirk

          • 2. Re: Issue with having grouped radio button
            Dirk Becker Community Member

            Btw, please include some indicator of the actual problem with your message.

            "I have issue" and "can anyone help" just leaves too much guesswork.

             

            It could mean anything like

            - you just experience compile time errors (which?)

            - you don't see the widgets in the running plugin

            - you crash InDesign on your Mac (provide stack trace?)

            - you crash InDesign on your Windows machine (get a Mac!)

            - you see assertion failures in the debug build (again which?)

            - anything else, you got the idea.

             

            Dirk

            • 3. Re: Issue with having grouped radio button
              suren_tringer Community Member

              Dirk ,Sorry for not specifing the issue , the issue is i don't see the widgets in the running plugin

              • 4. Re: Issue with having grouped radio button
                suren_tringer Community Member

                Dirk Sorry I am not getting these points . Can you help me through elobrate it

                 

                Where is the kBscTabWidgetID referenced by the group as border widget?

                 

                Include a FittedStaticTextWidget as first item in the widget list, same level as that ClusterPanelWidget.

                 

                For my understanding ,same level as that ClusterPanelWidge. i included the following FittedStaticTextWidget defintion just before the ClusterPanelWidget definition.but it says compile error

                 

                     FittedStaticTextWidget

                        (

                          10.0,

                           1,

                           kDontEllipsize,

                           kTrue,

                           kFalse,

                          "Sample",                                // Initial text.

                          0,

                          0,

                        ),

                -must me numeric,

                -Array label end widget :index out of bounds.

                • 5. Re: Issue with having grouped radio button
                  Dirk Becker Community Member

                  Your quoted .fr fragment only has one occurence of kBscTabWidgetID.

                   

                  For a deeper understanding of the resource language, try to follow the declarations ( e.g. starting in Widgets.fh ) and comment every line / data item.

                  An example of the relevant entry, formatted my way:

                   

                  GroupPanelWidget (
                      // GroupPanelWidget : CControlView
                      kBscGroupWidgetID,                      // WidgetId
                      kPMRsrcID_None,                         // RsrcId
                      kBindNone,                              // Frame Binding
                      Frame(                                  //  Frame
                          0, 60,                              //  left,top
                          150, 115 )                          //  right,bottom
                      kTrue,                                  // Visible
                      kTrue,                                  // Enabled
                      // GroupPanelWidget : GroupPanelAttributes
                      kBscTabWidgetID,                        // widget id of border widget
                      // GroupPanelWidget : CPanelControlData
                      {
                      ...
                      }
                  )

                   

                  Then use the interface ID of e.g. GroupPanelAttributes to locate the matching .h interface header:

                   

                  class IGroupPanelAttributes : public IPMUnknown

                  {

                  public:

                    // ----- Query -----

                            enum { kDefaultIID = IID_IGROUPPANELATTRIBUTES };

                   

                    /** Get the widget id of the widget to use in the top left border of the GroupPanel. 

                                                The widget can have sub-widgets.  If GetBorderWidgetID returns 0,

                                                a simple framed border will be drawn.

                   

                                      @return the widget id

                            */

                            virtual WidgetID          GetBorderWidgetID() const = 0;

                  ...

                   

                   

                  This will give you more details on the meaning of the values in the resource.

                   

                  Dirk

                  • 6. Re: Issue with having grouped radio button
                    Dirk Becker Community Member

                    Btw, the FittedStaticTextWidget should of course use that kBscTabWidgetID as ID.

                     

                    Dirk