Skip to Content
Volume 6A: Motif Programming Manual
book

Volume 6A: Motif Programming Manual

by David Brennan, Dan Heller, Paula Ferguson
September 1993
Intermediate to advanced
1014 pages
28h 26m
English
O'Reilly Media, Inc.
Content preview from Volume 6A: Motif Programming Manual
10.4 Implementing True Application−defined Scrolling
In this section, we pull together what we've learned in this chapter and put it to work to implement
application−defined scrolling. We are going to use an example that displays a large number of individual bitmaps in a
ScrolledWindow, so that the user can view all of the bitmaps by scrolling the window. The intent is to make the
appearance and functionality of the ScrolledWindow mimic the automatic scrolling mode as much as possible.
There are actually several ways to go about writing this program, depending on the constraints that we impose. The
simplest method is to render each bitmap into one large pixmap and use that pixmap as the XmNlabelPixmap for a
Label widget. The Label widget can then be used as the work window for an automatic ScrolledWindow. This design
is similar to most of the other examples of ScrolledWindows used throughout the book. However, we want to add a
constraint such that each incremental scrolling action causes the display to shift by one bitmap cell, so that the top and
left sides of the viewport always show a full bitmap. In other words, no partially−displayed bitmaps are allowed.
Furthermore, when the user drags the slider, we want the display to scroll in cell−increments, not pixel−by−pixel.
The constraints that we just described define the behavior that the List and Text widgets use for their own displays.
Like those widgets, our example program has a conceptual unit size that is represented by the object ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Volume 7A: XView Programming Manual

Volume 7A: XView Programming Manual

Dan Heller

Publisher Resources

ISBN: 9780596000431