Class: Object (Ruby 2.2.2)
Description: Class : Object - Ruby 2.2.2

- Home
- Core 2.2.2
- Std-lib 2.2.2
- Downloads

Support for the Ruby 2.2 series has ended. See here for reference.

### Home Classes Methods

### In Files

- tk/lib/multi-tk.rb
- tk/lib/tk.rb
- tk/lib/tk/autoload.rb
- tk/lib/tk/canvastag.rb
- tk/lib/tk/dialog.rb
- tk/lib/tk/menu.rb
- tk/lib/tk/msgcat.rb
- tk/lib/tk/optiondb.rb
- tk/lib/tk/root.rb
- tk/lib/tk/textimage.rb
- tk/lib/tk/textmark.rb
- tk/lib/tk/texttag.rb
- tk/lib/tk/textwindow.rb
- tk/lib/tk/timer.rb
- tk/lib/tk/virtevent.rb
- tk/lib/tkclass.rb
- tk/lib/tkextlib/pkg_checker.rb
- tk/lib/tkextlib/tile.rb
- tk/old-extconf.rb

### Parent

BasicObject

### Namespace

- MODULE Object::TkSystemMenu
- MODULE Object::Ttk
- CLASS Object::TkNamedVirtualEvent

### Methods

- #Mainloop
- #TkGrid
- #TkPack
- #TkPlace
- #__method_missing_alias_for_MultiTkIp__
- #check_pkg
- #check_tcltk_version
- #find_X11
- #find_framework
- #find_tcl
- #find_tcltk_header
- #find_tk
- #get_pkg_list
- #help_msg
- #method_missing
- #parse_tclConfig
- #pthread_check
- #subdir_check

### Included Modules

- Tk::TOPLEVEL_ALIASES

### Class/Module Index

Quicksearch

