Class: GemHelpDlg
Constant Summary collapse
- GroupName =
"GemHelpDlg"
Instance Method Summary collapse
-
#closeEvent(event) ⇒ Object
virtual function slot.
- #createWidget ⇒ Object
- #iniHelpList ⇒ Object
-
#initialize(parent = nil) ⇒ GemHelpDlg
constructor
A new instance of GemHelpDlg.
- #listSelected(item) ⇒ Object
- #readSettings ⇒ Object
- #writeSettings ⇒ Object
Constructor Details
#initialize(parent = nil) ⇒ GemHelpDlg
Returns a new instance of GemHelpDlg.
8 9 10 11 12 13 14 15 |
# File 'lib/gemhelpdlg.rb', line 8 def initialize(parent=nil) super(parent) setCaption("gem (command line version) command help") createWidget iniHelpList setAutoSaveSettings(GroupName) readSettings end |
Instance Method Details
#closeEvent(event) ⇒ Object
virtual function slot
60 61 62 63 |
# File 'lib/gemhelpdlg.rb', line 60 def closeEvent(event) writeSettings super(event) end |
#createWidget ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/gemhelpdlg.rb', line 17 def createWidget closeBtn = KDE::PushButton.new(KDE::Icon.new('dialog-close'), i18n('Close')) @helpList = Qt::ListWidget.new @helpText = Qt::PlainTextEdit.new @helpText.readOnly = true connect(@helpList, SIGNAL('itemClicked(QListWidgetItem*)'), self, SLOT('listSelected(QListWidgetItem*)')) connect(closeBtn, SIGNAL(:clicked), self, SLOT(:hide)) # layout @splitter = Qt::Splitter.new do |s| s.addWidget(@helpList) s.addWidget(@helpText) end @splitter.setStretchFactor(0,0) @splitter.setStretchFactor(1,1) lo = Qt::VBoxLayout.new do |l| l.addWidget(@splitter) l.addWidgets(nil, closeBtn) end w = Qt::Widget.new w.setLayout(lo) setCentralWidget(w) end |
#iniHelpList ⇒ Object
43 44 45 46 47 48 49 50 |
# File 'lib/gemhelpdlg.rb', line 43 def iniHelpList list = %x{gem help command}.split(/[\r\n]+/).inject([]) do |a, line| line =~ /^\s{4}(\w+)/ ? a << $1 : a end list.unshift('examples') @helpList.clear @helpList.addItems(list) end |
#listSelected(item) ⇒ Object
53 54 55 56 57 |
# File 'lib/gemhelpdlg.rb', line 53 def listSelected(item) text = %x{gem help #{item.text}} @helpText.clear @helpText.appendHtml("<pre>" + text + "</pre>") end |