gvcsfx 0.3 → 0.6.0
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.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/Gemfile +10 -5
- data/README.md +20 -0
- data/Rakefile +12 -0
- data/fx/main.fxml +11 -6
- data/gvcsfx.gemspec +38 -0
- data/handlers/notification.rb +4 -4
- data/handlers/tab_state.rb +50 -6
- data/handlers/workspace.rb +56 -37
- data/lib/version.rb +1 -1
- metadata +37 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77cccf92131945b87f76d89882e8d0b6f7f524ffa0557c52a6dd951a5f979ef1
|
4
|
+
data.tar.gz: 3a56ba89e0900510730565073487530f2449b0269d9f827d43adac6828af373e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 17c343d415596123b81ea1aec71d7a30e7325f06a41e6051afd8a493b55f17331396777ff265b5f680a2e3b7dee8c4711fcfe3bb7580da12cde0eb94c8cd8cee
|
7
|
+
data.tar.gz: 6a84745e06bfa5ca810dbdde3ab384984a62cba8d06dcfab202624fb541a08f0315a4f2a347d6c4f19a5bfb8ec49c93a672738b424a0db25f2b03cd216435073
|
data/.gitignore
CHANGED
data/Gemfile
CHANGED
@@ -16,9 +16,14 @@
|
|
16
16
|
|
17
17
|
source "https://rubygems.org"
|
18
18
|
|
19
|
-
|
20
|
-
gem 'jrubyfx'
|
21
|
-
gem 'toolrack', '~> 0.4'
|
19
|
+
gemspec
|
22
20
|
|
23
|
-
gem '
|
24
|
-
|
21
|
+
#gem 'git_cli', path: '../git/git_cli'
|
22
|
+
|
23
|
+
#gem 'jrubyfx-openjfx.patch', path: '/mnt/Vault/08.Dev/01.Workspaces/jrubyfx_patches/jrubyfx'
|
24
|
+
#gem 'tlogger', '~> 0.21'
|
25
|
+
#gem 'jrubyfx'
|
26
|
+
#gem 'toolrack', '~> 0.4'
|
27
|
+
#
|
28
|
+
#gem 'gvcs', '~> 0.1'
|
29
|
+
#gem 'git_cli', '~> 0.1'
|
data/README.md
CHANGED
@@ -57,6 +57,26 @@ To be implemented
|
|
57
57
|
* Sort by date/committer on logs
|
58
58
|
|
59
59
|
|
60
|
+
Installation
|
61
|
+
============
|
62
|
+
|
63
|
+
You can check out the source code here and run
|
64
|
+
|
65
|
+
```sh
|
66
|
+
> bundle
|
67
|
+
> bundle exec ruby bin/gvcsfx.rb
|
68
|
+
```
|
69
|
+
|
70
|
+
Or use gem to install the tool:
|
71
|
+
|
72
|
+
```ruby
|
73
|
+
> gem install gvcsfx
|
74
|
+
> (if you use RVM, switch to jruby first)
|
75
|
+
> rvm use jruby
|
76
|
+
> gvcsfx
|
77
|
+
```
|
78
|
+
|
79
|
+
|
60
80
|
Development
|
61
81
|
===========
|
62
82
|
|
data/Rakefile
ADDED
data/fx/main.fxml
CHANGED
@@ -127,8 +127,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
127
127
|
<GridPane layoutX="240.0" layoutY="115.0" maxWidth="1.7976931348623157E308" AnchorPane.bottomAnchor="8.0" AnchorPane.leftAnchor="8.0" AnchorPane.rightAnchor="8.0" AnchorPane.topAnchor="8.0">
|
128
128
|
<columnConstraints>
|
129
129
|
<ColumnConstraints hgrow="NEVER" maxWidth="215.0" />
|
130
|
-
<ColumnConstraints hgrow="SOMETIMES" maxWidth="1.7976931348623157E308" minWidth="10.0" prefWidth="
|
131
|
-
<ColumnConstraints hgrow="
|
130
|
+
<ColumnConstraints hgrow="SOMETIMES" maxWidth="1.7976931348623157E308" minWidth="10.0" prefWidth="642.0" />
|
131
|
+
<ColumnConstraints hgrow="NEVER" maxWidth="288.0" minWidth="288.0" prefWidth="288.0" />
|
132
132
|
</columnConstraints>
|
133
133
|
<rowConstraints>
|
134
134
|
<RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="28.0" vgrow="NEVER" />
|
@@ -153,10 +153,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
153
153
|
<Insets bottom="5.0" top="5.0" />
|
154
154
|
</GridPane.margin>
|
155
155
|
</TableView>
|
156
|
-
<ComboBox fx:id="cmbCommitMsg" editable="true" maxWidth="1.7976931348623157E308"
|
157
|
-
<Button fx:id="butCommit"
|
158
|
-
<HBox alignment="CENTER_RIGHT" prefHeight="
|
156
|
+
<ComboBox fx:id="cmbCommitMsg" editable="true" maxWidth="1.7976931348623157E308" onKeyPressed="#is_cmbCommit_enter" promptText="Commit message" GridPane.columnSpan="3" GridPane.hgrow="ALWAYS" GridPane.rowIndex="3" />
|
157
|
+
<Button fx:id="butCommit" maxWidth="80.0" minWidth="80.0" mnemonicParsing="false" onAction="#vcs_commit" prefWidth="80.0" text="Commit" GridPane.columnIndex="2" GridPane.halignment="RIGHT" GridPane.rowIndex="4" />
|
158
|
+
<HBox alignment="CENTER_RIGHT" prefHeight="28.0" prefWidth="332.0" GridPane.columnIndex="2">
|
159
159
|
<children>
|
160
|
+
<TextField fx:id="txtStateFileNmFilter" alignment="CENTER" onKeyPressed="#name_filter_keypressed" promptText="File name filter" HBox.hgrow="ALWAYS">
|
161
|
+
<HBox.margin>
|
162
|
+
<Insets left="3.0" right="3.0" />
|
163
|
+
</HBox.margin>
|
164
|
+
</TextField>
|
160
165
|
<Button fx:id="butRefreshChanges" alignment="CENTER" maxWidth="80.0" minWidth="80.0" mnemonicParsing="false" onAction="#refresh_vcs_status" prefWidth="80.0" text="Refresh">
|
161
166
|
<HBox.margin>
|
162
167
|
<Insets />
|
@@ -457,7 +462,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
457
462
|
<RowConstraints minHeight="10.0" prefHeight="38.0" vgrow="SOMETIMES" />
|
458
463
|
</rowConstraints>
|
459
464
|
<children>
|
460
|
-
<TitledPane collapsible="false" maxHeight="1.7976931348623157E308"
|
465
|
+
<TitledPane collapsible="false" maxHeight="1.7976931348623157E308" text="Configurations" GridPane.columnSpan="2" GridPane.hgrow="ALWAYS" GridPane.vgrow="ALWAYS">
|
461
466
|
<content>
|
462
467
|
<TabPane tabMinWidth="80.0">
|
463
468
|
<tabs>
|
data/gvcsfx.gemspec
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
require_relative 'lib/version'
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = "gvcsfx"
|
5
|
+
spec.version = GvcsFx::VERSION
|
6
|
+
spec.authors = ["Chris"]
|
7
|
+
spec.email = ["chrisliaw@antrapol.com"]
|
8
|
+
|
9
|
+
spec.summary = %q{Generic Version Control System - JavaFX}
|
10
|
+
spec.description = %q{Simple and effective VCS workflow management}
|
11
|
+
spec.homepage = "https://github.com/chrisliaw/gvcsfx"
|
12
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
|
13
|
+
|
14
|
+
#spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
|
15
|
+
|
16
|
+
#spec.metadata["homepage_uri"] = spec.homepage
|
17
|
+
#spec.metadata["source_code_uri"] = "TODO: Put your gem's public repo URL here."
|
18
|
+
#spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here."
|
19
|
+
|
20
|
+
# Specify which files should be added to the gem when it is released.
|
21
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
22
|
+
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
23
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
24
|
+
end
|
25
|
+
spec.bindir = "bin"
|
26
|
+
#spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
27
|
+
spec.executables = "gvcsfx"
|
28
|
+
spec.require_paths = ["lib"]
|
29
|
+
|
30
|
+
spec.add_dependency 'tlogger' #, '>= 0.21'
|
31
|
+
spec.add_dependency 'jrubyfx-openjfx.patch', '1.2.0.1'
|
32
|
+
spec.add_dependency 'toolrack' #, '>= 0.5.0'
|
33
|
+
spec.add_dependency 'gvcs' #, '>= 0.1.0'
|
34
|
+
spec.add_dependency 'git_cli' #, '>= 0.8.0'
|
35
|
+
|
36
|
+
spec.add_development_dependency 'devops_helper' #, '>= 0.3.1'
|
37
|
+
|
38
|
+
end
|
data/handlers/notification.rb
CHANGED
@@ -74,7 +74,7 @@ module GvcsFx
|
|
74
74
|
if inside_jar?
|
75
75
|
@errImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/cross.png").to_s)
|
76
76
|
else
|
77
|
-
@errImg = javafx.scene.image.Image.new("res/cross.png")
|
77
|
+
@errImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/cross.png"))
|
78
78
|
end
|
79
79
|
end
|
80
80
|
@errImg
|
@@ -83,7 +83,7 @@ module GvcsFx
|
|
83
83
|
if inside_jar?
|
84
84
|
@warnImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/warn.png").to_s)
|
85
85
|
else
|
86
|
-
@warnImg = javafx.scene.image.Image.new("res/warn.png")
|
86
|
+
@warnImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/warn.png"))
|
87
87
|
end
|
88
88
|
end
|
89
89
|
@warnImg
|
@@ -92,7 +92,7 @@ module GvcsFx
|
|
92
92
|
if inside_jar?
|
93
93
|
@sucImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/tick.png").to_s)
|
94
94
|
else
|
95
|
-
@sucImg = javafx.scene.image.Image.new("res/tick.png")
|
95
|
+
@sucImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/tick.png"))
|
96
96
|
end
|
97
97
|
end
|
98
98
|
@sucImg
|
@@ -101,7 +101,7 @@ module GvcsFx
|
|
101
101
|
if inside_jar?
|
102
102
|
@infoImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/world.png").to_s)
|
103
103
|
else
|
104
|
-
@infoImg = javafx.scene.image.Image.new("res/world.png")
|
104
|
+
@infoImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/world.png"))
|
105
105
|
end
|
106
106
|
end
|
107
107
|
@infoImg
|
data/handlers/tab_state.rb
CHANGED
@@ -33,28 +33,33 @@ module GvcsFx
|
|
33
33
|
end
|
34
34
|
class ModifiedFile < VcsElement
|
35
35
|
def initialize(path, ftype)
|
36
|
-
super("
|
36
|
+
super("Changed",path, ftype)
|
37
37
|
end
|
38
38
|
end
|
39
39
|
class ConflictedFile < VcsElement
|
40
40
|
def initialize(path, ftype)
|
41
|
-
super("
|
41
|
+
super("Conflicted",path, ftype)
|
42
42
|
end
|
43
43
|
end
|
44
44
|
class NewFile < VcsElement
|
45
45
|
def initialize(path, ftype)
|
46
|
-
super("
|
46
|
+
super("New",path, ftype)
|
47
47
|
end
|
48
48
|
end
|
49
49
|
class DeletedFile < VcsElement
|
50
50
|
def initialize(path, ftype)
|
51
|
-
super("
|
51
|
+
super("Deleted",path, ftype)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
class StagedFile < VcsElement
|
55
|
+
def initialize(path, ftype)
|
56
|
+
super("Staged",path, ftype)
|
52
57
|
end
|
53
58
|
end
|
54
59
|
#############
|
55
60
|
|
56
61
|
def init_tab_state
|
57
|
-
@tblChanges.placeholder = javafx.scene.control.Label.new("Changeset is empty. Please select a workspace
|
62
|
+
@tblChanges.placeholder = javafx.scene.control.Label.new("Changeset is empty. Please select a workspace, the selected workspace has no changes or changes have been filtered out.")
|
58
63
|
|
59
64
|
@tblChanges.columns.clear
|
60
65
|
@tblChanges.column_resize_policy = javafx.scene.control.TableView::CONSTRAINED_RESIZE_POLICY
|
@@ -140,11 +145,32 @@ module GvcsFx
|
|
140
145
|
cst, cflt_dirs, cflt_files = @selWs.conflicted_files
|
141
146
|
nst, news_dirs, news_files = @selWs.new_files
|
142
147
|
dst, dels_dirs, dels_files = @selWs.deleted_files
|
148
|
+
sst, staged_dirs, staged_files = @selWs.staged_files
|
149
|
+
|
150
|
+
filter = @txtStateFileNmFilter.text
|
151
|
+
|
152
|
+
if not_empty?(filter)
|
153
|
+
mods_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
|
154
|
+
mods_files.delete_if { |e| (e =~ /#{filter}/) == nil }
|
155
|
+
|
156
|
+
cflt_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
|
157
|
+
cflt_files.delete_if { |e| (e =~ /#{filter}/) == nil }
|
158
|
+
|
159
|
+
news_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
|
160
|
+
news_files.delete_if { |e| (e =~ /#{filter}/) == nil }
|
161
|
+
|
162
|
+
dels_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
|
163
|
+
dels_files.delete_if { |e| (e =~ /#{filter}/) == nil }
|
164
|
+
|
165
|
+
staged_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
|
166
|
+
staged_files.delete_if { |e| (e =~ /#{filter}/) == nil }
|
167
|
+
end
|
143
168
|
|
144
169
|
data = []
|
145
170
|
mods_dirs.each do |f|
|
146
171
|
data << ModifiedFile.new(f,:dir)
|
147
172
|
end
|
173
|
+
|
148
174
|
mods_files.each do |f|
|
149
175
|
data << ModifiedFile.new(f,:file)
|
150
176
|
end
|
@@ -162,6 +188,7 @@ module GvcsFx
|
|
162
188
|
news_files.each do |f|
|
163
189
|
data << NewFile.new(f,:file)
|
164
190
|
end
|
191
|
+
|
165
192
|
dels_dirs.each do |f|
|
166
193
|
data << DeletedFile.new(f,:dir)
|
167
194
|
end
|
@@ -169,6 +196,13 @@ module GvcsFx
|
|
169
196
|
data << DeletedFile.new(f,:file)
|
170
197
|
end
|
171
198
|
|
199
|
+
staged_dirs.each do |f|
|
200
|
+
data << StagedFile.new(f,:dir)
|
201
|
+
end
|
202
|
+
staged_files.each do |f|
|
203
|
+
data << StagedFile.new(f,:file)
|
204
|
+
end
|
205
|
+
|
172
206
|
bst, currBranch = @selWs.current_branch
|
173
207
|
if bst
|
174
208
|
@lblCurrBranch.text = currBranch
|
@@ -196,17 +230,25 @@ module GvcsFx
|
|
196
230
|
end
|
197
231
|
end
|
198
232
|
|
233
|
+
def name_filter_keypressed(evt)
|
234
|
+
if (not evt.nil?) and evt.code == javafx.scene.input.KeyCode::ENTER
|
235
|
+
refresh_tab_state
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
199
239
|
# hooked to the button "not ready to commit just yet..."
|
200
240
|
def stash_changes(evt)
|
201
241
|
mst, mods_dirs, mods_files = @selWs.modified_files
|
202
242
|
cst, cflt_dirs, cflt_files = @selWs.conflicted_files
|
203
243
|
nst, news_dirs, news_files = @selWs.new_files
|
204
244
|
dst, dels_dirs, dels_files = @selWs.deleted_files
|
245
|
+
sst, staged_dirs, staged_files = @selWs.staged_files
|
205
246
|
|
206
247
|
if mods_dirs.length > 0 or mods_files.length > 0 \
|
207
248
|
or cflt_dirs.length > 0 or cflt_files.length > 0 \
|
208
249
|
or news_dirs.length > 0 or news_files.length > 0 \
|
209
|
-
or dels_dirs.length > 0 or dels_files.length > 0
|
250
|
+
or dels_dirs.length > 0 or dels_files.length > 0 \
|
251
|
+
or staged_dirs.length > 0 or staged_files.length > 0
|
210
252
|
|
211
253
|
msg = []
|
212
254
|
msg << "System detected there are existing uncommitted changes in the current workspace:\n"
|
@@ -218,6 +260,8 @@ module GvcsFx
|
|
218
260
|
msg << "\tDeleted file(s) : \t\t#{dels_files.length}\n"
|
219
261
|
msg << "\tNew folder(s) : \t\t#{news_dirs.length}\n"
|
220
262
|
msg << "\tNew file(s) : \t\t\t#{news_files.length}\n"
|
263
|
+
msg << "\tStaged folder(s) : \t\t#{staged_dirs.length}\n"
|
264
|
+
msg << "\tStaged file(s) : \t\t\t#{staged_files.length}\n"
|
221
265
|
|
222
266
|
st, name = fx_alert_input("Temporary Save Changes To Branch",msg.join, "Please give a descriptive name of this temporary changes.\nIt is recommended but not mandatory")
|
223
267
|
if st
|
data/handlers/workspace.rb
CHANGED
@@ -47,7 +47,7 @@ module GvcsFx
|
|
47
47
|
def value
|
48
48
|
self
|
49
49
|
end
|
50
|
-
end
|
50
|
+
end # class TreeWorkspace
|
51
51
|
|
52
52
|
class WorkspaceCellFactory < javafx.scene.control.TreeTableCell
|
53
53
|
include Antrapol::ToolRack::ExceptionUtils
|
@@ -69,10 +69,26 @@ module GvcsFx
|
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
72
|
+
#
|
73
|
+
# This code was changed from setGraphic(Text.new(cont)) to setText
|
74
|
+
# because if using setGraphic it shall corrupt the tree node display
|
75
|
+
# on OpenJFX. It is however not an issue for Oracle JFX.
|
76
|
+
# Reported and discussion is here:
|
77
|
+
# https://stackoverflow.com/q/65084285/3625825
|
78
|
+
# Answer is here:
|
79
|
+
# https://stackoverflow.com/a/65138569/3625825
|
80
|
+
#
|
81
|
+
# Checked on the JavaFX bug database found the issue already reported
|
82
|
+
# - https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8238991
|
83
|
+
# * the issue is marked as Resolved but the comment seems indicate this issue
|
84
|
+
# is linked to another Open issue at
|
85
|
+
# https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8231644
|
86
|
+
# at the time of this writing
|
87
|
+
#
|
88
|
+
setText(cont)
|
89
|
+
|
90
|
+
end # updateItem
|
91
|
+
end # class WorkspaceCellFactory
|
76
92
|
|
77
93
|
|
78
94
|
LEAF_PROJ_DESC = "Leaf Workspaces (Workspace without bind to a project)"
|
@@ -94,7 +110,6 @@ module GvcsFx
|
|
94
110
|
col = []
|
95
111
|
tcUrl = TreeTableColumn.new("Path")
|
96
112
|
tcUrl.cell_value_factory = Proc.new do |e|
|
97
|
-
#p e.value.value
|
98
113
|
if e.value.value.is_a?(TreeWorkspace)
|
99
114
|
e.value.value
|
100
115
|
else
|
@@ -182,7 +197,7 @@ module GvcsFx
|
|
182
197
|
refresh_workspace_list
|
183
198
|
|
184
199
|
end
|
185
|
-
end
|
200
|
+
end # Platform.run_later
|
186
201
|
end)
|
187
202
|
|
188
203
|
refresh_workspace_list
|
@@ -345,46 +360,50 @@ module GvcsFx
|
|
345
360
|
dc.title = "Select VCS Workspace"
|
346
361
|
wsDir = dc.showDialog(main_stage)
|
347
362
|
|
348
|
-
@txtWorkspacePath.text = wsDir.absolute_path
|
363
|
+
@txtWorkspacePath.text = wsDir.absolute_path if not_empty?(wsDir)
|
349
364
|
end
|
350
365
|
|
351
366
|
private
|
352
367
|
def dnd_dropped(evt)
|
353
368
|
f = evt.dragboard.files
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
369
|
+
if not_empty?(f)
|
370
|
+
|
371
|
+
vcs = Gvcs::Vcs.new
|
372
|
+
ws = []
|
373
|
+
nws = []
|
374
|
+
f.each do |ff|
|
375
|
+
log_debug "Checking drop in path '#{ff.absolute_path}'"
|
376
|
+
st, path = Gvcs::Workspace.new(vcs, ff.absolute_path).workspace_root
|
377
|
+
if st
|
378
|
+
# workspace!
|
379
|
+
ws << path.strip
|
380
|
+
else
|
381
|
+
# not a workspace
|
382
|
+
nws << ff.absolute_path
|
383
|
+
end
|
366
384
|
end
|
367
|
-
end
|
368
385
|
|
369
|
-
|
370
|
-
|
371
|
-
add_workspace(w)
|
372
|
-
set_success_gmsg("Workspace '#{w}' added to list")
|
373
|
-
end
|
374
|
-
|
375
|
-
failed = { }
|
376
|
-
nws.each do |w|
|
377
|
-
log_debug "Adding non workspace '#{w}'"
|
378
|
-
st, res = vcs.init(w)
|
379
|
-
if st
|
386
|
+
ws.each do |w|
|
387
|
+
log_debug "Adding workspace '#{w}'"
|
380
388
|
add_workspace(w)
|
381
|
-
set_success_gmsg("
|
382
|
-
|
383
|
-
|
389
|
+
set_success_gmsg("Workspace '#{w}' added to list")
|
390
|
+
end
|
391
|
+
|
392
|
+
failed = { }
|
393
|
+
nws.each do |w|
|
394
|
+
log_debug "Adding non workspace '#{w}'"
|
395
|
+
st, res = vcs.init(w)
|
396
|
+
if st
|
397
|
+
add_workspace(w)
|
398
|
+
set_success_gmsg("Non-workspace '#{w}' added to list")
|
399
|
+
else
|
400
|
+
failed[w] = res
|
401
|
+
end
|
384
402
|
end
|
385
|
-
end
|
386
403
|
|
387
|
-
|
404
|
+
raise_event(Listener::Event[:workspace_added])
|
405
|
+
|
406
|
+
end
|
388
407
|
|
389
408
|
end # dnd_dropped
|
390
409
|
|
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,21 +1,21 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gvcsfx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
15
15
|
requirements:
|
16
16
|
- - ">="
|
17
17
|
- !ruby/object:Gem::Version
|
18
|
-
version: '0
|
18
|
+
version: '0'
|
19
19
|
name: tlogger
|
20
20
|
prerelease: false
|
21
21
|
type: :runtime
|
@@ -23,63 +23,77 @@ dependencies:
|
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
29
29
|
requirements:
|
30
|
-
- -
|
30
|
+
- - '='
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 1.2.0
|
33
|
-
name: jrubyfx
|
32
|
+
version: 1.2.0.1
|
33
|
+
name: jrubyfx-openjfx.patch
|
34
34
|
prerelease: false
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.2.0
|
40
|
+
version: 1.2.0.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - "
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '0
|
46
|
+
version: '0'
|
47
47
|
name: toolrack
|
48
48
|
prerelease: false
|
49
49
|
type: :runtime
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0
|
54
|
+
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- - "
|
58
|
+
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: '0
|
60
|
+
version: '0'
|
61
61
|
name: gvcs
|
62
62
|
prerelease: false
|
63
63
|
type: :runtime
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '0
|
68
|
+
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- - "
|
72
|
+
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '0
|
74
|
+
version: '0'
|
75
75
|
name: git_cli
|
76
76
|
prerelease: false
|
77
77
|
type: :runtime
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0'
|
89
|
+
name: devops_helper
|
90
|
+
prerelease: false
|
91
|
+
type: :development
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0
|
96
|
+
version: '0'
|
83
97
|
description: Simple and effective VCS workflow management
|
84
98
|
email:
|
85
99
|
- chrisliaw@antrapol.com
|
@@ -91,6 +105,7 @@ files:
|
|
91
105
|
- ".gitignore"
|
92
106
|
- Gemfile
|
93
107
|
- README.md
|
108
|
+
- Rakefile
|
94
109
|
- bin/gvcsfx
|
95
110
|
- bin/gvcsfx.rb
|
96
111
|
- config/warble.rb
|
@@ -101,6 +116,7 @@ files:
|
|
101
116
|
- fx/show_text.fxml
|
102
117
|
- fx/stash_select.fxml
|
103
118
|
- gvcs_fx.rb
|
119
|
+
- gvcsfx.gemspec
|
104
120
|
- handlers/add_workspace_controller.rb
|
105
121
|
- handlers/event_handler.rb
|
106
122
|
- handlers/float_win_controller.rb
|