Hello guys,

I have a weird problem in my project , basicly speaking , I created a
widget called readingQuestionsWidget , it has UI to show the reading
questions for my exam project , in its controller class i fetch
reading questions from my database ( a question has a reading text and
4 different options below the text, so i prepared 4 radio buttons for
the options.) , for all different reading questions i put a READING
WIDGET which i created, for example , if there are 2 reading questions
i put 2 different READING WIDGETs(which they have 2 different text
boxes for the reading texts and 8 different radio buttons ( each 4
belongs to a reading text) ) on my page.

While i want to control the answers (which i check a radio button) ,
for example , the radio button for the option "A)" of two different
questions behave like connected to each other. I mean , when i check
the A) option for the 2 different questions , the first one that i
checked behave like NOT CHECKED.

here are my classes;

OgrenciReadingWidget.java
---------------------------------------

package tr.edu.gsu.yds.client.view.widget;

import com.google.gwt.i18n.client.HasDirection.Direction;

public class OgrenciReadingWidget extends Composite
{

        private Label                   soruMetniLabel          = new Label( 
"Reading Sorusu
Metni" );
        private FormWidget              formWidget                      = new 
FormWidget();
        private RichTextArea    readingTextBox          = new RichTextArea();
        private HorizontalPanel horizontalPanel1        = new HorizontalPanel();
        private HorizontalPanel horizontalPanel2        = new HorizontalPanel();
        private HorizontalPanel horizontalPanel3        = new HorizontalPanel();
        private HorizontalPanel horizontalPanel4        = new HorizontalPanel();

        private VerticalPanel   verticalPanel1          = new VerticalPanel();





        private RadioButton     radioButtonSecenekA     ;

        Label                           lblSecenekIcerikA       = new Label();

        private RadioButton     radioButtonSecenekB     ;

        Label                           lblSecenekIcerikB       = new Label();

        private RadioButton     radioButtonSecenekC     ;

        Label                           lblSecenekIcerikC       = new Label();

        private RadioButton     radioButtonSecenekD     ;

        Label                           lblSecenekIcerikD       = new Label();

        private Button          clearButton                     = new Button( 
"Temizle" );
        private Button          okayButton                      = new Button( 
"Tamam" );

        public OgrenciReadingWidget()
        {
                radioButtonSecenekA = new RadioButton( "A)" );
                radioButtonSecenekB = new RadioButton( "B)" );
                radioButtonSecenekC = new RadioButton( "C)" );
                radioButtonSecenekD = new RadioButton( "D)" );

                formWidget.getFormWidgetContainer().setWidget( 0, 0,
soruMetniLabel );
                readingTextBox.setPixelSize( 450, 200 );
                formWidget.getFormWidgetContainer().setWidget( 1, 0,
readingTextBox );
                horizontalPanel1.setSpacing(1);

        
horizontalPanel1.setVerticalAlignment( HasVerticalAlignment.ALIGN_MIDDLE );
                verticalPanel1.add( horizontalPanel1 );
                horizontalPanel1.setSize("470px", "30px");
                horizontalPanel2.setSpacing(1);

        
horizontalPanel2.setVerticalAlignment( HasVerticalAlignment.ALIGN_MIDDLE );
                verticalPanel1.add( horizontalPanel2 );
                horizontalPanel2.setSize("470px", "30px");
                horizontalPanel3.setSpacing(1);

        
horizontalPanel3.setVerticalAlignment( HasVerticalAlignment.ALIGN_MIDDLE );
                verticalPanel1.add( horizontalPanel3 );
                horizontalPanel3.setSize("470px", "30px");
                horizontalPanel4.setSpacing(1);

        
horizontalPanel4.setVerticalAlignment( HasVerticalAlignment.ALIGN_MIDDLE );
                verticalPanel1.add( horizontalPanel4 );
                horizontalPanel4.setSize("470px", "30px");




                horizontalPanel1.add( radioButtonSecenekA );
                horizontalPanel2.add( radioButtonSecenekB );
                horizontalPanel3.add( radioButtonSecenekC );
                horizontalPanel4.add( radioButtonSecenekD );

        
lblSecenekIcerikA.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);


                horizontalPanel1.add( lblSecenekIcerikA );
                horizontalPanel1.setCellVerticalAlignment(lblSecenekIcerikA,
HasVerticalAlignment.ALIGN_MIDDLE);
                horizontalPanel1.setCellHorizontalAlignment(lblSecenekIcerikA,
HasHorizontalAlignment.ALIGN_CENTER);
                lblSecenekIcerikA.setSize("426px", "20px");
        
lblSecenekIcerikB.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
                horizontalPanel2.add( lblSecenekIcerikB );
                horizontalPanel2.setCellVerticalAlignment(lblSecenekIcerikB,
HasVerticalAlignment.ALIGN_MIDDLE);
                horizontalPanel2.setCellHorizontalAlignment(lblSecenekIcerikB,
HasHorizontalAlignment.ALIGN_CENTER);
                lblSecenekIcerikB.setSize("426px", "20px");
        
lblSecenekIcerikC.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
                horizontalPanel3.add( lblSecenekIcerikC );
                horizontalPanel3.setCellHorizontalAlignment(lblSecenekIcerikC,
HasHorizontalAlignment.ALIGN_CENTER);
                lblSecenekIcerikC.setSize("426px", "20px");
        
lblSecenekIcerikD.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
                horizontalPanel4.add( lblSecenekIcerikD );
                horizontalPanel4.setCellHorizontalAlignment(lblSecenekIcerikD,
HasHorizontalAlignment.ALIGN_CENTER);
                lblSecenekIcerikD.setSize("426px", "20px");



                formWidget.getFormWidgetContainer().setWidget( 2, 0,
verticalPanel1 );

                clearButton.setPixelSize( 62, 25 );

                formWidget.getButtonContainer().setVisible( false );

                formWidget.getButtonContainer().add( clearButton );
                okayButton.setPixelSize( 80, 40 );
                formWidget.getButtonContainer().add( okayButton );

                initWidget( formWidget );

        }

