When I am using a construct such as the following:

builder := UITheme exampleBuilder.
 dialog := (builder newPluggableDialogWindow: 'Example basic controls')
useDefaultOKCancelButton.
.
.
.

 model: nil.
 builder openModal: dialog.

is there another option other than "openModel", to use to open the dialog?


On Sat, Mar 31, 2012 at 5:34 PM, S Krish
<[email protected]>wrote:

> I hope this might help...
>
> Simple SUnit tests.. through basic morphic...
>
> LayoutTests and MorphicWidgetTests would be nice.. #testModelAndView would
> be basics of what might help...
>
> But they are really the very rudimentary stuff.. Always use Model
> /controller - presenter along with the View/ UI class. makes it easier..
>
>
>
> On Sun, Apr 1, 2012 at 2:54 AM, S Krish <[email protected]
> > wrote:
>
>> I am not sure I would recommend using Builder.. except for playing
>> initially around.
>>
>> It is better to simply use the basic capabilities in Morph and tie it up
>> with TableLayout policy.. Proportional Layout
>>
>> In that you do have a better chance of working these issues out once you
>> get the core behaviors, the API/ methods of each of the morphs. That said
>> many of these morphs are not perfect and will require patience to rip
>> through the attributes you need and save to inst vars et al.
>>
>> Maybe sometime soon I can package a clean MorphicView system that will
>> alleviate this pain of figuring out Morphic.. but its fun once you figure
>> it out..
>>
>>
>>
>>
>> On Sat, Mar 31, 2012 at 7:44 AM, Nelson Pingitore <
>> [email protected]> wrote:
>>
>>> Hello Pharo Users.  I am seeking help with the interaction with widgets
>>> or morphs like Checkboxes, and Radio buttons and Texteditor boxes, I am
>>> creating a User Settings Class to learn how to use Pharo. I copied some
>>> core widgets from the UITheme exampleBasicControls. I would like to know,
>>> starting with the code below, how to detect if the User has selected the
>>> "Ok" or "Cancel" button in the lower right of the form, and then if the
>>> user selects "Ok" how do I detect the state of the widgets (Checkboxes,
>>> Radio buttons, or Texteditor), and save those states to instance variables?
>>>
>>> |dialog builder radioModel treeModel CheckboxA|
>>>  builder := UITheme exampleBuilder.
>>>  dialog := (builder newPluggableDialogWindow: 'Example basic controls')
>>> useDefaultOKCancelButton.
>>>  radioModel := ExampleRadioButtonModel new.
>>>  treeModel := ValueHolder new contents: TextStyle actualTextStyles
>>> explorerContents.
>>>  dialog contentMorph:
>>>  (
>>>   (
>>>    dialog newRow:
>>>    {
>>>     dialog newLabelGroup:
>>>     {
>>>      'Normal Label'->(dialog newLabel: 'A Label').
>>>      'Normal Button'->(dialog newButtonFor: nil action: nil label: 'A
>>> Button' help: 'This is a button').
>>>      'Default Button'->((dialog newButtonFor: nil action: nil label:
>>> 'Default Button' help: 'This is a default button') isDefault: true).
>>>      'Selected Button'->(dialog newButtonFor: (ValueHolder new contents:
>>> true) getState: #contents
>>>        action: nil arguments: #() getEnabled: nil label: 'A Button'
>>> help: 'This is a selected button').
>>>      'Checkbox A'->(dialog newCheckboxFor: (ValueHolder new contents:
>>> true)
>>>        getSelected: #contents setSelected: #contents: label: 'A
>>> Checkbox' help: 'This is a checkbox').
>>>      'Checkbox B'->(dialog newCheckboxFor: (ValueHolder new contents:
>>> true)
>>>        getSelected: #contents setSelected: #contents: label: 'A
>>> Checkbox' help: 'This is a checkbox').
>>>      'Checkbox C'->(dialog newCheckboxFor: (ValueHolder new contents:
>>> true)
>>>        getSelected: #contents setSelected: #contents: label: 'A
>>> Checkbox' help: 'This is a checkbox').
>>>      'Radio Buttons'->
>>>      (
>>>       (
>>>        dialog newColumn:
>>>        {
>>>         (dialog newRadioButtonFor: radioModel getSelected: #isLeft
>>> setSelected: #beLeft label: 'Left' help: 'This is a radio buton').
>>>         (dialog newRadioButtonFor: radioModel getSelected: #isCenter
>>> setSelected: #beCenter label: 'Center' help: 'This is a radio buton').
>>>         (dialog newRadioButtonFor: radioModel getSelected: #isRight
>>> setSelected: #beRight label: 'Right' help: 'This is a radio buton')
>>>        }
>>>       )
>>>      vResizing: #shrinkWrap
>>>      ).
>>>      'Text Entry'->(dialog newTextEntryFor: (ValueHolder new contents:
>>> 'Hello')  getText: #contents setText: #contents: help: 'This is a text
>>> entry').
>>>      'Slider'->(dialog newSliderFor: (ValueHolder new contents: 0.5)
>>>  getValue: #contents setValue: #contents: help: 'This is a slider').
>>>      'Bump Temp'->(dialog newTextEntryFor: (ValueHolder new contents:
>>> '75') getText: #contents setText: #contents: help: 'This is the random
>>> shift').
>>>     }.
>>>     dialog newVerticalSeparator.
>>>     dialog newLabelGroup:
>>>     {
>>>      'Drop List'->(dialog newDropListFor: (ListModel new list: #('One'
>>> 'Two' 'Three' 'Four'))
>>>        list: #list getSelected: #selectionIndex setSelected:
>>> #selectionIndex: help: 'This is a drop list').
>>>      'Normal List'->
>>>      (
>>>       (
>>>        dialog newListFor: (ListModel new list: #('One' 'Two' 'Three'
>>> 'Four'); selectionIndex: 3) list: #list selected: #selectionIndex
>>> changeSelected: #selectionIndex:
>>>        help: 'This is a list'
>>>       )
>>>       minWidth: 120
>>>      ).
>>>     }.
>>>    }
>>>   )
>>>   vResizing: #spaceFill
>>>  );
>>>  model: nil.
>>>  builder openModal: dialog.
>>>
>>
>>
>

Reply via email to