- Arc
- Bitmap
- BitmapImage
- Checkbutton
- CloneMenu
- Font
- Grid
- INTERP
- Labelframe
- Line
- MenuButton
- MultiTkIp
- MultiTkIp::Command_Queue
- MultiTkIp::ThreadGroup
- MultiTkIp_OK
- MultiTkIp_PseudoToplevel_Evaluable
- Object
- Object::TkNamedVirtualEvent
- Object::TkSystemMenu
- Object::Ttk
- OptionMenuButton
- Oval
- Pack
- Panedwindow
- PhotoImage
- Place
- Polygon
- Radiobutton
- Rectangle
- RemoteTkIp
- Selection
- Spinbox
- TclTk
- TclTkCallback
- TclTkCommand
- TclTkImage
- TclTkInterpreter
- TclTkIp
- TclTkLib
- TclTkLib::EventFlag
- TclTkLib::RELEASE_TYPE
- TclTkLib::VarAccessFlag
- TclTkLibCommand
- TclTkObject
- TclTkVariable
- TclTkWidget
- TextItem
- Tk
- Tk::BLT
- Tk::BLT::Barchart
- Tk::BLT::Bitmap
- Tk::BLT::Busy
- Tk::BLT::Busy::Shield
- Tk::BLT::Container
- Tk::BLT::CutBuffer
- Tk::BLT::DnD
- Tk::BLT::DragDrop
- Tk::BLT::DragDrop::DnD_Handle
- Tk::BLT::DragDrop::PackageCommand
- Tk::BLT::DragDrop::PackageCommand::ValidateArgs
- Tk::BLT::DragDrop::SiteCommand
- Tk::BLT::DragDrop::SiteCommand::ValidateArgs
- Tk::BLT::DragDrop::Token
- Tk::BLT::EPS
- Tk::BLT::Graph
- Tk::BLT::GraphCommand
- Tk::BLT::Hiertable
- Tk::BLT::Htext
- Tk::BLT::PlotComponent
- Tk::BLT::PlotComponent::Axis
- Tk::BLT::PlotComponent::Bar
- Tk::BLT::PlotComponent::BitmapMarker
- Tk::BLT::PlotComponent::Crosshairs
- Tk::BLT::PlotComponent::Element
- Tk::BLT::PlotComponent::GridLine
- Tk::BLT::PlotComponent::ImageMarker
- Tk::BLT::PlotComponent::Legend
- Tk::BLT::PlotComponent::Line
- Tk::BLT::PlotComponent::LineMarker
- Tk::BLT::PlotComponent::Marker
- Tk::BLT::PlotComponent::OptKeys
- Tk::BLT::PlotComponent::Pen
- Tk::BLT::PlotComponent::PolygonMarker
- Tk::BLT::PlotComponent::Postscript
- Tk::BLT::PlotComponent::TextMarker
- Tk::BLT::PlotComponent::WindowMarker
- Tk::BLT::Printer
- Tk::BLT::Spline
- Tk::BLT::Stripchart
- Tk::BLT::Table
- Tk::BLT::Table::TableContainer
- Tk::BLT::Tabnotebook
- Tk::BLT::Tabnotebook::Tab
- Tk::BLT::Tabset
- Tk::BLT::Tabset::NamedTab
- Tk::BLT::Tabset::Tab
- Tk::BLT::Ted
- Tk::BLT::Tile
- Tk::BLT::Tile::Button
- Tk::BLT::Tile::CheckButton
- Tk::BLT::Tile::Checkbutton
- Tk::BLT::Tile::Frame
- Tk::BLT::Tile::Label
- Tk::BLT::Tile::RadioButton
- Tk::BLT::Tile::Radiobutton
- Tk::BLT::Tile::Scrollbar
- Tk::BLT::Tile::Toplevel
- Tk::BLT::Tree
- Tk::BLT::Tree::Node
- Tk::BLT::Tree::Notify
- Tk::BLT::Tree::Tag
- Tk::BLT::Tree::Trace
- Tk::BLT::Treeview
- Tk::BLT::Treeview::ConfigMethod
- Tk::BLT::Treeview::FindExecFlagValue
- Tk::BLT::Treeview::FindExecFlagValue::ValidateArgs
- Tk::BLT::Treeview::Node
- Tk::BLT::Treeview::OpenCloseCommand
- Tk::BLT::Treeview::OpenCloseCommand::ValidateArgs
- Tk::BLT::Treeview::Tag
- Tk::BLT::Treeview::TagOrID_Methods
- Tk::BLT::Vector
- Tk::BLT::VectorAccess
- Tk::BLT::Watch
- Tk::BLT::WinOp
- Tk::BLT::Winop
- Tk::BWidget
- Tk::BWidget::ArrowButton
- Tk::BWidget::Bitmap
- Tk::BWidget::Button
- Tk::BWidget::ButtonBox
- Tk::BWidget::ComboBox
- Tk::BWidget::Dialog
- Tk::BWidget::DragSite
- Tk::BWidget::DropSite
- Tk::BWidget::DynamicHelp
- Tk::BWidget::Entry
- Tk::BWidget::Label
- Tk::BWidget::LabelEntry
- Tk::BWidget::LabelFrame
- Tk::BWidget::ListBox
- Tk::BWidget::ListBox::Event_for_Items
- Tk::BWidget::ListBox::Item
- Tk::BWidget::MainFrame
- Tk::BWidget::MessageDlg
- Tk::BWidget::NoteBook
- Tk::BWidget::NoteBook::Event_for_Tabs
- Tk::BWidget::PagesManager
- Tk::BWidget::PanedWindow
- Tk::BWidget::PanelFrame
- Tk::BWidget::PasswdDlg
- Tk::BWidget::ProgressBar
- Tk::BWidget::ProgressDlg
- Tk::BWidget::ScrollView
- Tk::BWidget::ScrollableFrame
- Tk::BWidget::ScrolledWindow
- Tk::BWidget::SelectColor
- Tk::BWidget::SelectColor::Dialog
- Tk::BWidget::SelectColor::MenuButton
- Tk::BWidget::SelectColor::Menubutton
- Tk::BWidget::SelectFont
- Tk::BWidget::SelectFont::Dialog
- Tk::BWidget::SelectFont::Toolbar
- Tk::BWidget::Separator
- Tk::BWidget::SpinBox
- Tk::BWidget::StatusBar
- Tk::BWidget::TitleFrame
- Tk::BWidget::Tree
- Tk::BWidget::Tree::Event_for_Items
- Tk::BWidget::Tree::Node
- Tk::BWidget::Widget
- Tk::BinaryString
- Tk::Busy
- Tk::Button
- Tk::Canvas
- Tk::CheckButton
- Tk::Clock
- Tk::EncodedString
- Tk::Encoding
- Tk::Entry
- Tk::Frame
- Tk::HTML_Widget
- Tk::HTML_Widget::ClippingWindow
- Tk::ICONS
- Tk::Img
- Tk::Img::BMP
- Tk::Img::DTED
- Tk::Img::GIF
- Tk::Img::ICO
- Tk::Img::JPEG
- Tk::Img::PCX
- Tk::Img::PIXMAP
- Tk::Img::PNG
- Tk::Img::PPM
- Tk::Img::PS
- Tk::Img::Raw
- Tk::Img::SGI
- Tk::Img::SUN
- Tk::Img::TGA
- Tk::Img::TIFF
- Tk::Img::WINDOW
- Tk::Img::XBM
- Tk::Img::XPM
- Tk::Itcl
- Tk::Itcl::ItclObject
- Tk::ItemValidateConfigure
- Tk::Itk
- Tk::Itk::Archetype
- Tk::Itk::Component
- Tk::Itk::Toplevel
- Tk::Itk::Widget
- Tk::Iwidgets
- Tk::Iwidgets::Buttonbox
- Tk::Iwidgets::Calendar
- Tk::Iwidgets::Calendar::CalendarCommand
- Tk::Iwidgets::Calendar::CalendarCommand::ValidateArgs
- Tk::Iwidgets::Canvasprintbox
- Tk::Iwidgets::Canvasprintdialog
- Tk::Iwidgets::Checkbox
- Tk::Iwidgets::Combobox
- Tk::Iwidgets::Dateentry
- Tk::Iwidgets::Datefield
- Tk::Iwidgets::Dialog
- Tk::Iwidgets::Dialogshell
- Tk::Iwidgets::Disjointlistbox
- Tk::Iwidgets::Entryfield
- Tk::Iwidgets::Entryfield::EntryfieldValidate
- Tk::Iwidgets::Entryfield::EntryfieldValidate::ValidateArgs
- Tk::Iwidgets::Extbutton
- Tk::Iwidgets::Extfileselectionbox
- Tk::Iwidgets::Extfileselectiondialog
- Tk::Iwidgets::Feedback
- Tk::Iwidgets::Fileselectionbox
- Tk::Iwidgets::Fileselectiondialog
- Tk::Iwidgets::Finddialog
- Tk::Iwidgets::Hierarchy
- Tk::Iwidgets::Hierarchy::IconCommand
- Tk::Iwidgets::Hierarchy::IconCommand::ValidateArgs
- Tk::Iwidgets::Hierarchy::IndicatorCommand
- Tk::Iwidgets::Hierarchy::IndicatorCommand::ValidateArgs
- Tk::Iwidgets::Hierarchy::QueryCommand
- Tk::Iwidgets::Hierarchy::QueryCommand::ValidateArgs
- Tk::Iwidgets::Hyperhelp
- Tk::Iwidgets::Labeledframe
- Tk::Iwidgets::Labeledwidget
- Tk::Iwidgets::Mainwindow
- Tk::Iwidgets::Menubar
- Tk::Iwidgets::Messagebox
- Tk::Iwidgets::Messagedialog
- Tk::Iwidgets::Notebook
- Tk::Iwidgets::Optionmenu
- Tk::Iwidgets::Panedwindow
- Tk::Iwidgets::Promptdialog
- Tk::Iwidgets::Pushbutton
- Tk::Iwidgets::Radiobox
- Tk::Iwidgets::Scopedobject
- Tk::Iwidgets::Scrolledcanvas
- Tk::Iwidgets::Scrolledframe
- Tk::Iwidgets::Scrolledhtml
- Tk::Iwidgets::Scrolledlistbox
- Tk::Iwidgets::Scrolledtext
- Tk::Iwidgets::Scrolledwidget
- Tk::Iwidgets::Selectionbox
- Tk::Iwidgets::Selectiondialog
- Tk::Iwidgets::Shell
- Tk::Iwidgets::Spindate
- Tk::Iwidgets::Spinint
- Tk::Iwidgets::Spinner
- Tk::Iwidgets::Spinner::EntryfieldValidate
- Tk::Iwidgets::Spinner::EntryfieldValidate::ValidateArgs
- Tk::Iwidgets::Spintime
- Tk::Iwidgets::Tabnotebook
- Tk::Iwidgets::Tabset
- Tk::Iwidgets::Timeentry
- Tk::Iwidgets::Timefield
- Tk::Iwidgets::Toolbar
- Tk::Iwidgets::Watch
- Tk::Label
- Tk::LabelFrame
- Tk::Listbox
- Tk::Mac
- Tk::Mac::IconBitmap
- Tk::MacResource
- Tk::Menu
- Tk::Menu::TkInternalFunction
- Tk::MenuClone
- Tk::Menubutton
- Tk::Message
- Tk::OptionMenubutton
- Tk::OptionMenubutton::OptionMenu
- Tk::OptionObj
- Tk::PanedWindow
- Tk::RadioButton
- Tk::Root
- Tk::Scale
- Tk::Scrollable
- Tk::Scrollbar
- Tk::Spinbox
- Tk::Spinbox::SpinCommand
- Tk::Spinbox::SpinCommand::ValidateArgs
- Tk::SysMenu_Apple
- Tk::SysMenu_Help
- Tk::SysMenu_System
- Tk::SystemMenu
- Tk::TOPLEVEL_ALIASES
- Tk::TclX
- Tk::TclX::XPG3_MsgCat
- Tk::Tcllib
- Tk::Tcllib::Autoscroll
- Tk::Tcllib::CText
- Tk::Tcllib::ChatWidget
- Tk::Tcllib::Crosshair
- Tk::Tcllib::Cursor
- Tk::Tcllib::DateField
- Tk::Tcllib::Datefield
- Tk::Tcllib::Diagrams
- Tk::Tcllib::GetString_Dialog
- Tk::Tcllib::History
- Tk::Tcllib::ICO
- Tk::Tcllib::IP6_Entry
- Tk::Tcllib::IPEntry
- Tk::Tcllib::IPEntry6
- Tk::Tcllib::IP_Entry
- Tk::Tcllib::IP_Entry6
- Tk::Tcllib::KHIM
- Tk::Tcllib::KHIM::Help
- Tk::Tcllib::Ntext
- Tk::Tcllib::Plotchart
- Tk::Tcllib::Plotchart::Barchart
- Tk::Tcllib::Plotchart::Barchart3D
- Tk::Tcllib::Plotchart::Boxplot
- Tk::Tcllib::Plotchart::ChartMethod
- Tk::Tcllib::Plotchart::Ganttchart
- Tk::Tcllib::Plotchart::Histogram
- Tk::Tcllib::Plotchart::HorizontalBarchart
- Tk::Tcllib::Plotchart::IsometricPlot
- Tk::Tcllib::Plotchart::Isometricplot
- Tk::Tcllib::Plotchart::Piechart
- Tk::Tcllib::Plotchart::Plot3D
- Tk::Tcllib::Plotchart::PlotSeries
- Tk::Tcllib::Plotchart::PolarPlot
- Tk::Tcllib::Plotchart::Polarplot
- Tk::Tcllib::Plotchart::Radialchart
- Tk::Tcllib::Plotchart::RibbonChart3D
- Tk::Tcllib::Plotchart::RightAxis
- Tk::Tcllib::Plotchart::Stripchart
- Tk::Tcllib::Plotchart::TXPlot
- Tk::Tcllib::Plotchart::Timechart
- Tk::Tcllib::Plotchart::XLogYPlot
- Tk::Tcllib::Plotchart::XYPlot
- Tk::Tcllib::Style
- Tk::Tcllib::Swaplist_Dialog
- Tk::Tcllib::TableList
- Tk::Tcllib::TableList_Tile
- Tk::Tcllib::Tablelist
- Tk::Tcllib::TablelistItemConfig
- Tk::Tcllib::Tablelist_Tile
- Tk::Tcllib::Tkpiechart
- Tk::Tcllib::Tkpiechart::BoxLabeler
- Tk::Tcllib::Tkpiechart::ConfigMethod
- Tk::Tcllib::Tkpiechart::Label
- Tk::Tcllib::Tkpiechart::PeripheralLabeler
- Tk::Tcllib::Tkpiechart::Pie
- Tk::Tcllib::Tkpiechart::PieChartObj
- Tk::Tcllib::Tkpiechart::Slice
- Tk::Tcllib::Tooltip
- Tk::Tcllib::Validator
- Tk::Tcllib::Widget
- Tk::Tcllib::Widget::Calendar
- Tk::Tcllib::Widget::Canvas_Sqmap
- Tk::Tcllib::Widget::Canvas_Zoom
- Tk::Tcllib::Widget::DateEntry
- Tk::Tcllib::Widget::Dateentry
- Tk::Tcllib::Widget::Dialog
- Tk::Tcllib::Widget::MenuEntry
- Tk::Tcllib::Widget::Menuentry
- Tk::Tcllib::Widget::PanelFrame
- Tk::Tcllib::Widget::Panelframe
- Tk::Tcllib::Widget::Ruler
- Tk::Tcllib::Widget::ScreenRuler
- Tk::Tcllib::Widget::Screenruler
- Tk::Tcllib::Widget::ScrolledWindow
- Tk::Tcllib::Widget::Scrolledwindow
- Tk::Tcllib::Widget::Statusbar
- Tk::Tcllib::Widget::SuperFrame
- Tk::Tcllib::Widget::Toolbar
- Tk::Tcllib::Widget::ToolbarItem
- Tk::Tcllib::Widget::ToolbarItemConfig
- Tk::Text
- Tk::Text::IndexModMethods
- Tk::Text::IndexString
- Tk::Text::Peer
- Tk::Tile
- Tk::Tile::Button
- Tk::Tile::CheckButton
- Tk::Tile::Checkbutton
- Tk::Tile::Combobox
- Tk::Tile::Dialog
- Tk::Tile::Entry
- Tk::Tile::Font
- Tk::Tile::Frame
- Tk::Tile::KeyNav
- Tk::Tile::Label
- Tk::Tile::LabelFrame
- Tk::Tile::Labelframe
- Tk::Tile::MenuButton
- Tk::Tile::Menubutton
- Tk::Tile::Notebook
- Tk::Tile::ParseStyleLayout
- Tk::Tile::Progress
- Tk::Tile::Progressbar
- Tk::Tile::RadioButton
- Tk::Tile::Radiobutton
- Tk::Tile::Scale
- Tk::Tile::Scrollbar
- Tk::Tile::Separator
- Tk::Tile::SizeGrip
- Tk::Tile::Sizegrip
- Tk::Tile::Spinbox
- Tk::Tile::Square
- Tk::Tile::Style
- Tk::Tile::TButton
- Tk::Tile::TCheckButton
- Tk::Tile::TCheckbutton
- Tk::Tile::TCombobox
- Tk::Tile::TEntry
- Tk::Tile::TFrame
- Tk::Tile::TLabel
- Tk::Tile::TLabelFrame
- Tk::Tile::TLabelframe
- Tk::Tile::TMenuButton
- Tk::Tile::TMenubutton
- Tk::Tile::TNotebook
- Tk::Tile::TPaned
- Tk::Tile::TProgress
- Tk::Tile::TProgressbar
- Tk::Tile::TRadioButton
- Tk::Tile::TRadiobutton
- Tk::Tile::TScale
- Tk::Tile::TScrollbar
- Tk::Tile::TSeparator
- Tk::Tile::TSpinbox
- Tk::Tile::TSpinbox::SpinCommand
- Tk::Tile::TSpinbox::SpinCommand::ValidateArgs
- Tk::Tile::TSquare
- Tk::Tile::TileWidget
- Tk::Tile::Treeview
- Tk::Tile::Treeview::Item
- Tk::Tile::Treeview::Root
- Tk::Tile::Treeview::Tag
- Tk::Tile::TreeviewConfig
- Tk::Tile::XScrollbar
- Tk::Tile::YScrollbar
- Tk::TkDND
- Tk::TkDND::DND
- Tk::TkDND::DND_Subst
- Tk::TkDND::Shape
- Tk::TkSystemMenu
- Tk::TkTable
- Tk::TkTable::BrowseCommand
- Tk::TkTable::BrowseCommand::ValidateArgs
- Tk::TkTable::CellCommand
- Tk::TkTable::CellCommand::ValidateArgs
- Tk::TkTable::CellTag
- Tk::TkTable::ConfigMethod
- Tk::TkTable::NamedCellTag
- Tk::TkTable::SelectionCommand
- Tk::TkTable::SelectionCommand::ValidateArgs
- Tk::TkTable::ValidateCommand
- Tk::TkTable::ValidateCommand::ValidateArgs
- Tk::TkTrans
- Tk::Toplevel
- Tk::TreeCtrl
- Tk::TreeCtrl::BindCallback
- Tk::TreeCtrl::BitmapElement
- Tk::TreeCtrl::BorderElement
- Tk::TreeCtrl::Column
- Tk::TreeCtrl::ConfigMethod
- Tk::TreeCtrl::Element
- Tk::TreeCtrl::ImageElement
- Tk::TreeCtrl::Item
- Tk::TreeCtrl::NotifyEvent
- Tk::TreeCtrl::RectangleElement
- Tk::TreeCtrl::Style
- Tk::TreeCtrl_Widget
- Tk::Trofs
- Tk::Ttk
- Tk::UTF8_String
- Tk::ValidateConfigure
- Tk::Vu
- Tk::Vu::Bargraph
- Tk::Vu::ChartsConfig
- Tk::Vu::Dial
- Tk::Vu::NamedPieSlice
- Tk::Vu::Pie
- Tk::Vu::PieSlice
- Tk::Vu::PieSliceConfigMethod
- Tk::Vu::TkcBarchart
- Tk::Vu::TkcSticker
- Tk::Vu::TkcStripchart
- Tk::WinDDE
- Tk::WinRegistry
- Tk::Winico
- Tk::Winico::Winico_callback
- Tk::Winico::Winico_callback::ValidateArgs
- Tk::Wm
- Tk::Wm_for_General
- Tk::XScrollable
- Tk::XScrollbar
- Tk::X_Scrollable
- Tk::YScrollable
- Tk::YScrollbar
- Tk::Y_Scrollable
- TkAfter
- TkBgError
- TkBindCore
- TkBindTag
- TkBindTagAll
- TkBitmapImage
- TkCallbackBreak
- TkCallbackContinue
- TkCallbackEntry
- TkCallbackRedo
- TkCallbackRetry
- TkCallbackReturn
- TkCallbackThrow
- TkCanvasItemConfig
- TkClipboard
- TkComm
- TkComposite
- TkConfigMethod
- TkConsole
- TkCore
- TkCore::Tk_OBJECT_TABLE
- TkDatabaseClass
- TkDialog
- TkDialog2
- TkDialogObj
- TkEvent
- TkEvent::Event
- TkEvent::Event::Grp
- TkEvent::Event::StateMask
- TkEvent::Event::TypeNum
- TkFont
- TkFont::Chooser
- TkFont::CoreMethods
- TkFont::DescendantFont
- TkFont::Fontchooser
- TkGrid
- TkImage
- TkItemConfigMethod
- TkItemConfigOptkeys
- TkItemFontOptkeys
- TkKernel
- TkKinput
- TkListItemConfig
- TkLocalJumpError
- TkManageFocus
- TkMenuEntryConfig
- TkMenuSpec
- TkMenubar
- TkMsgCat
- TkMsgCatalog
- TkNamedFont
- TkNamespace
- TkNamespace::Ensemble
- TkNamespace::NsCode
- TkNamespace::ScopeArgs
- TkObject
- TkOption
- TkOptionDB
- TkOptionDB::Priority
- TkPack
- TkPackage
- TkPalette
- TkPhotoImage
- TkPixmapImage
- TkPlace
- TkRTTimer
- TkResourceDB
- TkScrollbox
- TkSelection
- TkTextImage
- TkTextMark
- TkTextMarkAnchor
- TkTextMarkCurrent
- TkTextMarkInsert
- TkTextNamedMark
- TkTextNamedTag
- TkTextTag
- TkTextTagConfig
- TkTextTagSel
- TkTextWin
- TkTextWindow
- TkTimer
- TkTreatFont
- TkTreatItemFont
- TkTreatTagFont
- TkUtil
- TkUtil::CallbackSubst
- TkUtil::CallbackSubst::Info
- TkValidateCommand
- TkValidateCommand::ValidateArgs
- TkValidation
- TkValidation::ValidateCmd
- TkValidation::ValidateCmd::Action
- TkVarAccess
- TkVariable
- TkVirtualEvent
- TkVirtualEvent::PreDefVirtEvent
- TkVirtualEvent::TkNamedVirtualEvent
- TkWarning
- TkWarning2
- TkWarningObj
- TkWidget
- TkWindow
- TkWinfo
- TkXIM
- TkcArc
- TkcBitmap
- TkcGroup
- TkcImage
- TkcItem
- TkcLine
- TkcNamedTag
- TkcOval
- TkcPolygon
- TkcRectangle
- TkcTag
- TkcTagAccess
- TkcTagAll
- TkcTagCurrent
- TkcTagString
- TkcText
- TkcWindow
- TktImage
- TktMark
- TktMarkAnchor
- TktMarkCurrent
- TktMarkInsert
- TktNamedMark
- TktNamedTag
- TktTag
- TktTagSel
- TktWindow
- Variable
- VirtualEvent
- WindowItem
- Winfo
- unknown

