clevic 0.12.0 → 0.13.0.b1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +10 -0
- data/Manifest.txt +209 -30
- data/README.txt +16 -20
- data/Rakefile +8 -8
- data/TODO +6 -7
- data/bin/clevic +12 -73
- data/lib/clevic/action_builder.rb +168 -0
- data/lib/clevic/ar_methods.rb +120 -0
- data/lib/clevic/attribute_list.rb +56 -0
- data/lib/clevic/cache_table.rb +60 -37
- data/lib/clevic/default_view.rb +3 -16
- data/lib/clevic/delegate.rb +46 -0
- data/lib/clevic/emitter.rb +38 -0
- data/lib/clevic/extensions.rb +61 -114
- data/lib/clevic/field.rb +159 -228
- data/lib/clevic/field_valuer.rb +165 -0
- data/lib/clevic/filter_command.rb +2 -6
- data/lib/clevic/generic_format.rb +52 -0
- data/lib/clevic/{ui → icons}/icon.png +0 -0
- data/lib/clevic/many_field.rb +7 -0
- data/lib/clevic/model_builder.rb +234 -146
- data/lib/clevic/model_column.rb +61 -13
- data/lib/clevic/order_attribute.rb +10 -0
- data/lib/clevic/qt.rb +35 -0
- data/lib/clevic/qt/action_builder.rb +47 -0
- data/lib/clevic/qt/boolean_delegate.rb +8 -0
- data/lib/clevic/{browser.rb → qt/browser.rb} +35 -14
- data/lib/clevic/qt/clipboard.rb +35 -0
- data/lib/clevic/qt/combo_delegate.rb +198 -0
- data/lib/clevic/qt/delegates.rb +1 -0
- data/lib/clevic/qt/distinct_delegate.rb +35 -0
- data/lib/clevic/qt/extensions.rb +52 -0
- data/lib/clevic/qt/field.rb +18 -0
- data/lib/clevic/{item_delegate.rb → qt/item_delegate.rb} +8 -4
- data/lib/clevic/qt/relational_delegate.rb +87 -0
- data/lib/clevic/{search_dialog.rb → qt/search_dialog.rb} +1 -11
- data/lib/clevic/qt/set_delegate.rb +44 -0
- data/lib/clevic/qt/table_model.rb +331 -0
- data/lib/clevic/qt/table_view.rb +344 -0
- data/lib/clevic/qt/text_area_delegate.rb +8 -0
- data/lib/clevic/{text_delegate.rb → qt/text_delegate.rb} +6 -4
- data/lib/clevic/{ui → qt/ui}/.gitignore +0 -0
- data/lib/clevic/{ui → qt/ui}/browser.ui +0 -0
- data/lib/clevic/{ui → qt/ui}/search_dialog.ui +0 -0
- data/lib/clevic/rails_models_loaders.rb +56 -0
- data/lib/clevic/record.rb +2 -17
- data/lib/clevic/sampler.rb +81 -0
- data/lib/clevic/sequel_ar_adapter.rb +215 -0
- data/lib/clevic/sequel_length_validation.rb +23 -0
- data/lib/clevic/sequel_meta.rb +65 -0
- data/lib/clevic/sequel_naked.rb +30 -0
- data/lib/clevic/swing.rb +38 -0
- data/lib/clevic/swing/action.rb +125 -0
- data/lib/clevic/swing/action_builder.rb +47 -0
- data/lib/clevic/swing/boolean_delegate.rb +26 -0
- data/lib/clevic/swing/browser.rb +282 -0
- data/lib/clevic/swing/cell_editor.rb +95 -0
- data/lib/clevic/swing/cell_renderer.rb +44 -0
- data/lib/clevic/swing/clipboard.rb +135 -0
- data/lib/clevic/swing/combo_delegate.rb +336 -0
- data/lib/clevic/swing/confirm_dialog.rb +57 -0
- data/lib/clevic/swing/delegate.rb +40 -0
- data/lib/clevic/swing/distinct_delegate.rb +30 -0
- data/lib/clevic/swing/extensions.rb +274 -0
- data/lib/clevic/swing/field.rb +35 -0
- data/lib/clevic/swing/relational_delegate.rb +48 -0
- data/lib/clevic/swing/row_header.rb +210 -0
- data/lib/clevic/swing/search_dialog.rb +230 -0
- data/lib/clevic/swing/selection_model.rb +90 -0
- data/lib/clevic/swing/set_delegate.rb +41 -0
- data/lib/clevic/swing/swing_table_index.rb +43 -0
- data/lib/clevic/swing/table_model.rb +200 -0
- data/lib/clevic/swing/table_view.rb +385 -0
- data/lib/clevic/swing/table_view_focus.rb +47 -0
- data/lib/clevic/swing/tag_delegate.rb +127 -0
- data/lib/clevic/swing/tag_editor.rb +101 -0
- data/lib/clevic/swing/text_area_delegate.rb +46 -0
- data/lib/clevic/swing/text_delegate.rb +31 -0
- data/lib/clevic/swing/ui/build.xml +74 -0
- data/lib/clevic/swing/ui/dist/README.TXT +33 -0
- data/lib/clevic/swing/ui/dist/lib/swing-layout-1.0.3.jar +0 -0
- data/lib/clevic/swing/ui/manifest.mf +3 -0
- data/lib/clevic/swing/ui/nbproject/build-impl.xml +731 -0
- data/lib/clevic/swing/ui/nbproject/genfiles.properties +8 -0
- data/lib/clevic/swing/ui/nbproject/private/config.properties +0 -0
- data/lib/clevic/swing/ui/nbproject/private/private.properties +6 -0
- data/lib/clevic/swing/ui/nbproject/private/private.xml +4 -0
- data/lib/clevic/swing/ui/nbproject/project.properties +70 -0
- data/lib/clevic/swing/ui/nbproject/project.xml +14 -0
- data/lib/clevic/swing/ui/src/SearchDialog.form +158 -0
- data/lib/clevic/swing/ui/src/SearchDialog.java +163 -0
- data/lib/clevic/swing/ui/src/TagEditor.form +106 -0
- data/lib/clevic/swing/ui/src/TagEditor.java +108 -0
- data/lib/clevic/swing/ui/src/resources/SearchDialog.properties +0 -0
- data/lib/clevic/table_index.rb +100 -0
- data/lib/clevic/table_model.rb +54 -425
- data/lib/clevic/table_searcher.rb +113 -116
- data/lib/clevic/table_view.rb +171 -399
- data/lib/clevic/table_view_paste.rb +199 -0
- data/lib/clevic/version.rb +3 -2
- data/lib/clevic/view.rb +94 -43
- data/models/accounts_models.rb +13 -13
- data/models/minimal_models.rb +5 -9
- data/models/times_models.rb +19 -14
- data/models/times_psql_models.rb +10 -0
- data/models/times_sqlite_models.rb +1 -8
- data/models/values_models.rb +2 -8
- data/tasks/clevic.rake +1 -1
- data/tasks/rdoc.rake +1 -5
- data/tasks/website.rake +1 -1
- data/test/test_cache_table.rb +15 -29
- data/test/test_helper.rb +14 -83
- data/test/test_order_attribute.rb +1 -1
- data/test/test_table_model.rb +0 -21
- data/test/test_table_searcher.rb +67 -61
- metadata +262 -78
- data/lib/clevic.rb +0 -4
- data/lib/clevic/db_options.rb +0 -112
- data/lib/clevic/delegates.rb +0 -386
data/test/test_table_searcher.rb
CHANGED
@@ -1,23 +1,10 @@
|
|
1
|
+
require 'generator'
|
2
|
+
require 'logger'
|
3
|
+
|
1
4
|
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
5
|
require 'clevic/table_searcher.rb'
|
3
6
|
|
4
|
-
class CreateFakePassengers < ActiveRecord::Migration
|
5
|
-
MAX_PASSENGERS = 100
|
6
|
-
NATIONALITIES = %w{Canada USA Britain UAE}
|
7
|
-
|
8
|
-
def self.up
|
9
|
-
1.upto( MAX_PASSENGERS ) do |i|
|
10
|
-
Passenger.create :name => Faker::Name.name, :flight => Flight.find(:all)[i%4], :nationality => NATIONALITIES[i%4], :row => i, :seat => %w{A B C D}[i % 4]
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
def self.down
|
15
|
-
Passenger.delete_all
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
7
|
class MockSearchCriteria
|
20
|
-
|
21
8
|
def initialize( &block )
|
22
9
|
@direction = :forwards
|
23
10
|
@from_start = false
|
@@ -33,50 +20,47 @@ end
|
|
33
20
|
|
34
21
|
class TestTableSearcher < Test::Unit::TestCase
|
35
22
|
def self.startup
|
36
|
-
|
23
|
+
#~ Passenger.db.loggers = [Logger.new($stdout)]
|
24
|
+
suite.db[:passengers].delete
|
25
|
+
CreateFakePassengers.new( suite.db ).up
|
26
|
+
|
27
|
+
# force Passenger to re-read db_schema
|
28
|
+
Passenger.dataset = Passenger.dataset
|
37
29
|
end
|
38
30
|
|
39
31
|
def self.shutdown
|
40
|
-
CreateFakePassengers.down
|
32
|
+
CreateFakePassengers.new( suite.db ).down
|
41
33
|
end
|
42
34
|
|
43
35
|
def setup
|
44
36
|
@simple_search_criteria = MockSearchCriteria.new
|
45
|
-
@id_order_attribute = OrderAttribute.new( Passenger, 'id' )
|
46
|
-
|
47
37
|
@name_field = Clevic::Field.new( :name, Passenger, {} )
|
48
38
|
@nationality_field = Clevic::Field.new( :nationality, Passenger, {} )
|
49
|
-
@all_passengers = Passenger.
|
39
|
+
@all_passengers = Passenger.filter( :flight_id => Flight.first.id ).order( :id ).all
|
50
40
|
end
|
51
41
|
|
52
42
|
context 'on initialisation' do
|
53
43
|
should "have a matching field attribute on construction" do
|
54
|
-
ts = Clevic::TableSearcher.new( Passenger,
|
44
|
+
ts = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @name_field )
|
55
45
|
assert_equal @name_field.attribute, ts.field.attribute
|
56
46
|
end
|
57
47
|
|
58
|
-
should "throw an exception when called with no order attributes" do
|
59
|
-
assert_raise( RuntimeError ) do
|
60
|
-
Clevic::TableSearcher.new( Passenger, nil, @simple_search_criteria, @name_field )
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
should "throw an exception when called with an empty collection of order attributes" do
|
65
|
-
assert_raise( RuntimeError ) do
|
66
|
-
Clevic::TableSearcher.new( Passenger, [], @simple_search_criteria, @name_field )
|
67
|
-
end
|
68
|
-
end
|
69
|
-
|
70
48
|
should "throw an exception when called with no field" do
|
71
49
|
assert_raise( RuntimeError ) do
|
72
|
-
Clevic::TableSearcher.new( Passenger,
|
50
|
+
Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, nil )
|
73
51
|
end
|
74
52
|
end
|
75
53
|
|
76
54
|
should 'throw an exception for an unknown direction' do
|
77
55
|
@simple_search_criteria.direction = :other
|
78
56
|
assert_raise( RuntimeError ) do
|
79
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
57
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
should "raise an expection for a naked dataset" do
|
62
|
+
assert_raise( RuntimeError ) do
|
63
|
+
Clevic::TableSearcher.new( Passenger.db[:passengers], @simple_search_criteria, @nationality_field )
|
80
64
|
end
|
81
65
|
end
|
82
66
|
end
|
@@ -85,32 +69,35 @@ class TestTableSearcher < Test::Unit::TestCase
|
|
85
69
|
setup do
|
86
70
|
@simple_search_criteria.search_text = CreateFakePassengers::NATIONALITIES[0]
|
87
71
|
@passenger_generator = Generator.new( @all_passengers )
|
72
|
+
@simple_search_criteria.from_start = true
|
88
73
|
end
|
89
74
|
|
90
75
|
should "have #{CreateFakePassengers::MAX_PASSENGERS} passengers" do
|
91
76
|
assert_equal CreateFakePassengers::MAX_PASSENGERS, Passenger.count
|
92
77
|
end
|
93
78
|
|
79
|
+
should_eventually "work with several ordering fields"
|
80
|
+
# Sequel::SQL::OrderedExpression:0xb50a3b14 @expression=:date, @descending=false
|
81
|
+
|
94
82
|
should_eventually "do more granular testing"
|
95
83
|
|
96
84
|
should "find the first record" do
|
97
|
-
@simple_search_criteria
|
98
|
-
|
85
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
86
|
+
assert_equal '>', table_searcher.send( :comparator )
|
99
87
|
assert_equal @all_passengers.first, table_searcher.search
|
100
88
|
end
|
101
89
|
|
102
90
|
should "backwards-find the last record" do
|
103
|
-
@simple_search_criteria.from_start = true
|
104
91
|
@simple_search_criteria.direction = :backwards
|
105
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
92
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
93
|
+
assert_equal '<', table_searcher.send( :comparator )
|
106
94
|
assert_equal @all_passengers.last, table_searcher.search
|
107
95
|
end
|
108
96
|
|
109
97
|
should "backwards-find the next-to-last record" do
|
110
98
|
# find the last record
|
111
|
-
@simple_search_criteria.from_start = true
|
112
99
|
@simple_search_criteria.direction = :backwards
|
113
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
100
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
114
101
|
last = table_searcher.search
|
115
102
|
|
116
103
|
# now find the previous record
|
@@ -120,7 +107,7 @@ class TestTableSearcher < Test::Unit::TestCase
|
|
120
107
|
|
121
108
|
should "find next records" do
|
122
109
|
@simple_search_criteria.from_start = false
|
123
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
110
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
124
111
|
|
125
112
|
# fetch records one by one, starting from the one after the first one, and compare them
|
126
113
|
while next_entity = table_searcher.search( @passenger_generator.next )
|
@@ -135,22 +122,43 @@ class TestTableSearcher < Test::Unit::TestCase
|
|
135
122
|
end
|
136
123
|
|
137
124
|
context 'search for related field value' do
|
138
|
-
|
125
|
+
setup do
|
139
126
|
@simple_search_criteria.from_start = true
|
140
|
-
|
141
|
-
|
142
|
-
|
127
|
+
# trim search slightly
|
128
|
+
@simple_search_criteria.search_text = Flight.first.number[1..-2]
|
129
|
+
@flight_field = Clevic::Field.new( :flight, Passenger, { :display => 'number' } )
|
130
|
+
end
|
131
|
+
|
132
|
+
should 'raise an exception for no display value' do
|
133
|
+
@flight_field = Clevic::Field.new( :flight, Passenger, {} )
|
134
|
+
assert_nil @flight_field.display
|
143
135
|
assert_raise RuntimeError do
|
144
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
136
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @flight_field )
|
145
137
|
table_searcher.search
|
146
138
|
end
|
147
139
|
end
|
148
|
-
|
149
|
-
should
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
140
|
+
|
141
|
+
should "raise exception for related fields with display procs" do
|
142
|
+
assert_raise RuntimeError do
|
143
|
+
table_searcher = Clevic::TableSearcher.new(
|
144
|
+
Passenger.dataset,
|
145
|
+
@simple_search_criteria,
|
146
|
+
Clevic::Field.new( :flight, Passenger, { :display => lambda{|x| x.name} } )
|
147
|
+
)
|
148
|
+
table_searcher.search
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
should 'find a record with partial words' do
|
153
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @flight_field )
|
154
|
+
assert_equal @all_passengers.first, table_searcher.search
|
155
|
+
end
|
156
|
+
|
157
|
+
should 'find a record with whole words' do
|
158
|
+
@simple_search_criteria.whole_words = true
|
159
|
+
@simple_search_criteria.search_text = Flight.first.number
|
160
|
+
|
161
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @flight_field )
|
154
162
|
assert_equal @all_passengers.first, table_searcher.search
|
155
163
|
end
|
156
164
|
end
|
@@ -159,17 +167,17 @@ class TestTableSearcher < Test::Unit::TestCase
|
|
159
167
|
setup do
|
160
168
|
@simple_search_criteria.from_start = true
|
161
169
|
@simple_search_criteria.search_text = CreateFakePassengers::NATIONALITIES[0][0..-3]
|
162
|
-
@should_find = Passenger.
|
170
|
+
@should_find = Passenger.filter( "nationality like '%#{@simple_search_criteria.search_text}%'" ).order( :id )
|
163
171
|
end
|
164
172
|
|
165
173
|
should 'find a full value with a partial search string' do
|
166
174
|
@simple_search_criteria.whole_words = false
|
167
175
|
@simple_search_criteria.from_start = true
|
168
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
169
|
-
|
176
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
177
|
+
expecteds = Generator.new @should_find
|
170
178
|
last_entity = nil
|
171
179
|
while next_entity = table_searcher.search( last_entity )
|
172
|
-
assert_equal next_entity,
|
180
|
+
assert_equal next_entity, expecteds.next
|
173
181
|
last_entity = next_entity
|
174
182
|
@simple_search_criteria.from_start = false
|
175
183
|
end
|
@@ -178,11 +186,9 @@ class TestTableSearcher < Test::Unit::TestCase
|
|
178
186
|
should 'not find any values with a partial search string and whole_words enabled' do
|
179
187
|
@simple_search_criteria.whole_words = true
|
180
188
|
@simple_search_criteria.from_start = true
|
181
|
-
table_searcher = Clevic::TableSearcher.new( Passenger,
|
189
|
+
table_searcher = Clevic::TableSearcher.new( Passenger.dataset, @simple_search_criteria, @nationality_field )
|
182
190
|
assert_nil table_searcher.search
|
183
191
|
end
|
184
192
|
end
|
185
193
|
|
186
|
-
should_eventually 'work for Array'
|
187
|
-
|
188
194
|
end
|
metadata
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: clevic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 165
|
5
|
+
prerelease: 7
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 13
|
9
|
+
- 0
|
10
|
+
- b
|
11
|
+
- 1
|
12
|
+
version: 0.13.0.b1
|
5
13
|
platform: ruby
|
6
14
|
authors:
|
7
15
|
- John Anderson
|
@@ -9,90 +17,186 @@ autorequire:
|
|
9
17
|
bindir: bin
|
10
18
|
cert_chain: []
|
11
19
|
|
12
|
-
date:
|
20
|
+
date: 2011-01-20 00:00:00 +02:00
|
13
21
|
default_executable:
|
14
22
|
dependencies:
|
15
23
|
- !ruby/object:Gem::Dependency
|
16
24
|
name: activesupport
|
17
|
-
|
18
|
-
|
19
|
-
|
25
|
+
prerelease: false
|
26
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
20
28
|
requirements:
|
21
29
|
- - ">="
|
22
30
|
- !ruby/object:Gem::Version
|
31
|
+
hash: 11
|
32
|
+
segments:
|
33
|
+
- 2
|
34
|
+
- 0
|
35
|
+
- 2
|
23
36
|
version: 2.0.2
|
24
|
-
version:
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: qtext
|
27
37
|
type: :runtime
|
28
|
-
|
29
|
-
|
38
|
+
version_requirements: *id001
|
39
|
+
- !ruby/object:Gem::Dependency
|
40
|
+
name: fastercsv
|
41
|
+
prerelease: false
|
42
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
30
44
|
requirements:
|
31
45
|
- - ">="
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
|
34
|
-
|
35
|
-
-
|
36
|
-
|
47
|
+
hash: 25
|
48
|
+
segments:
|
49
|
+
- 1
|
50
|
+
- 2
|
51
|
+
- 3
|
52
|
+
version: 1.2.3
|
37
53
|
type: :runtime
|
38
|
-
|
39
|
-
|
54
|
+
version_requirements: *id002
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: gather
|
57
|
+
prerelease: false
|
58
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
40
60
|
requirements:
|
41
61
|
- - ">="
|
42
62
|
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
|
63
|
+
hash: 19
|
64
|
+
segments:
|
65
|
+
- 0
|
66
|
+
- 0
|
67
|
+
- 6
|
68
|
+
version: 0.0.6
|
69
|
+
type: :runtime
|
70
|
+
version_requirements: *id003
|
45
71
|
- !ruby/object:Gem::Dependency
|
46
|
-
name:
|
72
|
+
name: qtext
|
73
|
+
prerelease: false
|
74
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
hash: 11
|
80
|
+
segments:
|
81
|
+
- 0
|
82
|
+
- 6
|
83
|
+
- 6
|
84
|
+
version: 0.6.6
|
47
85
|
type: :runtime
|
48
|
-
|
49
|
-
|
86
|
+
version_requirements: *id004
|
87
|
+
- !ruby/object:Gem::Dependency
|
88
|
+
name: hashery
|
89
|
+
prerelease: false
|
90
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
50
92
|
requirements:
|
51
93
|
- - ">="
|
52
94
|
- !ruby/object:Gem::Version
|
53
|
-
|
54
|
-
|
95
|
+
hash: 27
|
96
|
+
segments:
|
97
|
+
- 1
|
98
|
+
- 3
|
99
|
+
- 0
|
100
|
+
version: 1.3.0
|
101
|
+
type: :runtime
|
102
|
+
version_requirements: *id005
|
55
103
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
104
|
+
name: andand
|
105
|
+
prerelease: false
|
106
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
hash: 27
|
112
|
+
segments:
|
113
|
+
- 1
|
114
|
+
- 3
|
115
|
+
- 0
|
116
|
+
version: 1.3.0
|
57
117
|
type: :runtime
|
58
|
-
|
59
|
-
|
118
|
+
version_requirements: *id006
|
119
|
+
- !ruby/object:Gem::Dependency
|
120
|
+
name: sequel
|
121
|
+
prerelease: false
|
122
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
123
|
+
none: false
|
60
124
|
requirements:
|
61
125
|
- - ">="
|
62
126
|
- !ruby/object:Gem::Version
|
63
|
-
|
64
|
-
|
127
|
+
hash: 39
|
128
|
+
segments:
|
129
|
+
- 3
|
130
|
+
- 8
|
131
|
+
- 0
|
132
|
+
version: 3.8.0
|
133
|
+
type: :runtime
|
134
|
+
version_requirements: *id007
|
65
135
|
- !ruby/object:Gem::Dependency
|
66
|
-
name:
|
136
|
+
name: hpricot
|
137
|
+
prerelease: false
|
138
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
139
|
+
none: false
|
140
|
+
requirements:
|
141
|
+
- - ">="
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
hash: 61
|
144
|
+
segments:
|
145
|
+
- 0
|
146
|
+
- 8
|
147
|
+
- 1
|
148
|
+
version: 0.8.1
|
67
149
|
type: :runtime
|
68
|
-
|
69
|
-
|
150
|
+
version_requirements: *id008
|
151
|
+
- !ruby/object:Gem::Dependency
|
152
|
+
name: io-like
|
153
|
+
prerelease: false
|
154
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
155
|
+
none: false
|
70
156
|
requirements:
|
71
157
|
- - ">="
|
72
158
|
- !ruby/object:Gem::Version
|
73
|
-
|
74
|
-
|
159
|
+
hash: 19
|
160
|
+
segments:
|
161
|
+
- 0
|
162
|
+
- 3
|
163
|
+
- 0
|
164
|
+
version: 0.3.0
|
165
|
+
type: :runtime
|
166
|
+
version_requirements: *id009
|
75
167
|
- !ruby/object:Gem::Dependency
|
76
168
|
name: newgem
|
77
|
-
|
78
|
-
|
79
|
-
|
169
|
+
prerelease: false
|
170
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
171
|
+
none: false
|
80
172
|
requirements:
|
81
173
|
- - ">="
|
82
174
|
- !ruby/object:Gem::Version
|
175
|
+
hash: 27
|
176
|
+
segments:
|
177
|
+
- 1
|
178
|
+
- 3
|
179
|
+
- 0
|
83
180
|
version: 1.3.0
|
84
|
-
|
181
|
+
type: :development
|
182
|
+
version_requirements: *id010
|
85
183
|
- !ruby/object:Gem::Dependency
|
86
184
|
name: hoe
|
87
|
-
|
88
|
-
|
89
|
-
|
185
|
+
prerelease: false
|
186
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
187
|
+
none: false
|
90
188
|
requirements:
|
91
189
|
- - ">="
|
92
190
|
- !ruby/object:Gem::Version
|
191
|
+
hash: 55
|
192
|
+
segments:
|
193
|
+
- 1
|
194
|
+
- 8
|
195
|
+
- 0
|
93
196
|
version: 1.8.0
|
94
|
-
|
95
|
-
|
197
|
+
type: :development
|
198
|
+
version_requirements: *id011
|
199
|
+
description: SQL table GUI with Qt, Swing, Sequel
|
96
200
|
email:
|
97
201
|
- panic@semiosix.com
|
98
202
|
executables:
|
@@ -110,38 +214,10 @@ files:
|
|
110
214
|
- Rakefile
|
111
215
|
- TODO
|
112
216
|
- bin/clevic
|
113
|
-
- lib/clevic/dirty.rb
|
114
|
-
- lib/clevic.rb
|
115
|
-
- lib/clevic/browser.rb
|
116
|
-
- lib/clevic/cache_table.rb
|
117
|
-
- lib/clevic/db_options.rb
|
118
|
-
- lib/clevic/default_view.rb
|
119
|
-
- lib/clevic/delegates.rb
|
120
|
-
- lib/clevic/extensions.rb
|
121
|
-
- lib/clevic/field.rb
|
122
|
-
- lib/clevic/filter_command.rb
|
123
|
-
- lib/clevic/item_delegate.rb
|
124
|
-
- lib/clevic/model_builder.rb
|
125
|
-
- lib/clevic/model_column.rb
|
126
|
-
- lib/clevic/order_attribute.rb
|
127
|
-
- lib/clevic/record.rb
|
128
|
-
- lib/clevic/search_dialog.rb
|
129
|
-
- lib/clevic/sql_dialects.rb
|
130
|
-
- lib/clevic/table_model.rb
|
131
|
-
- lib/clevic/table_searcher.rb
|
132
|
-
- lib/clevic/table_view.rb
|
133
|
-
- lib/clevic/text_delegate.rb
|
134
|
-
- lib/clevic/view.rb
|
135
|
-
- lib/clevic/ui/.gitignore
|
136
|
-
- lib/clevic/ui/browser.ui
|
137
|
-
- lib/clevic/ui/browser_ui.rb
|
138
|
-
- lib/clevic/ui/icon.png
|
139
|
-
- lib/clevic/ui/search_dialog.ui
|
140
|
-
- lib/clevic/ui/search_dialog_ui.rb
|
141
|
-
- lib/clevic/version.rb
|
142
217
|
- models/accounts_models.rb
|
143
218
|
- models/minimal_models.rb
|
144
219
|
- models/times_models.rb
|
220
|
+
- models/times_psql_models.rb
|
145
221
|
- models/times_sqlite_models.rb
|
146
222
|
- models/values_models.rb
|
147
223
|
- script/console
|
@@ -151,15 +227,115 @@ files:
|
|
151
227
|
- sql/accounts.sql
|
152
228
|
- sql/times.sql
|
153
229
|
- sql/times_sqlite.sql
|
154
|
-
- tasks/website.rake
|
155
230
|
- tasks/clevic.rake
|
156
231
|
- tasks/rdoc.rake
|
232
|
+
- tasks/website.rake
|
157
233
|
- test/test_cache_table.rb
|
158
234
|
- test/test_helper.rb
|
159
235
|
- test/test_model_index_extensions.rb
|
160
236
|
- test/test_order_attribute.rb
|
161
237
|
- test/test_sql_dialects.rb
|
238
|
+
- test/test_table_model.rb
|
162
239
|
- test/test_table_searcher.rb
|
240
|
+
- lib/clevic/qt/ui/browser.ui
|
241
|
+
- lib/clevic/qt/ui/search_dialog_ui.rb
|
242
|
+
- lib/clevic/qt/ui/search_dialog.ui
|
243
|
+
- lib/clevic/qt/ui/browser_ui.rb
|
244
|
+
- lib/clevic/qt/table_model.rb
|
245
|
+
- lib/clevic/qt/text_area_delegate.rb
|
246
|
+
- lib/clevic/qt/browser.rb
|
247
|
+
- lib/clevic/qt/action_builder.rb
|
248
|
+
- lib/clevic/qt/field.rb
|
249
|
+
- lib/clevic/qt/set_delegate.rb
|
250
|
+
- lib/clevic/qt/item_delegate.rb
|
251
|
+
- lib/clevic/qt/clipboard.rb
|
252
|
+
- lib/clevic/qt/text_delegate.rb
|
253
|
+
- lib/clevic/qt/distinct_delegate.rb
|
254
|
+
- lib/clevic/qt/boolean_delegate.rb
|
255
|
+
- lib/clevic/qt/table_view.rb
|
256
|
+
- lib/clevic/qt/search_dialog.rb
|
257
|
+
- lib/clevic/qt/combo_delegate.rb
|
258
|
+
- lib/clevic/qt/extensions.rb
|
259
|
+
- lib/clevic/qt/delegates.rb
|
260
|
+
- lib/clevic/qt/relational_delegate.rb
|
261
|
+
- lib/clevic/table_view_paste.rb
|
262
|
+
- lib/clevic/sequel_ar_adapter.rb
|
263
|
+
- lib/clevic/model_builder.rb
|
264
|
+
- lib/clevic/rails_models_loaders.rb
|
265
|
+
- lib/clevic/sequel_length_validation.rb
|
266
|
+
- lib/clevic/cache_table.rb
|
267
|
+
- lib/clevic/table_model.rb
|
268
|
+
- lib/clevic/icons/icon.png
|
269
|
+
- lib/clevic/qt.rb
|
270
|
+
- lib/clevic/swing/ui/src/SearchDialog.form
|
271
|
+
- lib/clevic/swing/ui/src/SearchDialog.java
|
272
|
+
- lib/clevic/swing/ui/src/resources/SearchDialog.properties
|
273
|
+
- lib/clevic/swing/ui/src/TagEditor.form
|
274
|
+
- lib/clevic/swing/ui/src/TagEditor.java
|
275
|
+
- lib/clevic/swing/ui/dist/lib/swing-layout-1.0.3.jar
|
276
|
+
- lib/clevic/swing/ui/dist/README.TXT
|
277
|
+
- lib/clevic/swing/ui/nbproject/genfiles.properties
|
278
|
+
- lib/clevic/swing/ui/nbproject/build-impl.xml
|
279
|
+
- lib/clevic/swing/ui/nbproject/project.xml
|
280
|
+
- lib/clevic/swing/ui/nbproject/project.properties
|
281
|
+
- lib/clevic/swing/ui/nbproject/private/private.properties
|
282
|
+
- lib/clevic/swing/ui/nbproject/private/config.properties
|
283
|
+
- lib/clevic/swing/ui/nbproject/private/private.xml
|
284
|
+
- lib/clevic/swing/ui/build.xml
|
285
|
+
- lib/clevic/swing/ui/manifest.mf
|
286
|
+
- lib/clevic/swing/table_model.rb
|
287
|
+
- lib/clevic/swing/text_area_delegate.rb
|
288
|
+
- lib/clevic/swing/browser.rb
|
289
|
+
- lib/clevic/swing/cell_renderer.rb
|
290
|
+
- lib/clevic/swing/tag_editor.rb
|
291
|
+
- lib/clevic/swing/action_builder.rb
|
292
|
+
- lib/clevic/swing/field.rb
|
293
|
+
- lib/clevic/swing/set_delegate.rb
|
294
|
+
- lib/clevic/swing/clipboard.rb
|
295
|
+
- lib/clevic/swing/text_delegate.rb
|
296
|
+
- lib/clevic/swing/tag_delegate.rb
|
297
|
+
- lib/clevic/swing/selection_model.rb
|
298
|
+
- lib/clevic/swing/distinct_delegate.rb
|
299
|
+
- lib/clevic/swing/boolean_delegate.rb
|
300
|
+
- lib/clevic/swing/confirm_dialog.rb
|
301
|
+
- lib/clevic/swing/table_view.rb
|
302
|
+
- lib/clevic/swing/search_dialog.rb
|
303
|
+
- lib/clevic/swing/combo_delegate.rb
|
304
|
+
- lib/clevic/swing/swing_table_index.rb
|
305
|
+
- lib/clevic/swing/table_view_focus.rb
|
306
|
+
- lib/clevic/swing/cell_editor.rb
|
307
|
+
- lib/clevic/swing/extensions.rb
|
308
|
+
- lib/clevic/swing/delegate.rb
|
309
|
+
- lib/clevic/swing/action.rb
|
310
|
+
- lib/clevic/swing/relational_delegate.rb
|
311
|
+
- lib/clevic/swing/row_header.rb
|
312
|
+
- lib/clevic/ar_methods.rb
|
313
|
+
- lib/clevic/swing.rb
|
314
|
+
- lib/clevic/action_builder.rb
|
315
|
+
- lib/clevic/order_attribute.rb
|
316
|
+
- lib/clevic/dirty.rb
|
317
|
+
- lib/clevic/field.rb
|
318
|
+
- lib/clevic/attribute_list.rb
|
319
|
+
- lib/clevic/record.rb
|
320
|
+
- lib/clevic/sampler.rb
|
321
|
+
- lib/clevic/model_column.rb
|
322
|
+
- lib/clevic/table_searcher.rb
|
323
|
+
- lib/clevic/table_view.rb
|
324
|
+
- lib/clevic/field_valuer.rb
|
325
|
+
- lib/clevic/sequel_naked.rb
|
326
|
+
- lib/clevic/table_index.rb
|
327
|
+
- lib/clevic/view.rb
|
328
|
+
- lib/clevic/sequel_meta.rb
|
329
|
+
- lib/clevic/extensions.rb
|
330
|
+
- lib/clevic/delegate.rb
|
331
|
+
- lib/clevic/sql_dialects.rb
|
332
|
+
- lib/clevic/default_view.rb
|
333
|
+
- lib/clevic/many_field.rb
|
334
|
+
- lib/clevic/filter_command.rb
|
335
|
+
- lib/clevic/version.rb
|
336
|
+
- lib/clevic/generic_format.rb
|
337
|
+
- lib/clevic/emitter.rb
|
338
|
+
- lib/clevic/qt/ui/.gitignore
|
163
339
|
has_rdoc: true
|
164
340
|
homepage: http://clevic.rubyforge.org
|
165
341
|
licenses: []
|
@@ -171,24 +347,32 @@ rdoc_options:
|
|
171
347
|
require_paths:
|
172
348
|
- lib
|
173
349
|
required_ruby_version: !ruby/object:Gem::Requirement
|
350
|
+
none: false
|
174
351
|
requirements:
|
175
352
|
- - ">="
|
176
353
|
- !ruby/object:Gem::Version
|
354
|
+
hash: 3
|
355
|
+
segments:
|
356
|
+
- 0
|
177
357
|
version: "0"
|
178
|
-
version:
|
179
358
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
359
|
+
none: false
|
180
360
|
requirements:
|
181
|
-
- - "
|
361
|
+
- - ">"
|
182
362
|
- !ruby/object:Gem::Version
|
183
|
-
|
184
|
-
|
363
|
+
hash: 25
|
364
|
+
segments:
|
365
|
+
- 1
|
366
|
+
- 3
|
367
|
+
- 1
|
368
|
+
version: 1.3.1
|
185
369
|
requirements: []
|
186
370
|
|
187
371
|
rubyforge_project: clevic
|
188
|
-
rubygems_version: 1.
|
372
|
+
rubygems_version: 1.4.2
|
189
373
|
signing_key:
|
190
374
|
specification_version: 3
|
191
|
-
summary: Database framework and
|
375
|
+
summary: Database framework and Model/View GUI for data capture and editing of tables in a pre-existing relational DBMS
|
192
376
|
test_files:
|
193
377
|
- test/test_model_index_extensions.rb
|
194
378
|
- test/test_cache_table.rb
|