        public RadioButton getRadioButtonSecenekA()
        {
                return radioButtonSecenekA;
        }

        public void setRadioButtonSecenekA( RadioButton radioButtonSecenekA )
        {
                this.radioButtonSecenekA = radioButtonSecenekA;
        }

        public RadioButton getRadioButtonSecenekB()
        {
                return radioButtonSecenekB;
        }

        public void setRadioButtonSecenekB( RadioButton radioButtonSecenekB )
        {
                this.radioButtonSecenekB = radioButtonSecenekB;
        }

        public RadioButton getRadioButtonSecenekC()
        {
                return radioButtonSecenekC;
        }

        public void setRadioButtonSecenekC( RadioButton radioButtonSecenekC )
        {
                this.radioButtonSecenekC = radioButtonSecenekC;
        }

        public RadioButton getRadioButtonSecenekD()
        {
                return radioButtonSecenekD;
        }

        public void setRadioButtonSecenekD( RadioButton radioButtonSecenekD )
        {
                this.radioButtonSecenekD = radioButtonSecenekD;
        }

        public Label getSoruMetniLabel()
        {
                return soruMetniLabel;
        }

        public void setSoruMetniLabel( Label soruMetniLabel )
        {
                this.soruMetniLabel = soruMetniLabel;
        }

        public FormWidget getFormWidget()
        {
                return formWidget;
        }

        public void setFormWidget( FormWidget formWidget )
        {
                this.formWidget = formWidget;
        }

        public RichTextArea getReadingTextBox()
        {
                return readingTextBox;
        }

        public void setReadingTextBox( RichTextArea readingTextBox )
        {
                this.readingTextBox = readingTextBox;
        }

        public Button getClearButton()
        {
                return clearButton;
        }

        public void setClearButton( Button clearButton )
        {
                this.clearButton = clearButton;
        }

        public Button getOkayButton()
        {
                return okayButton;
        }

        public void setOkayButton( Button okayButton )
        {
                this.okayButton = okayButton;
        }

        public Label getLblSecenekIcerikA()
        {
                return lblSecenekIcerikA;
        }

        public void setLblSecenekIcerikA( Label lblSecenekIcerikA )
        {
                this.lblSecenekIcerikA = lblSecenekIcerikA;
        }

        public Label getLblSecenekIcerikB()
        {
                return lblSecenekIcerikB;
        }

        public void setLblSecenekIcerikB( Label lblSecenekIcerikB )
        {
                this.lblSecenekIcerikB = lblSecenekIcerikB;
        }

        public Label getLblSecenekIcerikC()
        {
                return lblSecenekIcerikC;
        }

        public void setLblSecenekIcerikC( Label lblSecenekIcerikC )
        {
                this.lblSecenekIcerikC = lblSecenekIcerikC;
        }

        public Label getLblSecenekIcerikD()
        {
                return lblSecenekIcerikD;
        }

        public void setLblSecenekIcerikD( Label lblSecenekIcerikD )
        {
                this.lblSecenekIcerikD = lblSecenekIcerikD;
        }

}





*****************************************************



OgrenciReadingSoruSayfasi.java  (The view class)
-----------------------------------------------------------------------------
package tr.edu.gsu.yds.client.view.ogrenci.sinavislemleri;

import tr.edu.gsu.yds.client.view.widget.OgrenciReadingWidget;

