Development/Tutorials/Plasma/Ruby/SimplePasteAppletCompleted

Jump to: navigation, search

This is what the completed code for the Simple Paste Applet looks like:

require 'plasma_applet'
 
module RubyTest
  class Main < PlasmaScripting::Applet
    def initialize parent
      super parent
    end
 
    def init
      set_minimum_size 150, 150
 
      layout = Qt::GraphicsLinearLayout.new Qt::Vertical, self
      self.layout = layout
 
      # Three items being laid out:
 
      label = Plasma::Label.new self
      label.text = 'This plasmoid will copy the text you enter below to the clipboard.'
      layout.add_item label
 
      line_edit = Plasma::LineEdit.new self
      begin # only possible in Plasma 4.3 and up 
        line_edit.clear_button_shown = true
      rescue
      end
      layout.add_item line_edit
 
      button = Plasma::PushButton.new self
      button.text = 'Copy to clipboard'
      layout.add_item button
 
      # The layout is done now comes the action:
 
      button.connect(SIGNAL(:clicked)) do
        Qt::Application.clipboard.text = line_edit.text
      end
 
      line_edit.connect(SIGNAL(:returnPressed)) do
        Qt::Application.clipboard.text = line_edit.text
      end
    end
 
  end
end

This page was last modified on 29 June 2011, at 21:54. This page has been accessed 978 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal