Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Problem with BLT on openSUSE 11.0

6 views
Skip to first unread message

Jan Kandziora

unread,
Oct 9, 2008, 8:26:55 AM10/9/08
to
Hi all,

The openSuSE 11.0 package of BLT seems to be totally untested, as it refuses
to work together with tcl-8.5.2 given in openSuSE 11.0. I get

$ wish
% load /usr/lib/libBLT.so
version conflict for package "Tcl": have 8.5.2, need exactly 8.5
%

This is really a big bummer. I tried to locate the source that error message
inside the source package, but no luck. Anybody here who has insight into
BLT and know where I can disable that test.

Kind regards

Jan

Alexandre Ferrieux

unread,
Oct 9, 2008, 8:59:30 AM10/9/08
to

Can you describe what in BLT you need ?
A recent thread seems to indicate the thing is dying, and good ideas
inside it are being reborn separately, with a different status
depending on the specific part.

-Alex

Torsten Berg

unread,
Oct 9, 2008, 9:02:49 AM10/9/08
to
On Oct 9, 2:26 pm, Jan Kandziora <j...@gmx.de> wrote:
> Hi all,
>
> The openSuSE 11.0 package of BLT seems to be totally untested, as it refuses
> to work together with tcl-8.5.2 given in openSuSE 11.0. I get
>
> $ wish
> % load /usr/lib/libBLT.so
> version conflict for package "Tcl": have 8.5.2, need exactly 8.5
> %

In general, BLT does not work with Tcl versions above 8.4. So you are
out of luck with Tcl 8.5 right now. There is work underway to make BLT
run with newest Tcl versions but this will take some time to finish.

Torsten

Jan Kandziora

unread,
Oct 9, 2008, 11:42:29 AM10/9/08
to
Alexandre Ferrieux schrieb:

>
> Can you describe what in BLT you need ?
> A recent thread seems to indicate the thing is dying, and good ideas
> inside it are being reborn separately, with a different status
> depending on the specific part.
>
I'd mostly moved away from BLT a while ago like I did with Tix ~3 years ago.
The application still uses the tabset widget, as the seems there is no
other which has scrolling on the tabs so far. It wouldn't be too much
hassle too squezze out BLT of it completly, but it got me at an
uncomfortable moment. For now, it's ok.

After upgrading my development computer to openSUSE 11.0, I found out that I
can't test a certain, still developed application of mine which make use of
BLT on my machine any longer. I solved the problem more or less now just
for my small use case.

Due to my experience with Tix and BLT, I generally abhor binary,
multi-purpose extensions for a while now. Especially BLT had (has?) a lot
of bugs which lead to segfaults, e.g. when giving invalid data to BLT
functions. Workarounds were very hard to find, as the segfualt only showed
up in some situations.


Kind regards

Jan

Alexandre Ferrieux

unread,
Oct 9, 2008, 12:43:05 PM10/9/08
to
On Oct 9, 5:42 pm, Jan Kandziora <j...@gmx.de> wrote:
>
> The application still uses the tabset widget, as the seems there is no
> other which has scrolling on the tabs so far.

What about using one of the new tabbed widgets, and making it a child
of a scrollbar-enslaved clipping frame ?
Wouldn't it look the same ? (no tested, just an abstract idea)

-Alex

Jan Kandziora

unread,
Oct 9, 2008, 1:19:12 PM10/9/08
to
Alexandre Ferrieux schrieb:

No, the scrolling with BLT tabset is that way you can click with middle
mouse button on a tab and drag all tabs in a single tier up and down (or
right an left).

I cannot use another scrollbar for that application. It's a cashregister
frontend with on a 15" 1024x768 pixel monitor with touchscreen. A scrollbar
alongside to the tabs has to be at least ~40 pixels wide to work with
finger touch. It would eat up too much of valueable screen space.

Kind regards

Jan

oak...@bardo.clearlight.com

unread,
Oct 9, 2008, 4:13:22 PM10/9/08
to
On Oct 9, 12:19 pm, Jan Kandziora <j...@gmx.de> wrote:
> Alexandre Ferrieux schrieb:

> > What about using one of the new tabbed widgets, and making it a child
> > of a scrollbar-enslaved clipping frame ?
> > Wouldn't it look the same ? (no tested, just an abstract idea)
>
> No, the scrolling with BLT tabset is that way you can click with middle
> mouse button on a tab and drag all tabs in a single tier up and down (or
> right an left).

I thought this was a touchscreen. How does the user click a middle
mouse button on a touchscreen?

>
> I cannot use another scrollbar for that application. It's a cashregister
> frontend with on a 15" 1024x768 pixel monitor with touchscreen. A scrollbar
> alongside to the tabs has to be at least ~40 pixels wide to work with
> finger touch. It would eat up too much of valueable screen space.
>
> Kind regards
>
> Jan

Instead of using a notebook, just use a series of buttons. Each button
could simply raise the proper frame. Then you can add whatever
bindings you want with just a little bit of effort. From a usability
point of view notebooks with more than a single row of tabs is
generally frowned upon anyway, so perhaps this is an opportunity to
improve your usability.

