knjrbfw 0.0.34 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.34
1
+ 0.0.35
data/knjrbfw.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{knjrbfw}
8
- s.version = "0.0.34"
8
+ s.version = "0.0.35"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kasper Johansen"]
@@ -333,6 +333,10 @@ class KnjDB_sqlite3::Tables::Table
333
333
 
334
334
  def create_indexes(index_arr)
335
335
  index_arr.each do |index_data|
336
+ if index_data.is_a?(String)
337
+ index_data = {"name" => index_data, "columns" => [index_data]}
338
+ end
339
+
336
340
  raise "No name was given." if !index_data.key?("name") or index_data["name"].strip.length <= 0
337
341
  raise "No columns was given on index #{index_data["name"]}." if index_data["columns"].empty?
338
342
 
data/lib/knj/objects.rb CHANGED
@@ -125,9 +125,10 @@ class Knj::Objects
125
125
  raise "No object given." if !args["object"]
126
126
  raise "No signals given." if !args.key?("signal") and !args.key?("signals")
127
127
  args["block"] = block if block_given?
128
- @callbacks[args["object"]] = {} if !@callbacks[args["object"]]
129
- conn_id = @callbacks[args["object"]].length.to_s
130
- @callbacks[args["object"]][conn_id] = args
128
+ @callbacks[args["object"].to_sym] = {} if !@callbacks[args["object"]]
129
+ conn_id = @callbacks[args["object"].to_sym].length.to_s
130
+ @callbacks[args["object"].to_sym][conn_id] = args
131
+ return conn_id
131
132
  end
132
133
 
133
134
  #Returns true if the given signal is connected to the given object.
@@ -135,8 +136,8 @@ class Knj::Objects
135
136
  raise "No object given." if !args["object"]
136
137
  raise "No signal given." if !args.key?("signal")
137
138
 
138
- if @callbacks.key?(args["object"])
139
- @callbacks[args["object"]].clone.each do |ckey, callback|
139
+ if @callbacks.key?(args["object"].to_sym)
140
+ @callbacks[args["object"].to_sym].clone.each do |ckey, callback|
140
141
  return true if callback.key?("signal") and callback["signal"] == args["signal"]
141
142
  return true if callback.key?("signals") and callback["signals"].index(args["signal"]) != nil
142
143
  end
@@ -145,9 +146,18 @@ class Knj::Objects
145
146
  return false
146
147
  end
147
148
 
149
+ #Unconnects a connect by 'object' and 'conn_id'.
150
+ def unconnect(args)
151
+ raise "No object given." if !args["object"]
152
+ raise "No conn-ID given." if !args["conn_id"]
153
+ raise "Object doesnt exist: '#{args["object"]}'." if !@callbacks.key?(args["object"].to_sym)
154
+ raise "Conn ID doest exist: '#{args["conn_id"]}'." if !@callbacks[args["object"].to_sym].key?(args["conn_id"])
155
+ @callbacks[args["object"].to_sym].delete(args["conn_id"])
156
+ end
157
+
148
158
  #This method is used to call the connected callbacks for an event.
149
159
  def call(args, &block)
150
- classstr = args["object"].class.to_s.split("::").last
160
+ classstr = args["object"].class.classname.to_sym
151
161
 
152
162
  if @callbacks.key?(classstr)
153
163
  @callbacks[classstr].clone.each do |callback_key, callback|
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: knjrbfw
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.34
5
+ version: 0.0.35
6
6
  platform: ruby
7
7
  authors:
8
8
  - Kasper Johansen
@@ -371,7 +371,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
371
371
  requirements:
372
372
  - - ">="
373
373
  - !ruby/object:Gem::Version
374
- hash: -3216752149804920107
374
+ hash: 2601154118778035133
375
375
  segments:
376
376
  - 0
377
377
  version: "0"