BusyCursor.h
gtkmm/window.h
gdkmm/cursor.h
map
bakery.h
map
gdkmm/cursor.h
gtkmm/window.h
BusyCursor.h
bakery.h
BusyCursor.h
Bakery::BusyCursor
Bakery

    /*
    *Copyright2000MurrayCumming
    *
    *Thislibraryisfreesoftware;youcanredistributeitand/or
    *modifyitunderthetermsoftheGNULibraryGeneralPublic
    *LicenseaspublishedbytheFreeSoftwareFoundation;either
    *version2oftheLicense,or(atyouroption)anylaterversion.
    *
    *Thislibraryisdistributedinthehopethatitwillbeuseful,
    *butWITHOUTANYWARRANTY;withouteventheimpliedwarrantyof
    *MERCHANTABILITYorFITNESSFORAPARTICULARPURPOSE.SeetheGNU
    *LibraryGeneralPublicLicenseformoredetails.
    *
    *YoushouldhavereceivedacopyoftheGNULibraryGeneralPublic
    *Licensealongwiththislibrary;ifnot,writetotheFree
    *SoftwareFoundation,Inc.,675MassAve,Cambridge,MA02139,USA.
    */

    #ifndefBAKERY_UTILITIES_BUSYCURSOR_H
    #defineBAKERY_UTILITIES_BUSYCURSOR_H

    #include<gtkmm/window.h>
    #include<gdkmm/cursor.h>
    #include<map>

    namespaceBakery
    {

    classBusyCursor
    {
    public:
    BusyCursor(Gtk::Window&window,Gdk::CursorTypecursor_type=Gdk::WATCH);

    BusyCursor(Gtk::Window*window,Gdk::CursorTypecursor_type=Gdk::WATCH);

    virtual~BusyCursor();

    protected:

    voidinit();
    voidforce_gui_update();

    Gdk::Cursorm_Cursor;
    Gtk::Window*m_pWindow;
    Glib::RefPtr<Gdk::Window>m_refWindow;

    typedefstd::map<Gtk::Window*,Gdk::Cursor>type_map_cursors;
    statictype_map_cursorsm_map_cursors;
    Gdk::Cursorm_old_cursor;
    boolm_old_cursor_valid;
    };

    }//namespaceBakery

    #endif//BAKERY_UTILITIES_BUSYCURSOR_H