Class: GeneratorQtBase
Class Method Summary
collapse
Instance Method Summary
collapse
#_append, _use_by_files, _use_by_models, #get_classname, #get_pluralized_name, #get_singular_name, #get_value, #has_many, #has_one, #indent, is_file_based?, #make_block, #order_by, prepare, #property, #ptr_type, #reset, #resource_name, #should_generate_for, #should_generate_from_manifest, #should_skip_on_client?, sourcefile_to_destfile, #unindent, use, #visibility
Class Method Details
.super_class ⇒ Object
6
7
8
9
10
11
12
|
# File 'lib/metarecord/generators/qt/base.rb', line 6
def super_class
if defined? METARECORD_MODEL_SUPER_CLASS
METARECORD_MODEL_SUPER_CLASS
else
"MetaRecordNotifiable"
end
end
|
.super_class_include ⇒ Object
14
15
16
17
18
19
20
|
# File 'lib/metarecord/generators/qt/base.rb', line 14
def super_class_include
if defined? METARECORD_MODEL_SUPER_CLASS_PATH
METARECORD_MODEL_SUPER_CLASS_PATH
else
"metarecord-qt/metarecordnotifiable.h"
end
end
|
Instance Method Details
#get_type(type) ⇒ Object
34
35
36
37
38
39
|
# File 'lib/metarecord/generators/qt/base.rb', line 34
def get_type type
if type.kind_of? Class
return type.new self if type <= PropertyType
end
PropertyType.new(nativeTypeNameFor type)
end
|
#id_type ⇒ Object
23
24
25
|
# File 'lib/metarecord/generators/qt/base.rb', line 23
def id_type
"QByteArray"
end
|
#nativeTypeNameFor(type) ⇒ Object
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/metarecord/generators/qt/base.rb', line 41
def nativeTypeNameFor type
if type.class == Class
case type.name
when 'String' then 'QString'
when 'ByteArray' then 'QByteArray'
when 'Hash' then 'QVariantMap'
when 'DateTime' then 'QDateTime'
when 'Integer' then 'qint64'
when 'Float' then 'qfloat16'
when 'Boolean' then 'bool'
else type
end
else
case type
when 'std::string' then 'QString'
when 'std::time_t' then 'QDateTime'
when 'DataTree' then 'QJsonObject'
when 'Crails::Odb::id_type' then id_type
else type
end
end
end
|
#null_id ⇒ Object
27
28
29
30
31
32
|
# File 'lib/metarecord/generators/qt/base.rb', line 27
def null_id
case id_type
when 'QByteArray' then 'QByteArray()'
else 0
end
end
|