No matching classes.

# Object

### Constants

Arc
Bitmap
BitmapImage
Button
Canvas
Checkbutton
Entry
Font

  autoload

Frame
Grid
Label
Line
Listbox
Menu
Menubutton
Message
Oval
Pack
PhotoImage

  A photo is an image whose pixels can display any color or be transparent. At present, only GIF and PPM/PGM formats are supported, but an interface exists to allow additional image file formats to be added easily.

  This class documentation is a copy from the original Tcl/Tk at www.tcl.tk/man/tcl8.5/TkCmd/photo.htm with some rewritten parts.

Place
Polygon
Radiobutton
Rectangle
Scale
Scrollbar
Selection
Spinbox
Text
TextItem
TkAfter
TkDialog2
TkMsgCat

  class TkMsgCatalog

TkNamedVirtualEvent
TkOption
TkResourceDB
TkRoot
TkSystemMenu
TkWarning2

  dialog for warning

TkWidget
TkcNamedTag
TktImage
TktMark
TktMarkAnchor
TktMarkCurrent
TktMarkInsert
TktNamedMark
TktNamedTag
TktTag
TktTagSel
TktWindow
TopLevel
Ttk
Variable
VirtualEvent
WindowItem
Winfo

  #<RDoc::Comment:0x0000000006673d28>

  #<RDoc::Comment:0x00000000066721f8>

