Class: SayTimeAction

Inherits:
DateTimeAction show all
Defined in:
lib/ruby-macrodroid/actions.rb

Overview

Category: Date/Time

Instance Attribute Summary

Attributes inherited from Action

#constraints

Attributes inherited from MacroObject

#options, #siguid, #type

Instance Method Summary collapse

Methods included from ObjectX

#action_to_object, #object_create, #varify

Methods inherited from MacroObject

#to_h

Constructor Details

#initialize(obj = nil) ⇒ SayTimeAction

Returns a new instance of SayTimeAction.



1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
# File 'lib/ruby-macrodroid/actions.rb', line 1006

def initialize(obj=nil)
  
  h = if obj.is_a? Hash then
    obj
  elsif obj.is_a? Array
    
    e, macro = obj      
    {:'12_hour' => e.text('item/description').to_s[/^\d+/] == '12'}
    
  end 
  
  options = {
    :'12_hour' => true
  }

  super(options.merge h)

end

Instance Method Details

#invokeObject



1025
1026
1027
1028
1029
1030
# File 'lib/ruby-macrodroid/actions.rb', line 1025

def invoke()
  #time = ($env and $env[:time]) ? $env[:time] : Time.now
  time = Time.now
  tformat = @h['12_hour'] ? "%-I:%M%P" : "%H:%M"
  super(txt: time.strftime(tformat))
end

#to_pcObject



1032
1033
1034
# File 'lib/ruby-macrodroid/actions.rb', line 1032

def to_pc()
  'say current_time()'
end

#to_s(colour: false, indent: 0) ⇒ Object



1036
1037
1038
1039
1040
# File 'lib/ruby-macrodroid/actions.rb', line 1036

def to_s(colour: false, indent: 0)
  @s = 'Say Current Time'
  @s += "\n%s hour clock" % (@h[:'12_hour'] ? '12' : '24')
  super()
end