BlackBerry Forums Support Community
              

Closed Thread
 
Thread Tools
Old 05-20-2008, 10:22 PM   #1
CELITE
Thumbs Must Hurt
 
Join Date: Dec 2005
Model: 8310
Carrier: Rogers
Posts: 138
Default Transparent "window" on the ribbon.

Please Login to Remove!

There was a post a while back about creating a window that was slightly transparent and overlays the ribbon. The purpose of this was to create a clock application (I think?) that sits on top of the homescreen for easy reference.

I posted a solution in a completely unrelated thread but this should probably be in separate thread (the original one was closed).

Here's the code:

Code:
class FloatingScreenMain extends UiApplication {
    
    public static void main( String[] args ) {
        FloatingScreenMain app = new FloatingScreenMain();
        app.enterEventDispatcher();
    }
    
    FloatingScreenMain() {    
    
        /**
         * Putting this on the event stack instead of pushing a screen from main 
         * ensures that the backbuffer is not cleared and that the main ribbon
         * continues to repaint.
         */
        UiApplication.getUiApplication().invokeLater( new Runnable() {
            public void run() {
                CustomPopupScreen popup = new CustomPopupScreen();
                pushScreen( popup );
            }
        });
    }
} 


class CustomPopupScreen extends Screen {
    
    private final static int _CUSTOM_SIZE   = 100;
    private final static int _ALPHA         = 0xBF; // 75% alpha
    private final static int _X             = ( Display.getWidth() - _CUSTOM_SIZE ) >> 1;
    private final static int _Y             = ( Display.getHeight() - _CUSTOM_SIZE ) >> 1; 
    
    
    CustomPopupScreen() {    
        super( new VerticalFieldManager( Manager.NO_VERTICAL_SCROLL | Manager.NO_VERTICAL_SCROLLBAR ) );
        add( new LabelField( "Floating Popup" ) );
    }
    
    protected void sublayout( int width, int height ) {
        setExtent( _CUSTOM_SIZE, _CUSTOM_SIZE );
        setPosition( _X, _Y );
        layoutDelegate( _CUSTOM_SIZE, _CUSTOM_SIZE );
    }
    
    protected void paintBackground( Graphics g ) {
        XYRect myExtent = getExtent();
        int color = g.getColor();
        int alpha = g.getGlobalAlpha();
        g.setGlobalAlpha( _ALPHA );
        g.setColor( 0xE3E3E3 );
        g.fillRect( 0, 0, myExtent.width, myExtent.height );
        g.setColor( color );
        g.setGlobalAlpha( alpha );
    }
    
    protected boolean keyDown( int keycode, int status ) {
        if ( Keypad.key( keycode ) == Keypad.KEY_ESCAPE ) {
            close();
            return true;
        }
        return super.keyDown( keycode, status );
    }
        
    
    
}
Offline  
Closed Thread



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


Nextiva X-835 SIP Color Deskset VoIP Phone Black New In Box picture

Nextiva X-835 SIP Color Deskset VoIP Phone Black New In Box

$44.99



Polycom Vvx 601 VoIP 16 Line Business Phone 4.3

Polycom Vvx 601 VoIP 16 Line Business Phone 4.3" HD Touchscreen PoE With Stand

$28.95



Digium D40 IP Desk Phone with Stand Warranty 2-Line SIP HD VoIP Voice 1TELD040LF picture

Digium D40 IP Desk Phone with Stand Warranty 2-Line SIP HD VoIP Voice 1TELD040LF

$21.98



Lot of 8 -Grandstream GXP2130 IP Wall Phone Color Gigabit Enterprise HD VoIP PoE picture

Lot of 8 -Grandstream GXP2130 IP Wall Phone Color Gigabit Enterprise HD VoIP PoE

$200.00



Mitel 5330e VoIP Dual Mode Gigabit Phone - Black picture

Mitel 5330e VoIP Dual Mode Gigabit Phone - Black

$15.95



Vtech ErisTerminal VSP861 Touchscreen Color Desktop - Voice-Over-IP VOIP Phone picture

Vtech ErisTerminal VSP861 Touchscreen Color Desktop - Voice-Over-IP VOIP Phone

$14.99







Copyright © 2004-2016 BlackBerryForums.com.
The names RIM © and BlackBerry © are registered Trademarks of BlackBerry Inc.