Stock images as buttons example of DUI code

DUI version 00.07

Welcome
What is DUI
Screenshots
Contacts
DUI
Downloads
Windows pack
nightly
Tutorial
Diffs to GTK
Events
Class view
Class Index
Class List
OpenGL
To do
roadmap
To do
Known Problems
Links
Site pages
Links
Acknowledgments

StockButtons.png

stock buttons

/*
 * This file is part of dui.
 * 
 * dui is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2.1 of the License, or
 * (at your option) any later version.
 * 
 * dui is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with dui; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

module test.TestStock;

import dui.All;

/**
 * This tests the DUI the Stock images in button
 */
class TestStock : ScrolledWindow , MouseEnterListener
{
    
    this()
    {
        debug(1)
        {
            printf("instantiating TestStock\n");
        }

        // make sure the dispatcher is initialized
        Dispatcher dispatcher = Dispatcher.getDispatcher();

        Table table = new Table(2,2,false);
        int col = 0;
        int row = 0;
        
        Color color = new Color(0,255,255);
        
        for(Stock stockID=Stock.min ; stockID<=Stock.max ; stockID++)
        {
            Button button = new Button(stockID);
            //button.setCursor(CursorType.BASED_ARROW_DOWN);
            //button.setBackground(color);
            //Cursor cursor = new Cursor(CursorType.CLOCK);
            //button.setCursor(cursor);
            dispatcher.addMouseEnterListener(this,button);
            table.attach(button,col,col+1,row,row+1,AttachOptions.SHRINK,AttachOptions.SHRINK,2,2);
            ++row;
            if ( row == 16 )
            {
                row = 0;
                ++col;
            }
        }
        
        addWithViewport(table);

    }

    bit enterNotifyCallback(Widget widget, EventCrossing event)
    {
        //printf("TestStock.mouseEnterNotify %X\n",widget);
        Cursor cursor = new Cursor(CursorType.MAN);
        widget.setCursor(cursor);
        return true;
    }
    bit leaveNotifyCallback(Widget widget, EventCrossing event)
    {
        //  ("TestStock.mouseLeaveNotify\n");
        widget.resetCursor();
        return true;
    }


}

Generated on Sun Dec 21 02:47:16 2003 for DUI by doxygen 1.3.4