clevic 0.13.0.b6 → 0.13.0.b9
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +1 -1
- data/{README.txt → README.rdoc} +4 -1
- data/Rakefile +4 -2
- data/TODO +2 -0
- data/bin/clevic +1 -2
- data/lib/clevic/delegates/distinct_delegate.rb +2 -1
- data/lib/clevic/extensions.rb +19 -0
- data/lib/clevic/field.rb +4 -4
- data/lib/clevic/filter_command.rb +2 -2
- data/lib/clevic/framework.rb +2 -2
- data/lib/clevic/model_builder.rb +5 -3
- data/lib/clevic/model_column.rb +3 -0
- data/lib/clevic/qt.rb +1 -1
- data/lib/clevic/qt/table_view.rb +6 -1
- data/lib/clevic/sampler.rb +3 -3
- data/lib/clevic/swing.rb +1 -1
- data/lib/clevic/swing/table_view.rb +5 -1
- data/lib/clevic/table_model.rb +1 -0
- data/lib/clevic/table_view.rb +22 -28
- data/lib/clevic/table_view_paste.rb +2 -2
- data/lib/clevic/version.rb +1 -1
- metadata +127 -214
data/Manifest.txt
CHANGED
data/{README.txt → README.rdoc}
RENAMED
@@ -85,7 +85,10 @@ There are some tests for algorithmic code, but Clevic needs a comprehensive test
|
|
85
85
|
|
86
86
|
== Install
|
87
87
|
|
88
|
-
|
88
|
+
sudo gem install clevic
|
89
|
+
|
90
|
+
Note that clevic depends on qtbindings, which takes a while
|
91
|
+
to compile native code.
|
89
92
|
|
90
93
|
== Thanks
|
91
94
|
|
data/Rakefile
CHANGED
@@ -25,7 +25,7 @@ Bones do
|
|
25
25
|
gem.need_tar false
|
26
26
|
|
27
27
|
depend_on 'fastercsv', '>=1.2.3'
|
28
|
-
depend_on 'gather', '>=0.0.
|
28
|
+
depend_on 'gather', '>=0.0.8'
|
29
29
|
depend_on 'andand', '>= 1.3.0'
|
30
30
|
depend_on 'sequel', '>= 3.8.0'
|
31
31
|
depend_on 'bsearch', '>=1.5.0'
|
@@ -52,7 +52,7 @@ Bones do
|
|
52
52
|
# List of files to generate rdoc from
|
53
53
|
# Not the same as the rdoc -i which is list of files
|
54
54
|
# to search for include directives
|
55
|
-
rdoc.include %w{README.
|
55
|
+
rdoc.include %w{README.rdoc ^lib/clevic/.*\.rb$ models/examples.rb History.txt TODO}
|
56
56
|
|
57
57
|
# List of Regexs to exclude from rdoc processing
|
58
58
|
rdoc.exclude %w{^pkg.*}
|
@@ -64,6 +64,8 @@ Bones do
|
|
64
64
|
#~ rdoc.external true
|
65
65
|
end
|
66
66
|
|
67
|
+
CLEAN.include %w[**/.DS_Store tmp *.log doc website/doc]
|
68
|
+
|
67
69
|
#~ p.clean_globs |= %w[**/.DS_Store tmp *.log]
|
68
70
|
#~ path = (p.rubyforge_name == p.name) ? p.rubyforge_name : "\#{p.rubyforge_name}/\#{p.name}"
|
69
71
|
#~ p.remote_rdoc_dir = File.join(path.gsub(/^#{p.rubyforge_name}\/?/,''), 'rdoc')
|
data/TODO
CHANGED
data/bin/clevic
CHANGED
@@ -23,7 +23,8 @@ class DistinctDelegate
|
|
23
23
|
def dataset
|
24
24
|
base_dataset =
|
25
25
|
unless field.find_options.empty?
|
26
|
-
puts "conditions and order are deprecated. Use dataset instead."
|
26
|
+
puts "#{field.entity_class.name}:#{field.attribute} conditions and order are deprecated. Use dataset instead."
|
27
|
+
puts caller
|
27
28
|
require 'clevic/ar_methods'
|
28
29
|
field.entity_class.plugin :ar_methods
|
29
30
|
field.entity_class.translate( field.find_options )
|
data/lib/clevic/extensions.rb
CHANGED
@@ -14,6 +14,25 @@ class Object
|
|
14
14
|
def with( &block )
|
15
15
|
yield( self )
|
16
16
|
end
|
17
|
+
|
18
|
+
# return a list of the subclasses of a class
|
19
|
+
# from Matt Williams
|
20
|
+
# http://matthewkwilliams.com/index.php/2008/08/22/rubys-objectspace-subclasses/
|
21
|
+
def self.subclasses(direct = false)
|
22
|
+
classes = []
|
23
|
+
if direct
|
24
|
+
ObjectSpace.each_object(Class) do |c|
|
25
|
+
next unless c.superclass == self
|
26
|
+
classes << c
|
27
|
+
end
|
28
|
+
else
|
29
|
+
ObjectSpace.each_object(Class) do |c|
|
30
|
+
next unless c.ancestors.include?(self) and (c != self)
|
31
|
+
classes << c
|
32
|
+
end
|
33
|
+
end
|
34
|
+
classes
|
35
|
+
end
|
17
36
|
end
|
18
37
|
|
19
38
|
class String
|
data/lib/clevic/field.rb
CHANGED
@@ -318,7 +318,7 @@ EOF
|
|
318
318
|
|
319
319
|
# Clevic::ModelColumn object
|
320
320
|
def meta
|
321
|
-
entity_class.meta[attribute]
|
321
|
+
entity_class.meta[attribute] || ModelColumn.new( attribute, {} )
|
322
322
|
end
|
323
323
|
|
324
324
|
# return true if this field can be used in a filter
|
@@ -487,7 +487,7 @@ protected
|
|
487
487
|
# sensible display format defaults if they're not defined.
|
488
488
|
def default_format!
|
489
489
|
@format ||=
|
490
|
-
case meta.type
|
490
|
+
case meta.andand.type
|
491
491
|
when :time; '%H:%M'
|
492
492
|
when :date; '%d-%h-%y'
|
493
493
|
when :datetime; '%d-%h-%y %H:%M:%S'
|
@@ -498,7 +498,7 @@ protected
|
|
498
498
|
# sensible edit format defaults if they're not defined.
|
499
499
|
def default_edit_format!
|
500
500
|
@edit_format ||=
|
501
|
-
case meta.type
|
501
|
+
case meta.andand.type
|
502
502
|
when :date; '%d-%h-%Y'
|
503
503
|
when :datetime; '%d-%h-%Y %H:%M:%S'
|
504
504
|
end || default_format!
|
@@ -507,7 +507,7 @@ protected
|
|
507
507
|
# sensible alignment defaults if they're not defined.
|
508
508
|
def default_alignment!
|
509
509
|
@alignment ||=
|
510
|
-
case meta.type
|
510
|
+
case meta.andand.type
|
511
511
|
when :decimal, :integer, :float; :right
|
512
512
|
when :boolean; :centre
|
513
513
|
else :left
|
@@ -2,9 +2,9 @@ module Clevic
|
|
2
2
|
class FilterCommand
|
3
3
|
# filter_block will be passed a Dataset to filter.
|
4
4
|
# filter_message will be displayed.
|
5
|
-
def initialize( table_view, message, &filter_block )
|
5
|
+
def initialize( table_view, message = nil, &filter_block )
|
6
6
|
@table_view = table_view
|
7
|
-
@message = message
|
7
|
+
@message = message || 'filtered'
|
8
8
|
@filter_block = filter_block
|
9
9
|
end
|
10
10
|
|
data/lib/clevic/framework.rb
CHANGED
@@ -20,9 +20,9 @@ class Class
|
|
20
20
|
# and exception. Otherwise if the named method already
|
21
21
|
# exists, just leave it alone.
|
22
22
|
def framework_responsibility( method_name )
|
23
|
-
unless
|
23
|
+
unless method_defined?( method_name.to_sym )
|
24
24
|
define_method method_name do
|
25
|
-
raise "Framework-specific code
|
25
|
+
raise "Framework-specific code not defined for #{self.class}##{method_name}"
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
data/lib/clevic/model_builder.rb
CHANGED
@@ -395,7 +395,9 @@ class ModelBuilder
|
|
395
395
|
end
|
396
396
|
|
397
397
|
unless block.nil?
|
398
|
-
if block.arity ==
|
398
|
+
if RUBY_VERSION && RUBY_VERSION >= '1.9.0' && block.arity == 0
|
399
|
+
instance_eval( &block )
|
400
|
+
elsif block.arity == -1
|
399
401
|
instance_eval( &block )
|
400
402
|
else
|
401
403
|
block.call( self )
|
@@ -644,9 +646,9 @@ protected
|
|
644
646
|
# one-to-one relationships can be edited. many-to-one certainly can't
|
645
647
|
entity_class.meta[attribute].type != :many_to_one
|
646
648
|
|
647
|
-
when entity_class.
|
649
|
+
when entity_class.method_defined?( attribute )
|
648
650
|
# read-only if there's no setter for the attribute
|
649
|
-
!entity_class.
|
651
|
+
!entity_class.method_defined?( "#{attribute.to_s}=" )
|
650
652
|
|
651
653
|
else
|
652
654
|
# default to not read-only
|
data/lib/clevic/model_column.rb
CHANGED
data/lib/clevic/qt.rb
CHANGED
@@ -16,7 +16,7 @@ require 'clevic/qt/table_view.rb'
|
|
16
16
|
|
17
17
|
# all other files in the qt subdirectory
|
18
18
|
require 'pathname'
|
19
|
-
( Pathname.new( __FILE__ ).parent + 'qt' ).children.
|
19
|
+
( Pathname.new( __FILE__ ).parent + 'qt' ).children.select{|x| x.to_s =~ /.rb$/ }.each do |child|
|
20
20
|
require child.to_s
|
21
21
|
end
|
22
22
|
|
data/lib/clevic/qt/table_view.rb
CHANGED
data/lib/clevic/sampler.rb
CHANGED
@@ -42,7 +42,7 @@ class Sampler
|
|
42
42
|
else
|
43
43
|
set
|
44
44
|
end. \
|
45
|
-
max{|a,b| a.to_s.length <=> b.to_s.length }.upcase
|
45
|
+
max{|a,b| a.to_s.length <=> b.to_s.length }.to_s.upcase
|
46
46
|
else
|
47
47
|
# choose samples based on the type of the field
|
48
48
|
case meta.type
|
@@ -65,8 +65,8 @@ class Sampler
|
|
65
65
|
related_sample
|
66
66
|
|
67
67
|
else
|
68
|
-
|
69
|
-
raise "Sampler#compute can't figure out sample for #{entity_class.name}
|
68
|
+
unless meta.type.nil?
|
69
|
+
raise "Sampler#compute can't figure out sample for #{entity_class.name}##{field_name} because it's a #{meta.type.inspect}"
|
70
70
|
end
|
71
71
|
end
|
72
72
|
end
|
data/lib/clevic/swing.rb
CHANGED
@@ -13,7 +13,7 @@ require 'clevic/swing/table_view.rb'
|
|
13
13
|
|
14
14
|
# all other files in the swing subdirectory
|
15
15
|
require 'pathname'
|
16
|
-
( Pathname.new( __FILE__ ).parent + 'swing' ).children.
|
16
|
+
( Pathname.new( __FILE__ ).parent + 'swing' ).children.select{|x| x.to_s =~ /.rb$/ }.each do |child|
|
17
17
|
require child.to_s
|
18
18
|
end
|
19
19
|
|
data/lib/clevic/table_model.rb
CHANGED
data/lib/clevic/table_view.rb
CHANGED
@@ -1,4 +1,9 @@
|
|
1
|
-
|
1
|
+
if defined?( RUBY_VERSION ) && RUBY_VERSION >= '1.9.0'
|
2
|
+
require 'csv'
|
3
|
+
else
|
4
|
+
require 'fastercsv'
|
5
|
+
end
|
6
|
+
|
2
7
|
require 'stringio'
|
3
8
|
|
4
9
|
require 'clevic/model_builder.rb'
|
@@ -175,11 +180,13 @@ class TableView
|
|
175
180
|
def ditto
|
176
181
|
sanity_check_ditto
|
177
182
|
sanity_check_read_only
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
+
selection_model.selected_indexes.each do |index|
|
184
|
+
one_up_index = index.choppy { |i| i.row -= 1 }
|
185
|
+
previous_value = one_up_index.attribute_value
|
186
|
+
if index.attribute_value != previous_value
|
187
|
+
index.attribute_value = previous_value
|
188
|
+
model.data_changed( index )
|
189
|
+
end
|
183
190
|
end
|
184
191
|
end
|
185
192
|
|
@@ -454,7 +461,7 @@ class TableView
|
|
454
461
|
# actually, model.save will check if the record
|
455
462
|
# is really changed before writing to DB.
|
456
463
|
def save_row( index )
|
457
|
-
if !index.nil? && index.valid?
|
464
|
+
if !index.nil? && index.valid? && index.entity
|
458
465
|
saved = model.save( index )
|
459
466
|
if !saved
|
460
467
|
# construct error message(s)
|
@@ -463,7 +470,7 @@ class TableView
|
|
463
470
|
"#{field} (#{abbr_value}) #{errors.join(',')}"
|
464
471
|
end.join( "\n" )
|
465
472
|
|
466
|
-
show_error( "#{index.rc} #{msg}"
|
473
|
+
show_error( "Validation Errors: #{index.rc} #{msg}" )
|
467
474
|
end
|
468
475
|
saved
|
469
476
|
end
|
@@ -534,8 +541,8 @@ class TableView
|
|
534
541
|
unfilter_action.enabled = filtered?
|
535
542
|
end
|
536
543
|
|
537
|
-
def filter_by_dataset( message, &dataset_block )
|
538
|
-
# clean this up and make it work AND for multiple columns, OR for multiple rows
|
544
|
+
def filter_by_dataset( message = nil, &dataset_block )
|
545
|
+
# TODO clean this up and make it work AND for multiple columns, OR for multiple rows
|
539
546
|
self.filters << FilterCommand.new( self, message, &dataset_block )
|
540
547
|
|
541
548
|
# try to end up on the same entity, even after the filter
|
@@ -625,31 +632,19 @@ class TableView
|
|
625
632
|
# or entity_model. Return nil if no match found.
|
626
633
|
# TODO doesn't really belong here because TableView will not always
|
627
634
|
# be in a TabWidget context.
|
628
|
-
|
629
|
-
def find_table_view( entity_model_or_view )
|
630
|
-
raise "framework responsibility"
|
631
|
-
end
|
632
|
-
end
|
635
|
+
framework_responsibility :find_table_view
|
633
636
|
|
634
637
|
# execute the block with the TableView instance
|
635
638
|
# currently handling the entity_model_or_view.
|
636
639
|
# Don't execute the block if nothing is found.
|
637
640
|
# TODO doesn't really belong here because TableView will not always
|
638
641
|
# be in a TabWidget context.
|
639
|
-
|
640
|
-
def with_table_view( entity_model_or_view, &block )
|
641
|
-
raise "framework responsibility"
|
642
|
-
end
|
643
|
-
end
|
642
|
+
framework_responsibility :with_table_view
|
644
643
|
|
645
644
|
# make this window visible if it's in a TabWidget
|
646
645
|
# TODO doesn't really belong here because TableView will not always
|
647
646
|
# be in a TabWidget context.
|
648
|
-
|
649
|
-
def raise_widget
|
650
|
-
raise "framework responsibility"
|
651
|
-
end
|
652
|
-
end
|
647
|
+
framework_responsibility :raise_widget
|
653
648
|
|
654
649
|
# set next_index for certain operations. Is only activated when
|
655
650
|
# to_next_index is called.
|
@@ -672,10 +667,9 @@ class TableView
|
|
672
667
|
|
673
668
|
protected
|
674
669
|
|
675
|
-
#
|
670
|
+
# Show a busy cursor, do the block, back to normal cursor
|
676
671
|
# return value of block
|
677
|
-
|
678
|
-
# :busy_cursor
|
672
|
+
framework_responsibility :busy_cursor
|
679
673
|
|
680
674
|
# return either the set of indexes with all invalid indexes
|
681
675
|
# remove, or the current selection.
|
@@ -95,10 +95,10 @@ class TableView
|
|
95
95
|
|
96
96
|
case text
|
97
97
|
when /\t/
|
98
|
-
paste_array(
|
98
|
+
paste_array( CSV.parse( text, :col_sep => "\t" ) )
|
99
99
|
# assume multi-line text, or text with commas, is csv
|
100
100
|
when /[,\n]/
|
101
|
-
paste_array(
|
101
|
+
paste_array( CSV.parse( text, :col_sep => ',' ) )
|
102
102
|
else
|
103
103
|
paste_value_to_selection( text )
|
104
104
|
end
|
data/lib/clevic/version.rb
CHANGED
metadata
CHANGED
@@ -1,261 +1,184 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: clevic
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.13.0.b9
|
5
5
|
prerelease: 7
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 13
|
9
|
-
- 0
|
10
|
-
- b
|
11
|
-
- 6
|
12
|
-
version: 0.13.0.b6
|
13
6
|
platform: ruby
|
14
|
-
authors:
|
7
|
+
authors:
|
15
8
|
- John Anderson
|
16
9
|
autorequire:
|
17
10
|
bindir: bin
|
18
11
|
cert_chain: []
|
19
|
-
|
20
|
-
date: 2011-05-27 00:00:00 +02:00
|
12
|
+
date: 2011-08-10 00:00:00.000000000 +02:00
|
21
13
|
default_executable:
|
22
|
-
dependencies:
|
23
|
-
- !ruby/object:Gem::Dependency
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
24
16
|
name: fastercsv
|
25
|
-
|
26
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
17
|
+
requirement: &75363080 !ruby/object:Gem::Requirement
|
27
18
|
none: false
|
28
|
-
requirements:
|
29
|
-
- -
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
hash: 25
|
32
|
-
segments:
|
33
|
-
- 1
|
34
|
-
- 2
|
35
|
-
- 3
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
36
22
|
version: 1.2.3
|
37
23
|
type: :runtime
|
38
|
-
version_requirements: *id001
|
39
|
-
- !ruby/object:Gem::Dependency
|
40
|
-
name: gather
|
41
24
|
prerelease: false
|
42
|
-
|
25
|
+
version_requirements: *75363080
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: gather
|
28
|
+
requirement: &75362580 !ruby/object:Gem::Requirement
|
43
29
|
none: false
|
44
|
-
requirements:
|
45
|
-
- -
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
|
48
|
-
segments:
|
49
|
-
- 0
|
50
|
-
- 0
|
51
|
-
- 6
|
52
|
-
version: 0.0.6
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.0.8
|
53
34
|
type: :runtime
|
54
|
-
version_requirements: *id002
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: andand
|
57
35
|
prerelease: false
|
58
|
-
|
36
|
+
version_requirements: *75362580
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: andand
|
39
|
+
requirement: &75362180 !ruby/object:Gem::Requirement
|
59
40
|
none: false
|
60
|
-
requirements:
|
61
|
-
- -
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
hash: 27
|
64
|
-
segments:
|
65
|
-
- 1
|
66
|
-
- 3
|
67
|
-
- 0
|
41
|
+
requirements:
|
42
|
+
- - ! '>='
|
43
|
+
- !ruby/object:Gem::Version
|
68
44
|
version: 1.3.0
|
69
45
|
type: :runtime
|
70
|
-
version_requirements: *id003
|
71
|
-
- !ruby/object:Gem::Dependency
|
72
|
-
name: sequel
|
73
46
|
prerelease: false
|
74
|
-
|
47
|
+
version_requirements: *75362180
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: sequel
|
50
|
+
requirement: &75361840 !ruby/object:Gem::Requirement
|
75
51
|
none: false
|
76
|
-
requirements:
|
77
|
-
- -
|
78
|
-
- !ruby/object:Gem::Version
|
79
|
-
hash: 39
|
80
|
-
segments:
|
81
|
-
- 3
|
82
|
-
- 8
|
83
|
-
- 0
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
84
55
|
version: 3.8.0
|
85
56
|
type: :runtime
|
86
|
-
version_requirements: *id004
|
87
|
-
- !ruby/object:Gem::Dependency
|
88
|
-
name: bsearch
|
89
57
|
prerelease: false
|
90
|
-
|
58
|
+
version_requirements: *75361840
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: bsearch
|
61
|
+
requirement: &75351120 !ruby/object:Gem::Requirement
|
91
62
|
none: false
|
92
|
-
requirements:
|
93
|
-
- -
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
hash: 3
|
96
|
-
segments:
|
97
|
-
- 1
|
98
|
-
- 5
|
99
|
-
- 0
|
63
|
+
requirements:
|
64
|
+
- - ! '>='
|
65
|
+
- !ruby/object:Gem::Version
|
100
66
|
version: 1.5.0
|
101
67
|
type: :runtime
|
102
|
-
version_requirements: *id005
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: hpricot
|
105
68
|
prerelease: false
|
106
|
-
|
69
|
+
version_requirements: *75351120
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: hpricot
|
72
|
+
requirement: &75350840 !ruby/object:Gem::Requirement
|
107
73
|
none: false
|
108
|
-
requirements:
|
109
|
-
- -
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
hash: 61
|
112
|
-
segments:
|
113
|
-
- 0
|
114
|
-
- 8
|
115
|
-
- 1
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
116
77
|
version: 0.8.1
|
117
78
|
type: :runtime
|
118
|
-
version_requirements: *id006
|
119
|
-
- !ruby/object:Gem::Dependency
|
120
|
-
name: hashery
|
121
79
|
prerelease: false
|
122
|
-
|
80
|
+
version_requirements: *75350840
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: hashery
|
83
|
+
requirement: &75350520 !ruby/object:Gem::Requirement
|
123
84
|
none: false
|
124
|
-
requirements:
|
125
|
-
- -
|
126
|
-
- !ruby/object:Gem::Version
|
127
|
-
hash: 27
|
128
|
-
segments:
|
129
|
-
- 1
|
130
|
-
- 3
|
131
|
-
- 0
|
85
|
+
requirements:
|
86
|
+
- - ! '>='
|
87
|
+
- !ruby/object:Gem::Version
|
132
88
|
version: 1.3.0
|
133
89
|
type: :runtime
|
134
|
-
version_requirements: *id007
|
135
|
-
- !ruby/object:Gem::Dependency
|
136
|
-
name: io-like
|
137
90
|
prerelease: false
|
138
|
-
|
91
|
+
version_requirements: *75350520
|
92
|
+
- !ruby/object:Gem::Dependency
|
93
|
+
name: io-like
|
94
|
+
requirement: &75350250 !ruby/object:Gem::Requirement
|
139
95
|
none: false
|
140
|
-
requirements:
|
141
|
-
- -
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
hash: 19
|
144
|
-
segments:
|
145
|
-
- 0
|
146
|
-
- 3
|
147
|
-
- 0
|
96
|
+
requirements:
|
97
|
+
- - ! '>='
|
98
|
+
- !ruby/object:Gem::Version
|
148
99
|
version: 0.3.0
|
149
100
|
type: :runtime
|
150
|
-
version_requirements: *id008
|
151
|
-
- !ruby/object:Gem::Dependency
|
152
|
-
name: qtbindings
|
153
101
|
prerelease: false
|
154
|
-
|
102
|
+
version_requirements: *75350250
|
103
|
+
- !ruby/object:Gem::Dependency
|
104
|
+
name: qtbindings
|
105
|
+
requirement: &75349950 !ruby/object:Gem::Requirement
|
155
106
|
none: false
|
156
|
-
requirements:
|
157
|
-
- -
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
hash: 33
|
160
|
-
segments:
|
161
|
-
- 4
|
162
|
-
- 6
|
163
|
-
- 3
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
164
110
|
version: 4.6.3
|
165
111
|
type: :runtime
|
166
|
-
version_requirements: *id009
|
167
|
-
- !ruby/object:Gem::Dependency
|
168
|
-
name: qtext
|
169
112
|
prerelease: false
|
170
|
-
|
113
|
+
version_requirements: *75349950
|
114
|
+
- !ruby/object:Gem::Dependency
|
115
|
+
name: qtext
|
116
|
+
requirement: &75349630 !ruby/object:Gem::Requirement
|
171
117
|
none: false
|
172
|
-
requirements:
|
173
|
-
- -
|
174
|
-
- !ruby/object:Gem::Version
|
175
|
-
hash: 9
|
176
|
-
segments:
|
177
|
-
- 0
|
178
|
-
- 6
|
179
|
-
- 7
|
118
|
+
requirements:
|
119
|
+
- - ! '>='
|
120
|
+
- !ruby/object:Gem::Version
|
180
121
|
version: 0.6.7
|
181
122
|
type: :runtime
|
182
|
-
version_requirements: *id010
|
183
|
-
- !ruby/object:Gem::Dependency
|
184
|
-
name: test-unit
|
185
123
|
prerelease: false
|
186
|
-
|
124
|
+
version_requirements: *75349630
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: test-unit
|
127
|
+
requirement: &75349350 !ruby/object:Gem::Requirement
|
187
128
|
none: false
|
188
|
-
requirements:
|
189
|
-
- -
|
190
|
-
- !ruby/object:Gem::Version
|
191
|
-
|
192
|
-
segments:
|
193
|
-
- 0
|
194
|
-
version: "0"
|
129
|
+
requirements:
|
130
|
+
- - ! '>='
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '0'
|
195
133
|
type: :development
|
196
|
-
version_requirements: *id011
|
197
|
-
- !ruby/object:Gem::Dependency
|
198
|
-
name: shoulda
|
199
134
|
prerelease: false
|
200
|
-
|
135
|
+
version_requirements: *75349350
|
136
|
+
- !ruby/object:Gem::Dependency
|
137
|
+
name: shoulda
|
138
|
+
requirement: &75349000 !ruby/object:Gem::Requirement
|
201
139
|
none: false
|
202
|
-
requirements:
|
203
|
-
- -
|
204
|
-
- !ruby/object:Gem::Version
|
205
|
-
hash: 37
|
206
|
-
segments:
|
207
|
-
- 2
|
208
|
-
- 11
|
209
|
-
- 3
|
140
|
+
requirements:
|
141
|
+
- - ! '>='
|
142
|
+
- !ruby/object:Gem::Version
|
210
143
|
version: 2.11.3
|
211
144
|
type: :development
|
212
|
-
version_requirements: *id012
|
213
|
-
- !ruby/object:Gem::Dependency
|
214
|
-
name: faker
|
215
145
|
prerelease: false
|
216
|
-
|
146
|
+
version_requirements: *75349000
|
147
|
+
- !ruby/object:Gem::Dependency
|
148
|
+
name: faker
|
149
|
+
requirement: &75348710 !ruby/object:Gem::Requirement
|
217
150
|
none: false
|
218
|
-
requirements:
|
219
|
-
- -
|
220
|
-
- !ruby/object:Gem::Version
|
221
|
-
|
222
|
-
segments:
|
223
|
-
- 0
|
224
|
-
- 3
|
225
|
-
- 1
|
226
|
-
version: 0.3.1
|
151
|
+
requirements:
|
152
|
+
- - ! '>='
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
version: '0'
|
227
155
|
type: :development
|
228
|
-
version_requirements: *id013
|
229
|
-
- !ruby/object:Gem::Dependency
|
230
|
-
name: bones
|
231
156
|
prerelease: false
|
232
|
-
|
157
|
+
version_requirements: *75348710
|
158
|
+
- !ruby/object:Gem::Dependency
|
159
|
+
name: bones
|
160
|
+
requirement: &75348280 !ruby/object:Gem::Requirement
|
233
161
|
none: false
|
234
|
-
requirements:
|
235
|
-
- -
|
236
|
-
- !ruby/object:Gem::Version
|
237
|
-
|
238
|
-
segments:
|
239
|
-
- 3
|
240
|
-
- 6
|
241
|
-
- 0
|
242
|
-
version: 3.6.0
|
162
|
+
requirements:
|
163
|
+
- - ! '>='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: 3.7.0
|
243
166
|
type: :development
|
244
|
-
|
167
|
+
prerelease: false
|
168
|
+
version_requirements: *75348280
|
245
169
|
description: SQL table GUI with Qt / Java Swing and Sequel
|
246
170
|
email: panic@semiosix.com
|
247
|
-
executables:
|
171
|
+
executables:
|
248
172
|
- clevic
|
249
173
|
extensions: []
|
250
|
-
|
251
|
-
extra_rdoc_files:
|
174
|
+
extra_rdoc_files:
|
252
175
|
- History.txt
|
253
|
-
- README.
|
176
|
+
- README.rdoc
|
254
177
|
- TODO
|
255
|
-
files:
|
178
|
+
files:
|
256
179
|
- History.txt
|
257
180
|
- Manifest.txt
|
258
|
-
- README.
|
181
|
+
- README.rdoc
|
259
182
|
- Rakefile
|
260
183
|
- TODO
|
261
184
|
- bin/clevic
|
@@ -391,43 +314,33 @@ files:
|
|
391
314
|
has_rdoc: true
|
392
315
|
homepage: http://clevic.rubyforge.org
|
393
316
|
licenses: []
|
394
|
-
|
395
317
|
post_install_message:
|
396
|
-
rdoc_options:
|
318
|
+
rdoc_options:
|
397
319
|
- -W
|
398
320
|
- http://gitweb.semiosix.com/gitweb.cgi?p=clevic;a=blob;f=%s;hb=HEAD
|
399
321
|
- --main
|
400
322
|
- README.txt
|
401
|
-
require_paths:
|
323
|
+
require_paths:
|
402
324
|
- lib
|
403
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
325
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
404
326
|
none: false
|
405
|
-
requirements:
|
406
|
-
- -
|
407
|
-
- !ruby/object:Gem::Version
|
408
|
-
|
409
|
-
|
410
|
-
- 0
|
411
|
-
version: "0"
|
412
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
327
|
+
requirements:
|
328
|
+
- - ! '>='
|
329
|
+
- !ruby/object:Gem::Version
|
330
|
+
version: '0'
|
331
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
413
332
|
none: false
|
414
|
-
requirements:
|
415
|
-
- -
|
416
|
-
- !ruby/object:Gem::Version
|
417
|
-
hash: 25
|
418
|
-
segments:
|
419
|
-
- 1
|
420
|
-
- 3
|
421
|
-
- 1
|
333
|
+
requirements:
|
334
|
+
- - ! '>'
|
335
|
+
- !ruby/object:Gem::Version
|
422
336
|
version: 1.3.1
|
423
337
|
requirements: []
|
424
|
-
|
425
338
|
rubyforge_project: clevic
|
426
|
-
rubygems_version: 1.
|
339
|
+
rubygems_version: 1.6.2
|
427
340
|
signing_key:
|
428
341
|
specification_version: 3
|
429
|
-
summary:
|
430
|
-
test_files:
|
342
|
+
summary: http://clevic.
|
343
|
+
test_files:
|
431
344
|
- test/test_table_searcher.rb
|
432
345
|
- test/test_model_index_extensions.rb
|
433
346
|
- test/test_table_model.rb
|