Jan Kandziora

unread,
Oct 9, 2008, 4:48:41 PM10/9/08
to
oak...@bardo.clearlight.com schrieb:

>>
>> No, the scrolling with BLT tabset is that way you can click with middle
>> mouse button on a tab and drag all tabs in a single tier up and down (or
>> right an left).
>
> I thought this was a touchscreen. How does the user click a middle
> mouse button on a touchscreen?
>
Simple: With $w being a BLT tabset,

bind $w <ButtonPress-1> "+$w scan mark %x %y"
bind $w <Button1-Motion> "$w scan dragto %x %y"

does the trick. I use an additional patch to BLT to lower the hardcoded
(bummer!) dragging magnification from 10 to 1.


>
> Instead of using a notebook, just use a series of buttons. Each button
> could simply raise the proper frame. Then you can add whatever
> bindings you want with just a little bit of effort. From a usability
> point of view notebooks with more than a single row of tabs is
> generally frowned upon anyway, so perhaps this is an opportunity to
> improve your usability.
>

The usability has already proven good with an increasing number of people.

I think, a notebook with with one tier of vertical tabs on the right side is
both very easy to use and to understand. I don't think that any more
buttons will make the UI better. There are far too much on the notebook
panes already...

In the long run, I think I'll have to develop a simple notebook for the
application myself.

Kind regards

Jan


oak...@bardo.clearlight.com

unread,
Oct 9, 2008, 6:09:45 PM10/9/08
to
On Oct 9, 3:48 pm, Jan Kandziora <j...@gmx.de> wrote:

> I think, a notebook with with one tier of vertical tabs on the right side is
> both very easy to use and to understand. I don't think that any more
> buttons will make the UI better. There are far too much on the notebook
> panes already...

Perhaps you misunderstood. I'm not advocating more buttons in addition
to the notebook, I'm suggesting you use buttons *instead* of a
noteobook. That is, the user will click a button rather than a tab. It
can look nearly identical (or completely identical depending on how
much effort you put in to it) but will use stacked frames and a row or
column of buttons rather than a notebook widget.

>
> In the long run, I think I'll have to develop a simple notebook for the
> application myself.

That's what I was suggesting. instead of N tabs in a notebook, have N
frames and N buttons, where each button performs the function of the
tab, and each frame performs the function of the interior of each page
in the notebook. If all of the frames are gridded in the same cell, a
button click merely needs to raise the appropriate frame above the
others.

Instead of buttons you could also use a single canvas and draw the
"tabs" yourself either using canvas primitives or by aligning bitmaps
that you've drawn by hand.

MSE...@gmail.com

unread,
Oct 10, 2008, 3:19:38 AM10/10/08
to

I am using BWidget in an application with it's Notebook widget, just
recently I was overhauling the MouseWheel bindings and accidentaly
scrolled all my tabs off to the left.

I Know Bwidget handles too many tabs by dynamically adding Left/right
scroll arrows (its a canvas with tabs drawn on).
After a few minutes (really) of playing around (scrolling when there
are not tabs left in the direction generates an error) I now have
dynamic scrolling with the mousewheel (as per FireFox) I think you
could easily adapt this to use your touch drag !
I use
NoteBook::_xview $Gui(NoteBook) $step
where Gui(NoteBook) is the widget ID and step is -1/1

By the way if you use buttonPress-1 to drag your tabs how does the
user select a tab ??


Martyn

Jan Kandziora

unread,
Oct 10, 2008, 5:16:51 AM10/10/08
to
MSE...@gmail.com schrieb:

>
> could easily adapt this to use your touch drag !
> I use
> NoteBook::_xview $Gui(NoteBook) $step
> where Gui(NoteBook) is the widget ID and step is -1/1
>
Hmm. Need to have a look a Bwidget...


> By the way if you use buttonPress-1 to drag your tabs how does the
> user select a tab ??
>

bind $w <ButtonPress-1> "+$w scan mark %x %y"
bind $w <Button1-Motion> "$w scan dragto %x %y"

"scan mark" just sets the anchor point for dragging. The script is added,
pressing the button still selects the tab. This is not too disturbing, as
the user wants to switch to another tab anyway. Dragging is bound to button
motion, not pressing.

Kind regards

Jan

Uwe Klein

unread,
Oct 11, 2008, 3:50:52 AM10/11/08
to
Well, the front thing to do would be:

post a bug on blt/tcl with opensuse.

I'le do a check on a Suse 11 box later in the day.
( my daughter hasn't shown a leg yet. )

uwe


Uwe Klein

unread,
Oct 11, 2008, 11:32:58 AM10/11/08
to
I see the same hitch.

>
>
from bltInit.c:
if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, EXACT) == NULL) {
return TCL_ERROR;
}

TCL_VERSION is 8.5

since when is the patchlevel part of the basic version?

uwe

0 new messages