public class OgrenciReadingSoruSayfasi extends Composite
{

                private DecoratorPanel                  sinavReadingSorusuPanel 
        = new
DecoratorPanel();

                private VerticalPanel                   
sinavReadingSorusuContainer     = new
VerticalPanel();
                private HTML                                    panelHeader     
                                = new HTML( "Sinav Paneli" );

                private VerticalPanel                   container               
                        = new VerticalPanel();
                private DecoratorPanel                  
sinavReadingWidgetContainer     = new
DecoratorPanel();

                // Ogretmenden cekilecek.-->database sinavın gerceklestirilecegi
sınıf

                private OgrenciReadingWidget    ogrenciReadingWidget            
= new
OgrenciReadingWidget();
                private OgrenciReadingWidget    ogrenciReadingWidget1           
= new
OgrenciReadingWidget();


                public OgrenciReadingSoruSayfasi()
                {


                        panelHeader.setHeight( "50px" );
                        panelHeader.setStyleName( "panelHeader" );
        
panelHeader.setHorizontalAlignment( HasHorizontalAlignment.ALIGN_CENTER );
                        ogrenciReadingWidget.getOkayButton().setVisible(false);
                        ogrenciReadingWidget.getClearButton().setVisible(false);



                        sinavReadingWidgetContainer.add( ogrenciReadingWidget );


                        container.add (sinavReadingWidgetContainer);


                        sinavReadingSorusuContainer.add( panelHeader );
                        sinavReadingSorusuContainer.add( container );


                        sinavReadingSorusuPanel.add( 
sinavReadingSorusuContainer );



                        initWidget( sinavReadingSorusuPanel );
                        sinavReadingSorusuPanel.setWidth( "495px" );

                }



                public DecoratorPanel getSinavReadingSorusuPanel()
                {
                        return sinavReadingSorusuPanel;
                }

                public void setSinavReadingSorusuPanel( DecoratorPanel
sinavReadingSorusuPanel )
                {
                        this.sinavReadingSorusuPanel = sinavReadingSorusuPanel;
                }

                public VerticalPanel getSinavReadingSorusuContainer()
                {
                        return sinavReadingSorusuContainer;
                }

                public void setSinavReadingSorusuContainer( VerticalPanel
sinavReadingSorusuContainer )
                {
                        this.sinavReadingSorusuContainer = 
sinavReadingSorusuContainer;
                }

                public HTML getPanelHeader()
                {
                        return panelHeader;
                }

                public void setPanelHeader( HTML panelHeader )
                {
                        this.panelHeader = panelHeader;
                }

                public VerticalPanel getContainer()
                {
                        return container;
                }

                public void setContainer( VerticalPanel container )
                {
                        this.container = container;
                }

                public DecoratorPanel getSinavReadingWidgetContainer()
                {
                        return sinavReadingWidgetContainer;
                }

                public void setSinavReadingWidgetContainer( DecoratorPanel
sinavReadingWidgetContainer )
                {
                        this.sinavReadingWidgetContainer = 
sinavReadingWidgetContainer;
                }

                public OgrenciReadingWidget getOgrenciReadingWidget()
                {
                        return ogrenciReadingWidget;
                }

                public void setOgrenciReadingWidget( OgrenciReadingWidget
ogrenciReadingWidget )
                {
                        this.ogrenciReadingWidget = ogrenciReadingWidget;
                }



}





*****************************************************


OgrenciReadingSoruSayfasiController.java (The controller class for the
view class)
-------------------------------------------------------------
package tr.edu.gsu.yds.client.controller.ogrenci;

import java.util.ArrayList;
import java.util.List;

import tr.edu.gsu.yds.client.remote.YdsRemoteService;
import tr.edu.gsu.yds.client.remote.YdsRemoteServiceAsync;
import
tr.edu.gsu.yds.client.view.ogrenci.sinavislemleri.OgrenciReadingSoruSayfasi;
import tr.edu.gsu.yds.client.view.widget.OgrenciReadingWidget;
import tr.edu.gsu.yds.shared.domain.Cevap;
import tr.edu.gsu.yds.shared.domain.Sinav;
import tr.edu.gsu.yds.shared.domain.Soru;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.Cookies;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DecoratorPanel;

public class OgrenciReadingSoruSayfasiController
{

        private YdsRemoteServiceAsync   ydsRemoteServiceAsync   =
GWT.create( YdsRemoteService.class );
        private OgrenciReadingSoruSayfasi ogrenciReadingSoruSayfasi;
        private OgrenciReadingWidget ogrenciReadingWidget = new
OgrenciReadingWidget();
        private Button btnTamam= new Button("Tamam");