### Public Instance Methods

Mainloop() click to toggle source

                   # File tk/lib/tkclass.rb, line 45
    def Mainloop
      Tk.mainloop
    end

TkGrid(*args) click to toggle source

                   # File tk/lib/tk/autoload.rb, line 18
    def TkGrid(*args); TkGrid.configure(*args); end

TkPack(*args) click to toggle source

                   # File tk/lib/tk/autoload.rb, line 21
    def TkPack(*args); TkPack.configure(*args); end

TkPlace(*args) click to toggle source

                   # File tk/lib/tk/autoload.rb, line 24
    def TkPlace(*args); TkPlace.configure(*args); end

__method_missing_alias_for_MultiTkIp__(id, *args) click to toggle source
Alias for: method_missing
check_pkg(file, verbose=false) click to toggle source

                   # File tk/lib/tkextlib/pkg_checker.rb, line 91
    def check_pkg(file, verbose=false)
      pkg_list = get_pkg_list(file)

      error_list = []
      success_list = {}

      pkg_list.each{|name, type|
        next if success_list[name]

        begin
          case type
          when :package
            ver = TkPackage.require(name)
            success_list[name] = ver
            error_list.delete_if{|n, t| n == name}

          when :library
            Tk.load_tcllibrary(name)
            success_list[name] = :library
            error_list.delete_if{|n, t| n == name}

          when :script
            Tk.load_tclscript(name)
            success_list[name] = :script
            error_list.delete_if{|n, t| n == name}

          when :require_ruby_lib
            require name

          end
        rescue => e
          if verbose
            error_list << [name, type, e.message]
          else
            error_list << [name, type]
          end
        end
      }

      success_list.dup.each{|name, ver|
        unless ver.kind_of?(String)
          begin
            ver = TkPackage.require(name)
            sccess_list[name] = ver
          rescue
          end
        end
      }

      [success_list, error_list]
    end

