BobsUI Tutorial for newbie?

yampa at yampa at
Sun Feb 23 19:58:50 UTC 2003


Thanks for trying BobsUI. There is no tutorial yet.  I will make one and up=
load it to the swiki, but right now I am very busy and will not be able to =
work on BobsUI for a couple of months.

Until I write the tutorial, there are a few things you can look at if you w=
ant to experiment.
1. If you haven't done this, download BobsUI from SqueakMap.

2. The screenshot app is called ExampleRolodex.  You can open this by typin=
g "ExampleRolodex open" in a workspace, highlighting it, and selecting "do =
it" from the workspace menu.

3. The ExampleRolodex is the most complete example I have of how most BobsU=
I windows will be written.  It has an application model, (ExampleRolodex), =
composite models, and elements.  You can start at ExampleRolodex and find h=
ow the models interact.

4.  Developing visual components in BobsUI is unlike any other tool I have =
ever used, so it might be confusing for new BobsUI users.  In order to deve=
lop a BobsUI window, you do not start with a window and add components to i=
t.  You start with components, save them, and when they are done add them t=
o a window.  The last thing you do is save the window.  With models and vis=
ual components, you are always building from small to large in BobsUI.

5.  The visual components in BobsUI are created from the bobsUI menu, which=
 is found on the World menu. You create a component, like a button, and dro=
p it onto the desktop.  Then you change the settings to what you want using=
 the viewer button on its halo.  When you are done, you push the bottom lef=
t purple button on its halo, and save it to a repository.=20

6.  When visual components are saved, they are written in XML format to wha=
t I called a repository.  You can browse the repositories with the reposito=
ry browser, which is located on the bobsUI menu.  On the browser there are =
four panes from left to right.  These panes are:

    - Builders      The builder that you will use to build components in th=
e browser.
    - Repositories  Where components are written.  There are two repositori=
es here, one for the view used by the bobsUI tools, and one for example win=
dows.  You can also create your own.  Whichever repository is set to defaul=
t is the one you will write components in.

    - Categories    The type of documents to make searching easier.
    - Documents     These are the names of the components. Selecting these =
will display their XML in the pane below.

For example, the XML document that represents the ExampleRolodex window is =
located in Examples, window, rolodexExampleView.

You can open any document in the repository for editing by selecting its na=
me and selecting "open" on the document name pane's menu.=20

There are other examples in the download.  Mostly they are there for my tes=
ting purposes, but they are small enough that you can look at them and lear=
n something. They are much less complex than the ExampleRolodex. You can se=
nd "open" to any of these models in a workspace.  These include:


I hope this gives you something to look at until I can write proper documen=
tation. =20

I have two warnings.  One is the next update to BobsUI will likely break an=
y windows you create in the current version, so don't create anything impor=
tant, because you might have to delete it. I hope to release the next versi=
on in a few months.  After that change, BobsUI will be more stable and safe=
 to use. =20

The second warning is that the goal for BobsUI is to be able to write busin=
ess applications in it, but it is not close to that goal yet.  If you look =
closely at the code you will find bugs, bad code, and things which are only=
 beginning to be implemented that need a lot of work.  Eventually these thi=
ngs will be worked on, but today it is only about half finished.

If you have any questions, you can send an email.

- Doug

> Hi:

I'm starting with BobsUI, does exist in some place a Tutorial to make
things (as the screenshot app in the swiki page)?


Germ=C3=A1n S. Arduino


More information about the Squeak-dev mailing list