Example #1
0
 //-------------------------------------------------
 //  interface_post_stop - final cleanup
 //-------------------------------------------------
 public override void interface_post_stop()
 {
     // dereference the palette
     if (m_palette != null)
     {
         m_palette.deref();
     }
 }
Example #2
0
        // operations

        /**
         * @fn  void bitmap_t::set_palette(palette_t *palette)
         *
         * @brief   -------------------------------------------------
         *            set_palette -- associate a palette with a bitmap
         *          -------------------------------------------------.
         *
         * @param [in,out]  palette If non-null, the palette.
         */
        public void set_palette(palette_t palette)
        {
            // first dereference any existing palette
            if (m_palette != null)
            {
                m_palette.deref();
                m_palette = null;
            }

            // then reference any new palette
            if (palette != null)
            {
                palette.ref_();
                m_palette = palette;
            }
        }
Example #3
0
        public void Dispose()
        {
            //throw new emu_unimplemented();
#if false
            // first locate and remove ourself from our palette's list
            for (palette_client **curptr = &m_palette.m_client_list; *curptr != NULL; curptr = &(*curptr)->m_next)
            {
                if (*curptr == this)
                {
                    *curptr = m_next;
                    break;
                }
            }
#endif

            // now deref the palette
            m_palette.deref();

            m_isDisposed = true;
        }