        int readingSoruSayisi = 0;
        private List<Soru> sorular = new ArrayList<Soru>();
        private List<Soru> readingSorulari = new ArrayList<Soru>();
        private List<DecoratorPanel> dPanelList = new
ArrayList<DecoratorPanel>();
        private List<Cevap> soruSecenekList = new ArrayList<Cevap>();
        private List<OgrenciReadingWidget> ogrenciReadingWidgetList = new
ArrayList<OgrenciReadingWidget>();

        public OgrenciReadingSoruSayfasiController( OgrenciReadingSoruSayfasi
ogrenciReadingSoruSayfasi )
        {
                this.ogrenciReadingSoruSayfasi = ogrenciReadingSoruSayfasi;

        }

        public void send(){

                ogrenciReadingSoruSayfasi.getContainer().clear();
        
ogrenciReadingSoruSayfasi.getSinavReadingSorusuContainer().add( btnTamam );
                ydsRemoteServiceAsync.getSinavList( new 
AsyncCallback<List<Sinav>>()
                {

                        @Override
                        public void onSuccess( List<Sinav> result )
                        {


                                for ( Sinav sinav : result )
                                {

        
if( sinav.getSinavId().toString().equals( Cookies.getCookie( "sinavIdCookie" ) 
) )
                                        {
                                                sorular.addAll( 
sinav.getSorular() );


                                                for ( Soru soru : sorular )
                                                {

                                                        if( 
soru.getSoruTip().equals( "Reading" )){
                                                                
readingSorulari.add( soru );
                                                                
readingSoruSayisi = readingSorulari.size();

                                                                dPanelList.add( 
( new DecoratorPanel() ) );
                                                                
ogrenciReadingWidgetList.add( new OgrenciReadingWidget() );


                                                        }

                                                }

                                        }

                                }
                                Window.alert( "reading soru sayisi : " + 
readingSoruSayisi );
                                Window.alert( "reading soru sayisi : " + 
soruSecenekList );

                                int j=0;


                                for ( OgrenciReadingWidget ogrenciReadingWidget 
:
ogrenciReadingWidgetList )
                                {
        
ogrenciReadingWidget.getReadingTextBox().setHTML( readingSorulari.get( j 
).getSoruMetin() );
                                        
ogrenciReadingWidget.getSoruMetniLabel().setText( j+1 + ".
Reading Sorusu Metni" );
                                        j++;




                                int k=0;
                                int c=0;



                                for ( OgrenciReadingWidget ogrenciReadingWidget 
:
ogrenciReadingWidgetList )
                                {

        
ogrenciReadingWidget.getLblSecenekIcerikA().setText( readingSorulari.get( k 
).getCevaplar().get( c ).getCevapMetin() );
                                                c++;
        
ogrenciReadingWidget.getLblSecenekIcerikB().setText( readingSorulari.get( k 
).getCevaplar().get( c ).getCevapMetin() );
                                                c++;
        
ogrenciReadingWidget.getLblSecenekIcerikC().setText( readingSorulari.get( k 
).getCevaplar().get( c ).getCevapMetin() );
                                                c++;
        
ogrenciReadingWidget.getLblSecenekIcerikD().setText( readingSorulari.get( k 
).getCevaplar().get( c ).getCevapMetin() );
                                                c = 0;
                                                k++;


                                }


                                int i = 0;
                                for ( DecoratorPanel decoratorPanel : 
dPanelList )
                                {

                                        decoratorPanel.setWidget( 
ogrenciReadingWidgetList.get( i ) );

                                        
ogrenciReadingSoruSayfasi.getContainer().add( decoratorPanel );
                                i++;
                                }



                                btnTamam.addClickHandler( new ClickHandler()
                                {

                                        @Override
                                        public void onClick( ClickEvent event )
                                        {

                                                int cevap = 0 ;
                                                if(Window.confirm( "Tüm 
cevaplarınız yollansın mı ? " ))
                                                {       Window.alert( "widget 
Sayisi : " +
ogrenciReadingWidgetList.size() );

                                                int i = 0;
                                                for ( OgrenciReadingWidget 
ogrenciReadingWidget :
ogrenciReadingWidgetList )
                                                {
                                                        Window.alert( "i : " + 
i );
                                                        i++;
                                                        Window.alert( "A  : " +
ogrenciReadingWidget.getRadioButtonSecenekA()
                                                                        
.getValue() );




                                                }



                                                }


                                        }


                                } );




                        }


                        @Override
                        public void onFailure( Throwable caught )
                        {
                                Window.alert("Sinav çekilemedi. (Failure 
Error)");

                        }
                } );



                  ogrenciReadingWidgetList.clear();
        }


}


Any help is so much appreciated.

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to