check_tcltk_version(version) click to toggle source

                   # File tk/old-extconf.rb, line 79
    def check_tcltk_version(version)
      return [nil, nil] unless version

      version = version.strip

      tclver = version.dup
      tkver  = version.dup

      major = dot = minor = dot = plvl = ext = nil

      if version =~ /^(\d)(\.?)(\d)(\.?)(\d*)(.*)$/
        major = $1; minor_dot = $2; minor = $3; plvl_dot  = $4; plvl = $5; ext = $6
        dot = ! minor_dot.empty?
        if plvl_dot.empty? && ! plvl.empty?
          minor << plvl
        end
      elsif version =~ /^(\d)(\.?)(\d?)(.*)$/
        major = $1; minor_dot = $2; minor = $3; ext = $4
        dot = ! minor_dot.empty?
      else # unknown -> believe user
        return [tclver, tkver]
      end

      # check Tcl7.6 / Tk4.2 ?
      if major == "7" # Tcl7.6 ( not support Tclversion < 7.6 )
        # Tk4.2
        tkver  = "4" + ((dot)? ".": "") + ((minor.empty)? "": "2") + ext
      elsif major == "4" # Tk4.2 ( not support Tkversion < 4.2 )
        # Tcl7.6
        tclver = "7" + ((dot)? ".": "") + ((minor.empty)? "": "6") + ext
      end

      [tclver, tkver]
    end

