[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.platform.rcp] Re: Forms API

Thanks for your effort, this helped me a lot!!!
Everything works fine! :o)

> For your border problem, use :
>   toolkit.paintBordersfor( form.getBody() );
> The call must be made on the direct parent of the controls.
In the artice @
http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/pde-ui-home/working/EclipseForms/EclipseForms.html
is toolkit.paintBordersfor(parent); written. False or?

-Rene-


"Mike Evans" <mike.evans@xxxxxxxxxxxxxxxxxx> schrieb im Newsbeitrag 
news:ck3t8b$h5g$1@xxxxxxxxxxxxxx
> For your border problem, use :
>   toolkit.paintBordersfor( form.getBody() );
> The call must be made on the direct parent of the controls.
> Make sure you include :
>   setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TEXT_BORDER);
> on any controls not directly created by the toolkit.
>
> As for the button sizes - they will be the width of the columns but these 
> are not equal unless you explicitly state:
>   layout.makeColumnsEqualWidth=true;
> However this will not be very pretty.  Better would be a separate parent 
> composite for the buttons:
>   Composite buttonsParent = ...
>   buttonsParent.new GridLayout( numberOfButtons );
>   Button button1 = ....
>   button1.setLayoutData( new GridData( 
> GridData.HORIZONTAL_ALIGN_FILL  ) );
>
> Hope this helps,
>
> Mike E.
>
>
>
>
> Teichgraf wrote:
>> I have a View and in that I have some controls. I read the article from:
>> http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/pde-ui-home/working/EclipseForms/EclipseForms.html
>>
>> The problem is, the borders aren't drawn like they should (flat). For the 
>> combobox they are drawn 3d. And for the ListViewer.getList() no borders 
>> are drawn and even for the TextBox, which I created using the Toolkit no 
>> borders are drawn. If I set the flag SWT.BORDER in the Constructor of the 
>> Textbox or the List a 3D Border is drawn not the flat one. 
>> ???????????????????
>> And the 3 last Buttons, should be all in one row everyone has two 
>> columns, so they should be the same size or? But they are not!
>> I have also tested the TableWrapLayout.
>> ??????????????????????
>>
>>
>> Code (without Eventhandling):
>> ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
>>
>> public void createPartControl(Composite parent)
>> {
>>     /*+++++++++++ Form  +++++++++++++++*/
>>     toolkit = new FormToolkit(parent.getDisplay());
>>     form = toolkit.createScrolledForm(parent);
>>
>>     /*++++++++++++++ Layout Form ++++++++++++++++++*/
>>     GridLayout layout = new GridLayout();
>>     layout.numColumns = 6;
>>     form.getBody().setLayout(layout);
>>
>>      /*++++++++++++++ Filter Label ++++++++++++++++++*/
>>     filterLab = toolkit.createLabel(form.getBody(), "Filter:", 
>> SWT.CENTER);
>>     filterLab.setLayoutData(new GridData(GridData.CENTER));
>>
>>      /*++++++++++++++ Filter Combo ++++++++++++++++++*/
>>     filterCombo = new Combo(form.getBody(), SWT.DROP_DOWN);
>>     toolkit.adapt(filterCombo);
>>     GridData filterComboLData = new GridData();
>>     filterComboLData.verticalAlignment = GridData.CENTER;
>>     filterComboLData.horizontalAlignment = GridData.FILL;
>>     filterComboLData.grabExcessHorizontalSpace = true;
>>     filterComboLData.horizontalSpan = 4;
>>     filterCombo.setLayoutData(filterComboLData);
>>     // tested if this works, but no better result:
>> //      filterCombo.setData(FormToolkit.KEY_DRAW_BORDER, 
>> FormToolkit.TEXT_BORDER);
>> //      toolkit.paintBordersFor(parent);
>>
>>      /*++++++++++++++ Sort Button ++++++++++++++++++*/
>>     sortBtn = toolkit.createButton(form.getBody(), "Sorted", SWT.TOGGLE | 
>> SWT.CENTER);
>>     GridData sortBtnLData = new GridData();
>>     sortBtnLData.verticalAlignment = GridData.CENTER;
>>     sortBtnLData.horizontalAlignment = GridData.FILL;
>>     sortBtn.setLayoutData(sortBtnLData);
>>
>>     /*+++++++++++++++ ListEditor +++++++++++++++++++++++*/
>>     viewer = new ListViewer(form.getBody(), SWT.MULTI | SWT.H_SCROLL |
>>                                   SWT.VIRTUAL | SWT.V_SCROLL | 
>> SWT.BORDER);
>>     toolkit.adapt(viewer.getList(), true, true);
>>     GridData viewerLData = new GridData();
>>     viewerLData.grabExcessHorizontalSpace = true;
>>     viewerLData.grabExcessVerticalSpace= true;
>>     viewerLData.horizontalAlignment = GridData.FILL;
>>     viewerLData.verticalAlignment = GridData.FILL;
>>     viewerLData.horizontalSpan = 6;
>>     viewer.getList().setLayoutData(viewerLData);
>>
>>     /*++++++++++++ Textbox +++++++++*/
>>     listEntryTxt = toolkit.createText(form.getBody(), "");
>>     GridData listEntryLData = new GridData();
>>     listEntryLData.horizontalAlignment = GridData.FILL;
>>     listEntryLData.verticalAlignment = GridData.CENTER;
>>     listEntryLData.grabExcessHorizontalSpace = true;
>>     listEntryLData.horizontalSpan = 6;
>>     listEntryTxt.setLayoutData(listEntryLData);
>>
>>     /*++++++++++++++++++ Change Button ++++++++++++++++++++*/
>>     changeBtn = toolkit.createButton(form.getBody(), "Change",
>>                                      SWT.PUSH | SWT.CENTER);
>>     GridData changeBtnLData = new GridData();
>>     changeBtnLData.verticalAlignment = GridData.CENTER;
>>     changeBtnLData.horizontalAlignment= GridData.FILL;
>>     changeBtnLData.grabExcessHorizontalSpace = true;
>>     changeBtnLData.horizontalSpan = 2;
>>     changeBtn.setLayoutData(changeBtnLData);
>>
>>     /*++++++++++++++++++ Insert Button ++++++++++++++++++++*/
>>     insertBtn = toolkit.createButton(form.getBody(), "Insert",
>>                                      SWT.PUSH | SWT.CENTER);
>>     GridData insertBtnLData = new GridData();
>>     insertBtnLData.verticalAlignment = GridData.CENTER;
>>     insertBtnLData.horizontalAlignment = GridData.FILL;
>>     insertBtnLData.grabExcessHorizontalSpace = true;
>>     insertBtnLData.horizontalSpan = 2;
>>     insertBtn.setLayoutData(insertBtnLData);
>>
>>     /*++++++++++++++++++ Delete Button ++++++++++++++++++++*/
>>     deleteBtn = toolkit.createButton(form.getBody(), "Delete",
>>                                      SWT.PUSH | SWT.CENTER);
>>      GridData deleteBtnLData = new GridData();
>>     deleteBtnLData.verticalAlignment = GridData.CENTER;
>>     deleteBtnLData.horizontalAlignment = GridData.FILL;
>>     deleteBtnLData.grabExcessHorizontalSpace = true;
>>     deleteBtnLData.horizontalSpan = 2;
>>     deleteBtn.setLayoutData(deleteBtnLData);
>>
>>     //With or without this, the borders are not drawn for listEntryTxt 
>> and viewer
>>     //filterCombo has a 3D Border!  ???????????????
>>     toolkit.paintBordersFor(parent);
>> }
>>
>> ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
>> Thanks in advance!
>> Rene
>
> -- 
> Mike Evans
> Incremental Ltd.
> www.incremental.eu.com