-
Notifications
You must be signed in to change notification settings - Fork 0
/
frmBlueprintList.vb
655 lines (542 loc) · 26.9 KB
/
frmBlueprintList.vb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
Imports System.Data.SQLite
Public Class frmBlueprintList
Public Event BPSelected(bpName As String)
Private Class NodeTag
Public Property FilterField As String
Public Property FilterValue As Integer?
Public Sub New(field As String, value As Integer?)
FilterField = field
FilterValue = value
End Sub
End Class
Private FirstFormLoad As Boolean
Public Sub New()
FirstFormLoad = True
' This call is required by the designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
lblIntro.Text = "Expand the tree to locate a Blueprint." + Environment.NewLine + "Double-Click on it to load it into the main window." + Environment.NewLine + "This window will remain open unless you click Close."
' Load settings, which will fire handler to set top nodes for the saved options
Call InitForm()
' Load the tree
Call SetTopNodes()
FirstFormLoad = False
End Sub
' Loads settings on the form
Private Sub InitForm()
With UserBPViewerSettings
' Load saved settings
Select Case .BlueprintTypeSelection
Case rbtnBPAll.Text
rbtnBPAll.Checked = True
Case rbtnBPOwnedBlueprints.Text
rbtnBPOwnedBlueprints.Checked = True
Case rbtnBPFavoriteBlueprints.Text
rbtnBPFavoriteBlueprints.Checked = True
Case rbtnBPShipBlueprints.Text
rbtnBPShipBlueprints.Checked = True
Case rbtnBPDroneBlueprints.Text
rbtnBPDroneBlueprints.Checked = True
Case rbtnBPAmmoChargeBlueprints.Text
rbtnBPAmmoChargeBlueprints.Checked = True
Case rbtnBPModuleBlueprints.Text
rbtnBPModuleBlueprints.Checked = True
Case rbtnBPComponentBlueprints.Text
rbtnBPComponentBlueprints.Checked = True
Case rbtnBPStructureBlueprints.Text
rbtnBPStructureBlueprints.Checked = True
Case rbtnBPSubsystemBlueprints.Text
rbtnBPSubsystemBlueprints.Checked = True
Case rbtnBPRigBlueprints.Text
rbtnBPRigBlueprints.Checked = True
Case rbtnBPBoosterBlueprints.Text
rbtnBPBoosterBlueprints.Checked = True
Case rbtnBPMiscBlueprints.Text
rbtnBPMiscBlueprints.Checked = True
Case rbtnBPDeployableBlueprints.Text
rbtnBPDeployableBlueprints.Checked = True
Case rbtnBPCelestialsBlueprints.Text
rbtnBPCelestialsBlueprints.Checked = True
Case rbtnBPStructureRigsBlueprints.Text
rbtnBPStructureRigsBlueprints.Checked = True
Case rbtnBPReactionBlueprints.Text
rbtnBPReactionBlueprints.Checked = True
End Select
chkBPNPCBPOs.Checked = .BPNPCBPOsCheck
chkBPTech1.Checked = .Tech1Check
chkBPTech2.Checked = .Tech2Check
chkBPTech3.Checked = .Tech3Check
chkBPNavy.Checked = .TechFactionCheck
chkBPStory.Checked = .TechStorylineCheck
chkBPPirate.Checked = .TechPirateCheck
' chkBPIncludeIgnoredBPs.Checked = .IncludeIgnoredBPs
chkBPSmall.Checked = .SmallCheck
chkBPMedium.Checked = .MediumCheck
chkBPLarge.Checked = .LargeCheck
chkBPXLarge.Checked = .XLCheck
End With
End Sub
' Saves settings for form to XML
Private Sub btnReactionsSaveSettings_Click(sender As Object, e As EventArgs) Handles btnReactionsSaveSettings.Click
Dim TempSettings As BPViewerSettings = Nothing
Dim Settings As New ProgramSettings
With TempSettings
If rbtnBPAll.Checked Then
.BlueprintTypeSelection = rbtnBPAll.Text
ElseIf rbtnBPOwnedBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPOwnedBlueprints.Text
ElseIf rbtnBPFavoriteBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPFavoriteBlueprints.Text
ElseIf rbtnBPShipBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPShipBlueprints.Text
ElseIf rbtnBPDroneBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPDroneBlueprints.Text
ElseIf rbtnBPAmmoChargeBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPAmmoChargeBlueprints.Text
ElseIf rbtnBPModuleBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPModuleBlueprints.Text
ElseIf rbtnBPComponentBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPComponentBlueprints.Text
ElseIf rbtnBPStructureBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPStructureBlueprints.Text
ElseIf rbtnBPSubsystemBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPSubsystemBlueprints.Text
ElseIf rbtnBPRigBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPRigBlueprints.Text
ElseIf rbtnBPBoosterBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPBoosterBlueprints.Text
ElseIf rbtnBPMiscBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPMiscBlueprints.Text
ElseIf rbtnBPCelestialsBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPCelestialsBlueprints.Text
ElseIf rbtnBPDeployableBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPDeployableBlueprints.Text
ElseIf rbtnBPStructureRigsBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPStructureRigsBlueprints.Text
ElseIf rbtnBPReactionBlueprints.Checked Then
.BlueprintTypeSelection = rbtnBPReactionBlueprints.Text
End If
.BPNPCBPOsCheck = chkBPNPCBPOs.Checked
.Tech1Check = chkBPTech1.Checked
.Tech2Check = chkBPTech2.Checked
.Tech3Check = chkBPTech3.Checked
.TechStorylineCheck = chkBPStory.Checked
.TechFactionCheck = chkBPNavy.Checked
.TechPirateCheck = chkBPPirate.Checked
'.IncludeIgnoredBPs = chkBPIncludeIgnoredBPs.Checked
.SmallCheck = chkBPSmall.Checked
.MediumCheck = chkBPMedium.Checked
.LargeCheck = chkBPLarge.Checked
.XLCheck = chkBPXLarge.Checked
End With
Call Settings.SaveBPViewerSettings(TempSettings)
UserBPViewerSettings = TempSettings
MsgBox("Settings Saved", vbInformation, Application.ProductName)
End Sub
' I'd like to try and find some way of merging PopulateNode and SetTopNodes, but I don't think there's a simple way
Private Sub SetTopNodes()
treBlueprintTreeView.Nodes.Clear()
Using con = New SQLiteConnection(EVEDB.DBREf.ConnectionString)
Dim com = con.CreateCommand()
com.CommandText = BuildBPQuery("ITEM_CATEGORY", "", Nothing)
con.Open()
Using reader = com.ExecuteReader()
While reader.Read
Dim readCategory = reader("ITEM_CATEGORY").ToString
Dim newNode = New TreeNode(readCategory)
newNode.Tag = New NodeTag("ITEM_CATEGORY", CInt(reader("FilterID")))
treBlueprintTreeView.Nodes.Add(newNode)
newNode.Nodes.Add(New TreeNode) 'dummy node to show the + mark
End While
End Using
End Using
' If there is only one node, expand it to show the subnodes for usability
If treBlueprintTreeView.Nodes.Count = 1 Then
treBlueprintTreeView.Nodes(0).Expand()
End If
End Sub
Private Sub treBlueprintTreeView_BeforeExpand(sender As Object, e As TreeViewCancelEventArgs) Handles treBlueprintTreeView.BeforeExpand
PopulateNode(e.Node)
End Sub
Private Function GetDisplayLevel(parentLevel As String) As String
Select Case parentLevel
Case "ITEM_CATEGORY"
Return "ITEM_GROUP"
Case "ITEM_GROUP"
Return "MARKET_GROUP"
Case "MARKET_GROUP"
Return "BLUEPRINT_NAME"
Case Else
Throw New ArgumentOutOfRangeException($"Value of {NameOf(parentLevel)} is invalid: {parentLevel}")
End Select
End Function
' I'd like to try and find some way of merging PopulateNode and SetTopNodes, but I don't think there's a simple way
Private Sub PopulateNode(thisNode As TreeNode)
thisNode.Nodes.Clear()
Dim filterLevel = CType(thisNode.Tag, NodeTag)
Dim displayLevel = GetDisplayLevel(filterLevel.FilterField)
Using con = New SQLiteConnection(EVEDB.DBREf.ConnectionString)
Dim com = con.CreateCommand()
Dim ItemGroupID As Integer = 0
If thisNode.Name <> "" Then
ItemGroupID = CInt(thisNode.Name)
End If
com.CommandText = BuildBPQuery(displayLevel, filterLevel.FilterField, filterLevel.FilterValue, ItemGroupID)
con.Open()
Using reader = com.ExecuteReader()
While reader.Read
Dim newNode = New TreeNode(reader(displayLevel).ToString)
newNode.Tag = New NodeTag(displayLevel, CInt(reader("FilterID")))
newNode.Name = reader("ITEM_GROUP_ID").ToString ' Store the group id
thisNode.Nodes.Add(newNode)
If displayLevel <> "BLUEPRINT_NAME" Then
newNode.Nodes.Add(New TreeNode) 'dummy node to show the + mark
End If
End While
End Using
con.Close()
End Using
End Sub
Private Function BuildBPQuery(displayLevel As String, filterColumnName As String, filterColumnValue As Integer?, Optional ItemGroupID As Integer = 0) As String
Dim levelFilter As String = ""
If filterColumnName <> "" And filterColumnValue.HasValue Then
levelFilter = $"AND {filterColumnName}_ID = {filterColumnValue}"
End If
' Ignore flag
Dim IgnoreFilter As String = ""
'If chkBPIncludeIgnoredBPs.Checked = False Then
' IgnoreFilter = " AND IGNORE = 0 "
'End If
' Text search
Dim TextFilter As String = ""
If Trim(txtBPItemFilter.Text) <> "" Then
TextFilter = " AND BLUEPRINT_NAME LIKE '%" & FormatDBString(Trim(txtBPItemFilter.Text)) & "%' "
End If
Dim NPCBPOFilter As String = ""
If chkBPNPCBPOs.Checked Then
NPCBPOFilter = " AND i2.marketGroupID IS NOT NULL AND b.ITEM_TYPE <> 2 "
End If
Dim ItemGroupFilter As String = ""
If ItemGroupID <> 0 Then
ItemGroupFilter = "AND ITEM_GROUP_ID = " & CStr(ItemGroupID) & " "
End If
Dim query =
$"SELECT ITEM_GROUP_ID, b.{displayLevel}, {If(displayLevel = "BLUEPRINT_NAME", "0", $"{displayLevel}_ID")} AS FilterID
FROM ALL_BLUEPRINTS b
JOIN INVENTORY_TYPES i ON b.ITEM_ID = i.typeID {GetExtraJoinFilter()}
JOIN INVENTORY_TYPES i2 ON b.BLUEPRINT_ID = i2.typeID
{GetOwnedJoin()}
WHERE MARKET_GROUP IS NOT NULL
{ItemGroupFilter}
{GetSizeGroupFilter()}
{GetItemTypesFilter()}
{levelFilter}
{IgnoreFilter}
{TextFilter}
{NPCBPOFilter}
GROUP BY b.{displayLevel}, FilterID"
Return query
End Function
Private Function GetExtraJoinFilter() As String
If rbtnBPAmmoChargeBlueprints.Checked Then
Return "And ITEM_CATEGORY = 'Charge'"
ElseIf rbtnBPDroneBlueprints.Checked Then
Return "AND ITEM_CATEGORY IN ('Drone', 'Fighter')"
ElseIf rbtnBPModuleBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Module' AND ITEM_GROUP NOT LIKE 'Rig%'"
ElseIf rbtnBPShipBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Ship'"
ElseIf rbtnBPSubsystemBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Subsystem'"
ElseIf rbtnBPBoosterBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Implant'"
ElseIf rbtnBPComponentBlueprints.Checked Then
Return "AND ITEM_GROUP LIKE '%Components%' AND ITEM_GROUP <> 'Station Components'"
ElseIf rbtnBPMiscBlueprints.Checked Then
Return "AND ITEM_GROUP IN ('Tool', 'Data Interfaces', 'Cyberimplant', 'Fuel Block')"
ElseIf rbtnBPDeployableBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Deployable'"
ElseIf rbtnBPCelestialsBlueprints.Checked Then
Return "AND ITEM_CATEGORY IN ('Celestial', 'Orbitals', 'Sovereignty Structures', 'Station', 'Accessories', 'Infrastructure Upgrades')"
ElseIf rbtnBPStructureBlueprints.Checked Then
Return "AND (ITEM_CATEGORY IN ('Starbase','Structure') OR ITEM_GROUP = 'Station Components')"
ElseIf rbtnBPStructureRigsBlueprints.Checked Then
Return "AND ITEM_CATEGORY = 'Structure Rigs'"
ElseIf rbtnBPStructureModuleBlueprints.Checked Then
Return "AND (ITEM_CATEGORY = 'Structure Module' AND ITEM_GROUP NOT LIKE '%Rig%') "
ElseIf rbtnBPReactionBlueprints.Checked Then
Return "AND BLUEPRINT_GROUP LIKE '%Reaction Formulas' "
ElseIf rbtnBPRigBlueprints.Checked Then
Return "AND (BLUEPRINT_GROUP = 'Rig Blueprint' OR (ITEM_CATEGORY = 'Structure Module' AND ITEM_GROUP LIKE '%Rig%'))"
Else
Return ""
End If
End Function
Private Function GetOwnedJoin() As String
Dim ownedJoin = ""
Dim baseJoin = $"JOIN OWNED_BLUEPRINTS o ON b.BLUEPRINT_ID = o.BLUEPRINT_ID "
Dim ownedFilter = ""
' See what ID we use for character bps
Dim TempID As Long = 0
If UserApplicationSettings.LoadBPsbyChar Then
' Use the ID sent
TempID = SelectedCharacter.ID
Else
TempID = CommonLoadBPsID
End If
ownedFilter = $" AND o.OWNED <> 0 AND o.USER_ID = {TempID}"
If rbtnBPOwnedBlueprints.Checked Then
ownedJoin = $"{baseJoin} {ownedFilter}"
ElseIf rbtnBPFavoriteBlueprints.Checked Then
ownedJoin = $"{baseJoin} {ownedFilter} AND FAVORITE = 1"
End If
Return ownedJoin
End Function
Private Function GetSizeGroupFilter() As String
Dim sizeGroupFilter = ""
Dim sizeLimit = New List(Of String)()
If chkBPSmall.Checked Then
sizeLimit.Add("S")
End If
If chkBPMedium.Checked Then
sizeLimit.Add("M")
End If
If chkBPLarge.Checked Then
sizeLimit.Add("L")
End If
If chkBPXLarge.Checked Then
sizeLimit.Add("XL")
End If
If sizeLimit.Count > 0 Then
Dim sizeGroupString = sizeLimit.Select(Function(x) $"'{x}'").Aggregate(Function(prev, this) $"{prev}, {this}")
sizeGroupFilter = $"AND b.SIZE_GROUP IN ({sizeGroupString})"
End If
Return sizeGroupFilter
End Function
Private Function GetItemTypesFilter() As String
Dim itemTypes = New List(Of ItemType)
Dim itemTypesFilter = "''"
If chkBPTech1.Checked Then
itemTypes.Add(ItemType.Tech1)
End If
If chkBPTech2.Checked Then
itemTypes.Add(ItemType.Tech2)
End If
If chkBPTech3.Checked Then
itemTypes.Add(ItemType.Tech3)
End If
If chkBPStory.Checked Then
itemTypes.Add(ItemType.Storyline)
End If
If chkBPPirate.Checked Then
itemTypes.Add(ItemType.Pirate)
End If
If chkBPNavy.Checked Then
itemTypes.Add(ItemType.Navy)
End If
If itemTypes.Count > 0 Then
Dim itemTypesString = itemTypes.Select(Function(it) CInt(it).ToString).Aggregate(Function(prev, this) $"{prev}, {this}")
itemTypesFilter = $"AND b.ITEM_TYPE IN ({itemTypesString})"
End If
Return itemTypesFilter
End Function
' Changed to use after select to allow single click loading
'Private Sub treBlueprintTreeView_DoubleClick(sender As Object, e As EventArgs) Handles treBlueprintTreeView.DoubleClick
' 'If (treBlueprintTreeView.SelectedNode Is Nothing) Then
' ' Return
' 'End If
' '' Only load if the final node (bp) in the tree
' 'If treBlueprintTreeView.SelectedNode.Nodes.Count = 0 Then
' ' RaiseEvent BPSelected(treBlueprintTreeView.SelectedNode.Text)
' 'End If
'End Sub
' After select allows loading the bp selected after the event fires
Private Sub treBlueprintTreeView_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles treBlueprintTreeView.AfterSelect
If (treBlueprintTreeView.SelectedNode Is Nothing) Then
Return
End If
' Only load if the final node (bp) in the tree
If treBlueprintTreeView.SelectedNode.Nodes.Count = 0 Then
RaiseEvent BPSelected(treBlueprintTreeView.SelectedNode.Text)
End If
End Sub
Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnClose.Click
Me.Close()
End Sub
Private Sub ResetSelectors(ByVal T1 As Boolean, ByVal T2 As Boolean, ByVal T3 As Boolean, ByVal Storyline As Boolean, ByVal NavyFaction As Boolean, ByVal PirateFaction As Boolean)
If Not FirstFormLoad Then
chkBPTech1.Enabled = T1
chkBPTech2.Enabled = T2
chkBPTech3.Enabled = T3
chkBPNavy.Enabled = NavyFaction
chkBPPirate.Enabled = PirateFaction
chkBPStory.Enabled = Storyline
' Make sure we have something checked
Call EnsureBPTechCheck()
' Load the New data
Call SetTopNodes()
End If
End Sub
' Makes sure we have a tech checked for blueprints
Private Sub EnsureBPTechCheck()
If chkBPTech1.Enabled And chkBPTech1.Checked Then
Exit Sub
ElseIf chkBPTech2.Enabled And chkBPTech2.Checked Then
Exit Sub
ElseIf chkBPTech3.Enabled And chkBPTech3.Checked Then
Exit Sub
ElseIf chkBPNavy.Enabled And chkBPNavy.Checked Then
Exit Sub
ElseIf chkBPPirate.Enabled And chkBPPirate.Checked Then
Exit Sub
ElseIf chkBPStory.Enabled And chkBPStory.Checked Then
Exit Sub
End If
' If here, then none are checked that are enabled, find the first one enabled and check it
If chkBPTech1.Enabled Then
chkBPTech1.Checked = True
Exit Sub
ElseIf chkBPTech2.Enabled Then
chkBPTech2.Checked = True
Exit Sub
ElseIf chkBPTech3.Enabled Then
chkBPTech3.Checked = True
Exit Sub
ElseIf chkBPNavy.Enabled Then
chkBPNavy.Checked = True
Exit Sub
ElseIf chkBPPirate.Enabled Then
chkBPPirate.Checked = True
Exit Sub
ElseIf chkBPStory.Enabled Then
chkBPStory.Checked = True
Exit Sub
End If
End Sub
#Region "Click Events"
Private Sub rbtnAll_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPAll.CheckedChanged
Call ResetSelectors(True, True, True, True, True, True)
End Sub
Private Sub rbBPOwned_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPOwnedBlueprints.CheckedChanged
Call ResetSelectors(True, True, True, True, True, True)
End Sub
Private Sub chkBPIncludeIgnoredBPs_CheckedChanged(sender As System.Object, e As System.EventArgs)
Call ResetSelectors(True, True, True, True, True, True)
End Sub
Private Sub rbtnShipBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPShipBlueprints.CheckedChanged
Call ResetSelectors(True, True, True, False, True, True)
End Sub
Private Sub rbtnModuleBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPModuleBlueprints.CheckedChanged
Call ResetSelectors(True, True, False, True, True, False)
End Sub
Private Sub rbtnDroneBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPDroneBlueprints.CheckedChanged
Call ResetSelectors(True, True, False, False, False, True)
End Sub
Private Sub rbtnComponentBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPComponentBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnSubsystemBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPSubsystemBlueprints.CheckedChanged
Call ResetSelectors(False, False, True, False, False, False)
End Sub
Private Sub rbtnToolBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPMiscBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnAmmoChargeBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPAmmoChargeBlueprints.CheckedChanged
Call ResetSelectors(True, True, False, False, False, False)
End Sub
Private Sub rbtnRigBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPRigBlueprints.CheckedChanged
Call ResetSelectors(True, True, False, False, False, False)
End Sub
Private Sub rbtnStructureBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPStructureBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, True)
End Sub
Private Sub rbtnBoosterBlueprints_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rbtnBPBoosterBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnBPDeployableBlueprints_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rbtnBPDeployableBlueprints.CheckedChanged
Call ResetSelectors(True, True, False, False, False, False)
End Sub
Private Sub rbtnBPStationPartsBlueprints_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rbtnBPStructureRigsBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnBPStationModulesBlueprints_CheckedChanged(sender As Object, e As EventArgs) Handles rbtnBPStructureModuleBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnBPCelestialBlueprints_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rbtnBPCelestialsBlueprints.CheckedChanged
Call ResetSelectors(True, False, False, False, False, False)
End Sub
Private Sub rbtnBPFavoriteBlueprints_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles rbtnBPFavoriteBlueprints.CheckedChanged
Call ResetSelectors(True, True, True, True, True, True)
End Sub
Private Sub chkbpTech1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPTech1.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkbpTech2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPTech2.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkbpTech3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPTech3.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPNavy_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPNavy.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPPirate_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPPirate.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPStory_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkBPStory.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPSmall_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkBPSmall.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPMedium_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkBPMedium.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPLarge_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkBPLarge.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub chkBPXLarge_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkBPXLarge.CheckedChanged
If Not FirstFormLoad Then
Call SetTopNodes()
End If
End Sub
Private Sub btnClearItemFilter_Click(sender As Object, e As EventArgs) Handles btnClearItemFilter.Click
txtBPItemFilter.Text = ""
End Sub
Private Sub btnRefresh_Click(sender As Object, e As EventArgs) Handles btnRefresh.Click
Call SetTopNodes()
End Sub
Private Sub chkBPNPCBPOs_CheckedChanged(sender As Object, e As EventArgs) Handles chkBPNPCBPOs.CheckedChanged
Call SetTopNodes()
End Sub
#End Region
End Class
''' <summary>
''' Item Type Definitions - These are set by Cwittofur based on existing data
''' </summary>
Enum ItemType
Tech1 = 1
Tech2 = 2
Tech3 = 14
Storyline = 3
Pirate = 15
Navy = 16
End Enum