Class: SettingsDialog

Inherits:
Qt::Dialog
  • Object
show all
Defined in:
lib/tmis/interface/forms/settings.rb

Instance Method Summary collapse

Constructor Details

#initialize(parent = nil) ⇒ SettingsDialog

Returns a new instance of SettingsDialog.



60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/tmis/interface/forms/settings.rb', line 60

def initialize(parent = nil)
  super(parent)
  @ui = Ui::SettingsDialog.new
  @ui.setup_ui self
  @ui.stackedWidget.setCurrentIndex(0)
  setup
  connect(@ui.actionsListWidget, SIGNAL('currentRowChanged(int)'), @ui.stackedWidget, SLOT('setCurrentIndex(int)'))
  connect(@ui.buttonBox.button(Qt::DialogButtonBox::Ok), SIGNAL('clicked()'), self, SLOT('ok()'))
  connect(@ui.buttonBox.button(Qt::DialogButtonBox::Apply), SIGNAL('clicked()'), self, SLOT('apply()'))
  connect(@ui.buttonBox.button(Qt::DialogButtonBox::Help), SIGNAL('clicked()'), self, SLOT('help()'))
  connect(@ui.buttonBox.button(Qt::DialogButtonBox::RestoreDefaults), SIGNAL('clicked()'), self, SLOT('restore()'))
  connect(@ui.buttonBox.button(Qt::DialogButtonBox::Cancel), SIGNAL('clicked()')){ close }

end

Instance Method Details

#applyObject



83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/tmis/interface/forms/settings.rb', line 83

def apply
  if Mailer.email_valid? @ui.emailLineEdit.text
    Settings[:mailer, :email] = @ui.emailLineEdit.text.force_encoding('UTF-8')
    Settings[:mailer, :password] = @ui.passwordLineEdit.text.force_encoding('UTF-8')
  else
    show_message 'Email имеет неправильный формат!'
    return false
  end
  Settings[:stubs, :lecturer] = @ui.lecturerStubLineEdit.text.force_encoding('UTF-8')
  Settings[:stubs, :cabinet] = @ui.cabinetStubLineEdit.text.force_encoding('UTF-8')
  Settings[:stubs, :subject] = @ui.subjectStubLineEdit.text.force_encoding('UTF-8')
  return true
end

#helpObject



117
118
# File 'lib/tmis/interface/forms/settings.rb', line 117

def help
end

#okObject



97
98
99
# File 'lib/tmis/interface/forms/settings.rb', line 97

def ok
  close if apply
end

#restoreObject



101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/tmis/interface/forms/settings.rb', line 101

def restore
  #case @ui.stackedWidget.currentWidget.objectName
  #when 'database'
  #  Settings.reset! :stubs
  #when 'email'
  #  Settings.reset! :mailer
  #when 'interface'
  #when 'verify'
  #when 'export'
  #when 'import'
  #else
  #end
  Settings.reset! :stubs
  Settings.reset! :mailer
end

#setupObject



75
76
77
78
79
80
81
# File 'lib/tmis/interface/forms/settings.rb', line 75

def setup
  @ui.emailLineEdit.text = Settings[:mailer, :email]
  @ui.passwordLineEdit.text = Settings[:mailer, :password]
  @ui.lecturerStubLineEdit.text = Settings[:stubs, :lecturer]
  @ui.cabinetStubLineEdit.text = Settings[:stubs, :cabinet]
  @ui.subjectStubLineEdit.text = Settings[:stubs, :subject]
end

#show_message(text) ⇒ Object



120
121
122
123
124
# File 'lib/tmis/interface/forms/settings.rb', line 120

def show_message(text)
  box = Qt::MessageBox.new(self)
  box.setText text
  box.exec
end