class Fzeet::Windows::MenuMethods::Item

Attributes

id[R]
menu[R]

Public Class Methods

new(menu, id) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 119
def initialize(menu, id) @menu, @id = menu, Command[id] end

Public Instance Methods

checked=(checked) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 143
def checked=(checked)
        Windows.DetonateLastError(-1, :CheckMenuItem,
                @menu.handle,
                @id,
                (checked) ? Windows::MF_CHECKED : Windows::MF_UNCHECKED
        )
end
checked?() click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 137
def checked?
        flags = Windows.DetonateLastError(-1, :GetMenuState, @menu.handle, @id, 0)

        (flags & Windows::MF_CHECKED) == Windows::MF_CHECKED
end
enabled=(enabled) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 129
def enabled=(enabled)
        Windows.DetonateLastError(-1, :EnableMenuItem,
                @menu.handle,
                @id,
                (enabled) ? Windows::MF_ENABLED : Windows::MF_GRAYED
        )
end
enabled?() click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 123
def enabled?
        flags = Windows.DetonateLastError(-1, :GetMenuState, @menu.handle, @id, 0)

        (flags & Windows::MF_GRAYED) != Windows::MF_GRAYED
end
image() click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 182
def image; (Handle.instance?(handle = info(:bitmap)[:hbmpItem])) ? Handle.instance(handle) : nil end
image=(image) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 184
def image=(image)
        self.info = Windows::MENUITEMINFO.new.tap { |mii|
                mii[:fMask] = Windows::MIIM_BITMAP
                mii[:hbmpItem] = image.handle
        }
end
info(mask) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 159
def info(mask)
        Windows.DetonateLastError(0, :GetMenuItemInfo,
                @menu.handle,
                @id,
                0,
                info = Windows::MENUITEMINFO.new.tap { |mii|
                        mii[:cbSize] = mii.size
                        mii[:fMask] = Fzeet.constant(mask, :miim_)
                }
        )

        info
end
info=(mii) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 173
def info=(mii)
        Windows.DetonateLastError(0, :SetMenuItemInfo,
                @menu.handle,
                @id,
                0,
                mii.tap { mii[:cbSize] = mii.size }
        )
end
select(first, last) click to toggle source
# File lib/fzeet/windows/user/Menu.rb, line 151
def select(first, last)
        Windows.DetonateLastError(0, :CheckMenuRadioItem,
                @menu.handle, Command[first], Command[last], @id, 0
        )

        self
end