find_X11(*opt_paths) click to toggle source

                   # File tk/old-extconf.rb, line 229
    def find_X11(*opt_paths)
      default_paths =
        [ "/usr/X11/lib", "/usr/lib/X11", "/usr/X11R6/lib", "/usr/openwin/lib" ]
      paths = opt_paths.compact.concat(default_paths)
      st = find_library("X11", "XOpenDisplay", *paths)
      unless st
        puts("Warning:: cannot find X11 library. tcltklib will not be compiled (tcltklib is disabled on your Ruby == Ruby/Tk will not work). Please check configure options. If your Tcl/Tk don't require X11, please try --without-X11.")
      end
      st
    end

find_framework(tcl_hdr, tk_hdr) click to toggle source

                   # File tk/old-extconf.rb, line 14
    def find_framework(tcl_hdr, tk_hdr)
      if framework_dir = with_config("tcltk-framework")
        paths = [framework_dir]
      else
        unless tcl_hdr || tk_hdr ||
            enable_config("tcltk-framework", false) ||
            enable_config("mac-tcltk-framework", false)
          return false
        end
        paths = ["/Library/Frameworks", "/System/Library/Frameworks"]
      end

      checking_for('Tcl/Tk Framework') {
        paths.find{|dir|
          dir.strip!
          dir.chomp!('/')
          (tcl_hdr || FileTest.directory?(dir + "/Tcl.framework/") ) &&
            (tk_hdr || FileTest.directory?(dir + "/Tk.framework/") )
        }
      }
    end

find_tcl(tcllib, stubs, version, *opt_paths) click to toggle source

                   # File tk/old-extconf.rb, line 114
    def find_tcl(tcllib, stubs, version, *opt_paths)
      default_paths = ["/usr/local/lib", "/usr/pkg/lib", "/usr/lib"]
      default_paths << "/Tcl/lib"  # default for ActiveTcl

      if (paths = opt_paths.compact).empty?
        paths = default_paths
      end

      if stubs
        func = "Tcl_InitStubs"
        lib = "tclstub"
      else
        func = "Tcl_FindExecutable"
        lib = "tcl"
      end

      if version && ! version.empty?
        versions = [version]
      else
        versions = %w[8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 7.6]
      end

      if tcllib
        st = find_library(tcllib, func, *paths)
      else
        st = versions.find { |ver|
               find_library("#{lib}#{ver}", func, *paths) or
               find_library("#{lib}#{ver.delete('.')}", func, *paths) or
               find_library("#{lib}#{ver}g", func, *paths) or
               find_library("#{lib}#{ver.delete('.')}g", func, *paths) or
               find_library("tcl#{ver}", func, *paths) or
               find_library("tcl#{ver.delete('.')}", func, *paths) or
               find_library("tcl#{ver}g", func, *paths) or
               find_library("tcl#{ver.delete('.')}g", func, *paths)
             } || (!version && find_library(lib, func, *paths))
      end

      unless st
        puts("Warning:: cannot find Tcl library. tcltklib will not be compiled (tcltklib is disabled on your Ruby == Ruby/Tk will not work). Please check configure options.")
      end
      st
    end

