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.



891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
# File 'lib/ruby-macrodroid/actions.rb', line 891

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



910
911
912
913
914
915
# File 'lib/ruby-macrodroid/actions.rb', line 910

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



917
918
919
# File 'lib/ruby-macrodroid/actions.rb', line 917

def to_pc()
  'say current_time()'
end

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



921
922
923
924
925
# File 'lib/ruby-macrodroid/actions.rb', line 921

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