summaryrefslogtreecommitdiffstats
path: root/languages/ruby/app_templates/kxt/appview.rb
blob: 583272085ec924ab8e6ca5fa2ba442da77c24ab4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55

=begin
  This is the main view class for %{APPNAME}.  Most of the non-menu,
  non-toolbar, and non-statusbar (e.g., non frame) GUI code should go
  here.
 
  This %{APPNAMELC} uses an HTML component as an example.
 
  @short Main view
  @author %{AUTHOR} <%{EMAIL}>
  @version %{VERSION}
=end
class %{APPNAMESC}View < %{APPNAMESC}view_base

    #
    # Use this signal to change the content of the statusbar
    #
    Q_SIGNALS 'signalChangeStatusbar(const QString&)'

    #
    # Use this signal to change the content of the caption
    #
    Q_SIGNALS 'signalChangeCaption(const QString&)'

    Q_SLOTS 'switchColors()',
          'settingsChanged()'
   
    def initialize(parent)
        super(parent)
        
        settingsChanged()
    end
    
    def switchColors()
        color = Settings.instance.col_background
        Settings.instance.setCol_background( Settings.instance.col_foreground )
        Settings.instance.setCol_foreground( color )

        settingsChanged()
    end

    def settingsChanged()
        sillyLabel.setPaletteBackgroundColor( Settings.instance.col_background )
        sillyLabel.setPaletteForegroundColor( Settings.instance.col_foreground )
        # i18n : internationallization
        sillyLabel.setText( i18n("This project is %d days old" % Settings.instance.val_time) )
        
        emit signalChangeStatusbar( i18n("Settings changed") )
    end
        
    def slotSetTitle(title)
        emit signalChangeCaption(title)
    end

end