find_tcltk_header(tclver, tkver) click to toggle source

                   # File tk/old-extconf.rb, line 200
    def find_tcltk_header(tclver, tkver)
      base_dir = ['/usr/local/include', '/usr/pkg/include', '/usr/include']
      base_dir << '/Tcl/include' # default for ActiveTcl

      unless have_tcl_h = have_header('tcl.h')
        if tclver && ! tclver.empty?
          versions = [tclver]
        else
          versions = %w[8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 7.6]
        end
        paths = base_dir.dup
        versions.each{|ver| paths.concat(base_dir.map{|dir| dir + '/tcl' + ver})}
        have_tcl_h = find_header('tcl.h', *paths)
      end

      unless have_tk_h  = have_header("tk.h")
        if tkver && ! tkver.empty?
          versions = [tkver]
        else
          versions = %w[8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 4.2]
        end
        paths = base_dir.dup
        versions.each{|ver| paths.concat(base_dir.map{|dir| dir + '/tk' + ver})}
        have_tk_h = find_header('tk.h', *paths)
      end

      have_tcl_h && have_tk_h
    end

find_tk(tklib, stubs, version, *opt_paths) click to toggle source

                   # File tk/old-extconf.rb, line 157
    def find_tk(tklib, stubs, version, *opt_paths)
      default_paths = ["/usr/local/lib", "/usr/pkg/lib", "/usr/lib"]
      default_paths << "/Tcl/lib"  # default for ActiveTcl

      if (paths = opt_paths.compact).empty?
        paths = default_paths
      end

      if stubs
        func = "Tk_InitStubs"
        lib = "tkstub"
      else
        func = "Tk_Init"
        lib = "tk"
      end

      if version && ! version.empty?
        versions = [version]
      else
        versions = %w[8.7 8.6 8.5 8.4 8.3 8.2 8.1 8.0 4.2]
      end

      if tklib
        st = find_library(tklib, func, *paths)
      else
        st = versions.find { |ver|
               find_library("#{lib}#{ver}", func, *paths) or
               find_library("#{lib}#{ver.delete('.')}", func, *paths) or
               find_library("#{lib}#{ver}g", func, *paths) or
               find_library("#{lib}#{ver.delete('.')}g", func, *paths) or
               find_library("tk#{ver}", func, *paths) or
               find_library("tk#{ver.delete('.')}", func, *paths) or
               find_library("tk#{ver}g", func, *paths) or
               find_library("tk#{ver.delete('.')}g", func, *paths)
             } || (!version && find_library(lib, func, *paths))
      end

      unless st
        puts("Warning:: cannot find Tk library. tcltklib will not be compiled (tcltklib is disabled on your Ruby == Ruby/Tk will not work). Please check configure options.")
      end
      st
    end

