Sha256: 4a76f4127aa2a46d2ee59ef864859ada14ab0f5d757159405b174c00c8dea6dc

Contents?: true

Size: 1.42 KB

Versions: 69

Compression:

Stored size: 1.42 KB

Contents

module Redcar
  class EditViewSWT
    class Tab < ApplicationSWT::Tab
      include Redcar::Observable
      
      attr_reader :item, :edit_view
      
      def initialize(*args)
        super
        @model.add_listener(:changed_title) { |title| @item.text = title }
      end
      
      # Focuses the CTabItem within the CTabFolder, and gives the keyboard
      # focus to the EditViewSWT.
      def focus
        super
        edit_view.focus
      end
      
      # Close the EditTab, disposing of any resources along the way.
      def close
        @edit_view.dispose
        @widget.dispose
        super
      end
      
      private
      
      def create_tab_widget
        @widget = Swt::Widgets::Composite.new(notebook.tab_folder, Swt::SWT::NONE)
        layout = Swt::Layout::GridLayout.new(1, false)
        layout.verticalSpacing = 0
        layout.marginHeight = 0
        layout.horizontalSpacing = 0
        layout.marginWidth = 0
        @widget.layout = layout
        @edit_view = EditViewSWT.new(model.edit_view, @widget)
        
        grid_data = Swt::Layout::GridData.new(
                      Swt::Layout::GridData::FILL_BOTH | 
                      Swt::Layout::GridData::VERTICAL_ALIGN_FILL |
                      Swt::Layout::GridData::HORIZONTAL_ALIGN_FILL)
        @edit_view.mate_text.get_control.parent.set_layout_data(grid_data)

        @item.control = @widget
        @widget.pack
      end
    end
  end
end

Version data entries

69 entries across 69 versions & 2 rubygems

Version Path
redcar-0.13 plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.5dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.4dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.3dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.2dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.1dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-0.12.1 plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.13.0dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-0.12 plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.27dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.26dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.25dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.24dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.23dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.22dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.21dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.20dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.19dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.18dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb
redcar-dev-0.12.17dev plugins/edit_view_swt/lib/edit_view_swt/edit_tab.rb