class Qt::MainWindow

Attributes

guis[R]

Public Class Methods

new(parent) click to toggle source
Calls superclass method
# File lib/rui/toolkits/qt/qt.rb, line 46
def initialize(parent)
  super(parent)
  
  setToolButtonStyle(Qt::ToolButtonFollowStyle)
  
  # create basic GUI
  @guis = []
  @gui = Qt::gui(:qt_base) do |g|
    g.menu_bar do |mb|
      mb.merge_point
      mb.menu(:settings, :text => KDE::i18n("&Settings"))
      mb.menu(:help, :text => KDE::i18n("&Help")) do |m|
        m.action :about
        m.action :about_qt
      end
    end
  end
end

Public Instance Methods

caption=(title) click to toggle source
# File lib/rui/toolkits/qt/qt.rb, line 99
def caption=(title)
  self.window_title = $qApp.application_name.capitalize + 
      " - " + title
end
saveGUI() click to toggle source
# File lib/rui/toolkits/qt/qt.rb, line 90
def saveGUI
  settings = Qt::Settings.new
  settings.begin_group("mainwindow")
  settings.set_value("geometry", Qt::Variant.new(save_geometry))
  settings.set_value("state", Qt::Variant.new(save_state))
  settings.end_group
  settings.sync
end
setGUI(gui) click to toggle source
# File lib/rui/toolkits/qt/qt.rb, line 65
def setGUI(gui)
  regular_action(:about, :text => KDE::i18n("&About")) do
    Qt::MessageBox.about(nil,
                         $qApp.data[:name],
                         [$qApp.data[:description],
                          $qApp.data[:copyright]].join("\n"))
  end
  regular_action(:about_qt, :text => KDE::i18n("About &Qt")) { $qApp.about_qt }
  
  @gui.merge!(gui)
  @guis.each {|g| @gui.merge! g }
  RUI::GuiBuilder.build(self, @gui)
  
  # restore state
  settings = Qt::Settings.new
  state = nil
  geometry = nil
  if settings.contains("mainwindow/state")
    state = settings.value("mainwindow/state").toByteArray
    geometry = settings.value("mainwindow/geometry").toByteArray
    restore_geometry(geometry)
    restore_state(state)
  end
end