get_pkg_list(file) click to toggle source

                   # File tk/lib/tkextlib/pkg_checker.rb, line 66
    def get_pkg_list(file)
      pkg_list = []

      File.foreach(file){|l|
        if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)TkPackage\s*\.\s*require\s*\(?\s*(["'])((\w|:)+)\1/
          pkg = [$2, :package]
          pkg_list << pkg unless pkg_list.member?(pkg)
        end
        if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)Tk\s*\.\s*load_tcllibrary\s*\(?\s*(["'])((\w|:)+)\1/
          pkg = [$2, :library]
          pkg_list << pkg unless pkg_list.member?(pkg)
        end
        if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)Tk\s*\.\s*load_tclscript\s*\(?\s*(["'])((\w|:)+)\1/
          pkg = [$2, :script]
          pkg_list << pkg unless pkg_list.member?(pkg)
        end
        if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)require\s*\(?\s*(["'])((\w|\/|:)+)\1/
          pkg = [$2, :require_ruby_lib]
          pkg_list << pkg unless pkg_list.member?(pkg)
        end
      }

      pkg_list
    end

help_msg() click to toggle source

                   # File tk/lib/tkextlib/pkg_checker.rb, line 16
    def help_msg
      print "Usage: #{$0} [-l] [-v] [-h] [--] [dir]\n"
      print "\tIf dir is omitted, check the directory that this command exists.\n"
      print "\tAvailable options are \n"
      print "\t  -l : Add dir to $LOAD_PATH\n"
      print "\t       (If dir == '<parent>/tkextlib', add <parent> also.)\n"
      print "\t  -v : Verbose mode (show reason of fail)\n"
      print "\t  -h : Show this message\n"
      print "\t  -- : End of options\n"
    end

method_missing(id, *args) click to toggle source

                   # File tk/lib/multi-tk.rb, line 2075
    def method_missing(id, *args)
      begin
        has_top = (top = MultiTkIp.__getip.__pseudo_toplevel) &&
          top.respond_to?(:pseudo_toplevel_evaluable?) &&
          top.pseudo_toplevel_evaluable? &&
          top.respond_to?(id)
      rescue Exception => e
        has_top = false
      end

      if has_top
        top.__send__(id, *args)
      else
        __method_missing_alias_for_MultiTkIp__(id, *args)
      end
    end

Also aliased as: __method_missing_alias_for_MultiTkIp__
parse_tclConfig(file) click to toggle source

                   # File tk/old-extconf.rb, line 67
    def parse_tclConfig(file)
      # check tclConfig.sh/tkConfig.sh
      tbl = {}
      IO.foreach(file){|line|
        line.strip!
        next if line !~ /^([^\#=][^=]*)=(['"]|)(.*)\2$/
        key, val = $1, $3
        tbl[key] = val.gsub(/\$\{([^}]+)\}/){|s| tbl[$1]} rescue nil
      }
      tbl
    end

pthread_check() click to toggle source

                   # File tk/old-extconf.rb, line 240
    def pthread_check()
      tcl_major_ver = nil
      tcl_minor_ver = nil

      # Is tcl-thread given by user ?
      case enable_config("tcl-thread")
      when true
        tcl_enable_thread = true
      when false
        tcl_enable_thread = false
      else
        tcl_enable_thread = nil
      end

      if (tclConfig = with_config("tclConfig-file"))
        if tcl_enable_thread == true
          puts("Warning: --with-tclConfig-file option is ignored, because --enable-tcl-thread option is given.")
        elsif tcl_enable_thread == false
          puts("Warning: --with-tclConfig-file option is ignored, because --disable-tcl-thread option is given.")
        else
          # tcl-thread is unknown and tclConfig.sh is given
          begin
            tbl = parse_tclConfig(tclConfig)
            if tbl['TCL_THREADS']
              tcl_enable_thread = (tbl['TCL_THREADS'] == "1")
            else
              tcl_major_ver = tbl['TCL_MAJOR_VERSION'].to_i
              tcl_minor_ver = tbl['TCL_MINOR_VERSION'].to_i
              if tcl_major_ver < 8 || (tcl_major_ver == 8 && tcl_minor_ver == 0)
                tcl_enable_thread = false
              end
            end

            if tcl_enable_thread == nil
              # cannot find definition
              if tcl_major_ver
                puts("Warning: '#{tclConfig}' doesn't include TCL_THREADS definition.")
              else
                puts("Warning: '#{tclConfig}' may not be a tclConfig file.")
              end
              tclConfig = false
            end
          rescue Exception
            puts("Warning: fail to read '#{tclConfig}'!! --> ignore the file")
            tclConfig = false
          end
        end
      end

      if tcl_enable_thread == nil && !tclConfig
        # tcl-thread is unknown and tclConfig is unavailable
        begin
          try_run_available = try_run("int main() { exit(0); }")
        rescue Exception
          # cannot try_run. Is CROSS-COMPILE environment?
          puts(%Q'\
    *****************************************************************************
    **
    ** PTHREAD SUPPORT CHECK WARNING:
    **
    **   We cannot check the consistency of pthread support between Ruby
    **   and the Tcl/Tk library in your environment (are you perhaps
    **   cross-compiling?). If pthread support for these 2 packages is
    **   inconsistent you may find you get errors when running Ruby/Tk
    **   (e.g. hangs or segmentation faults).  We strongly recommend
    **   you to check the consistency manually.
    **
    *****************************************************************************
    ')
          return true
        end
      end

      if tcl_enable_thread == nil
        # tcl-thread is unknown
        if try_run(<<EOF)
    #include <tcl.h>
    int main() {
       Tcl_Interp *ip;
       ip = Tcl_CreateInterp();
       exit((Tcl_Eval(ip, "set tcl_platform(threaded)") == TCL_OK)? 0: 1);
    }
    EOF
          tcl_enable_thread = true
        elsif try_run(<<EOF)
    #include <tcl.h>
    static Tcl_ThreadDataKey dataKey;
    int main() { exit((Tcl_GetThreadData(&dataKey, 1) == dataKey)? 1: 0); }
    EOF
          tcl_enable_thread = true
        else
          tcl_enable_thread = false
        end
      end

      # check pthread mode
      if (macro_defined?('HAVE_NATIVETHREAD', '#include "ruby.h"'))
        # ruby -> enable
        unless tcl_enable_thread
          # ruby -> enable && tcl -> disable
          puts(%Q'\
    *****************************************************************************
    **
    ** PTHREAD SUPPORT MODE WARNING:
    **
    **   Ruby is compiled with --enable-pthread, but your Tcl/Tk library
    **   seems to be compiled without pthread support. Although you can
    **   create the tcltklib library, this combination may cause errors
    **   (e.g. hangs or segmentation faults). If you have no reason to
    **   keep the current pthread support status, we recommend you reconfigure
    **   and recompile the libraries so that both or neither support pthreads.
    **
    **   If you want change the status of pthread support, please recompile
    **   Ruby without "--enable-pthread" configure option or recompile Tcl/Tk
    **   with "--enable-threads" configure option (if your Tcl/Tk is later
    **   than or equal to Tcl/Tk 8.1).
    **
    *****************************************************************************
    ')
        end

        # ruby -> enable && tcl -> enable/disable
        if tcl_enable_thread
          $CPPFLAGS += ' -DWITH_TCL_ENABLE_THREAD=1'
        else
          $CPPFLAGS += ' -DWITH_TCL_ENABLE_THREAD=0'
        end

        return true

      else
        # ruby -> disable
        if tcl_enable_thread
          # ruby -> disable && tcl -> enable
          puts(%Q'\
    *****************************************************************************
    **
    ** PTHREAD SUPPORT MODE ERROR:
    **
    **   Ruby is not compiled with --enable-pthread, but your Tcl/Tk
    **   library seems to be compiled with pthread support. This
    **   combination may cause frequent hang or segmentation fault
    **   errors when Ruby/Tk is working. We recommend that you NEVER
    **   create the library with such a combination of pthread support.
    **
    **   Please recompile Ruby with the "--enable-pthread" configure option
    **   or recompile Tcl/Tk with the "--disable-threads" configure option.
    **
    *****************************************************************************
    ')
          $CPPFLAGS += ' -DWITH_TCL_ENABLE_THREAD=1'
          return false
        else
          # ruby -> disable && tcl -> disable
          $CPPFLAGS += ' -DWITH_TCL_ENABLE_THREAD=0'
          return true
        end
      end
    end

subdir_check(dir, verbose=false) click to toggle source

                   # File tk/lib/tkextlib/pkg_checker.rb, line 143
    def subdir_check(dir, verbose=false)
      Dir.foreach(dir){|f|
        next if f == '.' || f == '..'
        if File.directory?(f)
          subdir_check(File.join(dir, f))
        elsif File.extname(f) == '.rb'
          path = File.join(dir, f)
          suc, err = check_pkg(path, verbose)
          if err.empty?
            print 'Ready : ', path, ' : require->', suc.inspect, "\n"
          else
            print '*LACK : ', path, ' : require->', suc.inspect,
              '  FAIL->', err.inspect, "\n"
          end
        end
      }
    end