Table of Contents
Be Developer Classifieds are an opportunity for Be developers to tell each other about projects they're working on, are thinking about working on, or would like to work on. Here's your chance to request assistance on a project, or make your talents known to other projects. For more information, check out the Classified Ads section in the Registered Be Developer area. BeWare: R4 Friendly The process for adding and updating BeWare is now R4 friendly. Apps can now have R3 PowerPC, R3 Intel, R4 PowerPC, and R4 Intel FTP URLs, and applications are no longer limited to one "BeOS Version" for compatibility. We will begin posting R4 BeWare on December 21st, so if you have an application posted on BeWare, you should update it to R4 as soon as possible. If you have previously uploaded a Masters Awards entry or a R4 Beta app, please upload them to <ftp://ftp.be.com/incoming/> and add or update its BeWare record so we are sure to post the correct version(s). Adding or updating a BeWare app can only be done through the Registered Developer Area of our website, <http://www.be.com/developers/registered_entry.html>, and you can upload your app to <ftp://ftp.be.com/incoming/>. BE ENGINEERING INSIGHTS: Inspector Detector: The Shelf Inspector By Peter Potrebic -- peter@be.com
Writing Replicants is cool, and as our system evolves we'll
see them used more often. Replicant creation is fairly easy,
but there are some trouble spots. To help you avoid them
I've started writing an application to smooth out the
process: the Shelf Inspector. This app will work as a test
bed for writing both Replicants and containers. It will also
show off some of the new scriptability found in all
Replicants and The first step is to inspect (and manipulate) the contents of a container view. You can find the sample app associated with this text at <ftp://ftp.be.com/pub/samples/application_kit/ShelfInspector.zip>. This app lets you interrogate a This a good time to build and run the Shelf Inspector.
You'll notice when you launch it that it also launches the
The A warning here: not all Replicants want to be cloned this
way, but I thought it was useful to show the possibility.
Such cloning can screw up the Container demo. If you run
into problems it might help to remove the backing store file
for the Container demo (delete
That's about all there is to the app at this point. There will be more in the future. Now let's switch gears and talk about the implementation. The interesting code -- which figures out what Replicants are loaded in some other application -- is in the following functions:
The
We're asking for the Every Replicant living inside a
The
And that's how we get the Replicant's ID, which remains
valid across "saves." Thus, in the Just as every Replicant supports a set of properties, so
does a shelf. Every shelf defines one property called
First we send a The Library list isn't all that useful right now, but it can
let you see if you're properly using some of the advanced
Replicant features such as the That's it for this installment. Have fun programming the BeOS!
DEVELOPERS' WORKSHOP: Memories of Tomorrow By Mikol Ryon -- ryon@be.com "Developers' Workshop" is a weekly feature that provides
answers to our developers' questions, or topic requests.
To submit a question, visit
http://www.be.com/developers/suggestion_box.html.
With BeOS R4 just out of the chute, I've prepared a little
number that shows off a few of its new features:
<ftp://ftp.be.com/pub/samples/intro/xmas.zip>
This is sort of a remake of an old Mac demo, updated in R4
style.
The first new goodie is xres, a tool that lets you
manipulate resource files. With xres you can create resource
files, merge them with applications, and add and remove
resources from those files and applications.
In this example, we'll use xres to load an image into a
resource file for use in code. If you already have a
resource file, perhaps one that contains the apps icon, this
will add the image to the pre-existing resource file:
xres -o xmas x86.rsrc -a bits:666:xmas bmap newr4.jpg xmas x86.rsrc Here, Now execute Next we need to do something with our image:
#include <TranslationUtils.h>
#include <Bitmap.h>
...
BBitmap *icon bitmap =
BTranslationUtils::GetBitmap("xmas bmap"); This takes you from JPEG file to The next code snippet takes a peek at the new #include <String.h>
...
BString path string;
path string+=file path.Path();
path string+="/xmas.aiff";
char snd path[path string.CountChars()+1];
path string.CopyInto(snd path, 0,
path string.CountChars()+1); Also new in R4 is using the Media Kit to play a familiar
sound track (thanks, Baron!). Take a look at Eric Shepherd's
recent article
<http://www.be.com/aboutbe/benewsletter/volume II/Issue45.html#Workshop>
for more about sounding off with the new Media Kit.
Currently, BSoundPlayer assumes a 44kHz sound, which is why
I use this bit of code to tell the constructor to use an
alternate sample rate:
media raw audio format fmt = sound->Format();
BSoundPlayer player(&fmt, ref.name); That brings me to the end of my R4 teaser. My New Year's
resolution is to turn this article file into a generic
reminder daemon, so I can continue to bring you breaking
news as it happens (and I can talk about it without
breaching my NDA).
Release 4 is out and, so far, has been well received. It
covers more hardware configurations, more popular graphics
and storage devices, and the installation process has
improved to the point where it's almost CEO-proof. I say
"almost" because no installation is totally immune to the
idiosyncrasies of users who know too little and too much. Nevertheless, I'm proud of the work the Be team has done in
everything from documentation to a Japanese input method,
from performance to the Media Kit. I encourage you to try
the BeOS for yourself and give us some feedback. Both your
complaints and praises are appreciated and will be shared. Also, please remember the two risk-free features of our
offering. First, you don't have to give up the comforts of
Windows and Microsoft Office; the BeOS lets you dual-boot
our specialized OS and the general-purpose Windows. Second,
we offer a money back guarantee -- with no small print. We
can't afford one unhappy customer. At the very least, we
want you to be able to say to your friends that the BeOS
wasn't for you, but the Be guys are good guys. Web-amplified
word of mouth makes or breaks products and companies. This commercial aside, we have more than ever on our plate,
and the first six months of 1999 will keep us very busy. On
the product side, we'll ship a maintenance release, 4.1, as
soon as practical. The goals and benefits are
straightforward: build on Release 4, fix known bugs, and add
features and hardware coverage that didn't make the
schedule-driven R4. We're eager to prove we're building up
technical momentum. On the marketing side, we'll have at least one Be developer
event to promote the new BeOS features -- the Media Kit in
particular. We'll participate in trade shows including --
but not limited to -- NAMM (National Association of Music
Merchants), the Music Messe in Germany, the NAB show, and,
in June, PC Expo. We took our first Intel release to PC Expo
in 1998. A year later, we'll have shipped two new releases,
and will have "platform- proving" applications to show in
the audio and video spaces. We've made visible milestones
and have clear goals. This is likely to be my last column before the Christmas
holidays. To all our supporters, from investors to Be
developers, members of our team and sympathizers cheering
from the sidelines, my heartfelt thanks and wishes for warm
and happy holidays with your loved ones.
1997 Be Newsletters | 1995 & 1996 Be Newsletters Copyright ©1998 Be, Inc. Be is a registered trademark, and BeOS, BeBox, BeWare, GeekPort, the Be logo and the BeOS logo are trademarks of Be, Inc. All other trademarks mentioned are the property of their respective owners. Comments about this site? Please write us at webmaster@be.com. |