mirror of
https://github.com/AAndyProgram/SCrawler.git
synced 2026-03-14 15:52:18 +00:00
2024.3.30.0
UPDATE DOWNLOAD GROUP ENVIRONMENT Add the ability to filter users who have been (not)downloaded in the last x days. DownloadedInfoForm: fix possible bug Feed: fix scrolling bug IUserData, UserDataBase, UserDataBind: remove 'FitToAddParams' UserDataBase: update 'GetLVIGroup' function; wrong decision to set 'LastUpdated' date AutoDownloader: remove 'All' and 'Default' options SettingsCLS: refactoring the code and XML file
This commit is contained in:
@@ -59,7 +59,6 @@ Namespace API.Base
|
|||||||
ReadOnly Property DownloadedTotal(Optional ByVal Total As Boolean = True) As Integer
|
ReadOnly Property DownloadedTotal(Optional ByVal Total As Boolean = True) As Integer
|
||||||
ReadOnly Property DownloadedInformation As String
|
ReadOnly Property DownloadedInformation As String
|
||||||
Property HasError As Boolean
|
Property HasError As Boolean
|
||||||
ReadOnly Property FitToAddParams As Boolean
|
|
||||||
ReadOnly Property Key As String
|
ReadOnly Property Key As String
|
||||||
Property DownloadImages As Boolean
|
Property DownloadImages As Boolean
|
||||||
Property DownloadVideos As Boolean
|
Property DownloadVideos As Boolean
|
||||||
|
|||||||
@@ -312,7 +312,7 @@ Namespace API.Base
|
|||||||
End Set
|
End Set
|
||||||
End Property
|
End Property
|
||||||
Protected Sub UserSiteNameUpdate(ByVal NewName As String)
|
Protected Sub UserSiteNameUpdate(ByVal NewName As String)
|
||||||
If Not NewName.IsEmptyString And (UserSiteName.IsEmptyString Or Settings.UserSiteNameUpdateEveryTime) Then UserSiteName = NewName
|
If Not NewName.IsEmptyString And (UserSiteName.IsEmptyString Or Settings.UpdateUserSiteNameEveryTime) Then UserSiteName = NewName
|
||||||
End Sub
|
End Sub
|
||||||
Friend ReadOnly Property UserModel As UsageModel Implements IUserData.UserModel
|
Friend ReadOnly Property UserModel As UsageModel Implements IUserData.UserModel
|
||||||
Get
|
Get
|
||||||
@@ -829,48 +829,19 @@ BlockNullPicture:
|
|||||||
Return ListImagesLoader.ApplyLVIColor(Me, New ListViewItem(ToString(), GetLVIGroup(Destination)) With {.Name = LVIKey, .Tag = LVIKey}, True)
|
Return ListImagesLoader.ApplyLVIColor(Me, New ListViewItem(ToString(), GetLVIGroup(Destination)) With {.Name = LVIKey, .Tag = LVIKey}, True)
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
Friend Overridable ReadOnly Property FitToAddParams As Boolean Implements IUserData.FitToAddParams
|
|
||||||
Get
|
|
||||||
With Settings
|
|
||||||
If IsSubscription And Not .MainFrameUsersShowSubscriptions Then Return False
|
|
||||||
If Not IsSubscription And Not .MainFrameUsersShowDefaults Then Return False
|
|
||||||
If LastUpdated.HasValue And Not .ViewDateMode.Value = ShowingDates.Off Then
|
|
||||||
Dim f As Date = If(.ViewDateFrom.HasValue, .ViewDateFrom.Value.Date, Date.MinValue.Date)
|
|
||||||
Dim t As Date = If(.ViewDateTo.HasValue, .ViewDateTo.Value.Date, Date.MaxValue.Date)
|
|
||||||
Select Case DirectCast(.ViewDateMode.Value, ShowingDates)
|
|
||||||
Case ShowingDates.In : If Not LastUpdated.Value.ValueBetween(f, t) Then Return False
|
|
||||||
Case ShowingDates.Not : If LastUpdated.Value.ValueBetween(f, t) Then Return False
|
|
||||||
End Select
|
|
||||||
End If
|
|
||||||
If Not .Labels.ExcludedIgnore AndAlso .Labels.Excluded.ValuesList.ListContains(Labels) Then Return False
|
|
||||||
If .SelectedSites.Count = 0 OrElse .SelectedSites.Contains(Site) Then
|
|
||||||
Select Case .ShowingMode.Value
|
|
||||||
Case ShowingModes.Regular : Return Not Temporary And Not Favorite
|
|
||||||
Case ShowingModes.Temporary : Return Temporary
|
|
||||||
Case ShowingModes.Favorite : Return Favorite
|
|
||||||
Case ShowingModes.Deleted : Return Not UserExists
|
|
||||||
Case ShowingModes.Suspended : Return UserSuspended
|
|
||||||
Case ShowingModes.Labels : Return Settings.Labels.Current.ValuesList.ListContains(Labels)
|
|
||||||
Case ShowingModes.NoLabels : Return Labels.Count = 0
|
|
||||||
Case Else : Return True
|
|
||||||
End Select
|
|
||||||
Else
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
End With
|
|
||||||
End Get
|
|
||||||
End Property
|
|
||||||
Friend Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup Implements IUserData.GetLVIGroup
|
Friend Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup Implements IUserData.GetLVIGroup
|
||||||
Try
|
Try
|
||||||
If Settings.ShowingMode.Value = ShowingModes.Labels And Not Settings.ShowGroupsInsteadLabels Then
|
With Settings
|
||||||
If Labels.Count > 0 And Settings.Labels.Current.Count > 0 Then
|
If Not .ShowAllUsers.Value AndAlso (.AdvancedFilter.Labels.Count > 0 Or .AdvancedFilter.LabelsNo) AndAlso Not .ShowGroupsInsteadLabels Then
|
||||||
For i% = 0 To Labels.Count - 1
|
If Labels.Count > 0 And .AdvancedFilter.Labels.Count > 0 Then
|
||||||
If Settings.Labels.Current.Contains(Labels(i)) Then Return Destination.Groups.Item(Labels(i))
|
For i% = 0 To Labels.Count - 1
|
||||||
Next
|
If .AdvancedFilter.Labels.Contains(Labels(i)) Then Return Destination.Groups.Item(Labels(i))
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
ElseIf Settings.GroupUsers Then
|
||||||
|
Return Destination.Groups.Item(GetLviGroupName(HOST, Temporary, Favorite, IsCollection))
|
||||||
End If
|
End If
|
||||||
ElseIf Settings.GroupUsers Then
|
End With
|
||||||
Return Destination.Groups.Item(GetLviGroupName(HOST, Temporary, Favorite, IsCollection))
|
|
||||||
End If
|
|
||||||
Return Destination.Groups.Item(LabelsKeeper.NoLabeledName)
|
Return Destination.Groups.Item(LabelsKeeper.NoLabeledName)
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
Return Destination.Groups.Item(LabelsKeeper.NoLabeledName)
|
Return Destination.Groups.Item(LabelsKeeper.NoLabeledName)
|
||||||
@@ -1269,8 +1240,10 @@ BlockNullPicture:
|
|||||||
Dim mca& = If(ContentMissingExists, _ContentList.LongCount(Function(c) MissingFinder(c)), 0)
|
Dim mca& = If(ContentMissingExists, _ContentList.LongCount(Function(c) MissingFinder(c)), 0)
|
||||||
If DownloadedTotal(False) > 0 Or _EnvirChanged Or Not mcb = mca Or _ForceSaveUserData Then
|
If DownloadedTotal(False) > 0 Or _EnvirChanged Or Not mcb = mca Or _ForceSaveUserData Then
|
||||||
If Not __isChannelsSupport Then
|
If Not __isChannelsSupport Then
|
||||||
LastUpdated = Now
|
If DownloadedTotal(False) > 0 Then
|
||||||
RunScript()
|
LastUpdated = Now
|
||||||
|
RunScript()
|
||||||
|
End If
|
||||||
DownloadedPictures(True) = SFile.GetFiles(MyFile.CutPath, "*.jpg|*.jpeg|*.png|*.gif|*.webm",, EDP.ReturnValue).Count
|
DownloadedPictures(True) = SFile.GetFiles(MyFile.CutPath, "*.jpg|*.jpeg|*.png|*.gif|*.webm",, EDP.ReturnValue).Count
|
||||||
DownloadedVideos(True) = SFile.GetFiles(MyFile.CutPath, "*.mp4|*.mkv|*.mov", SearchOption.AllDirectories, EDP.ReturnValue).Count
|
DownloadedVideos(True) = SFile.GetFiles(MyFile.CutPath, "*.mp4|*.mkv|*.mov", SearchOption.AllDirectories, EDP.ReturnValue).Count
|
||||||
If Labels.Contains(LabelsKeeper.NoParsedUser) Then Labels.Remove(LabelsKeeper.NoParsedUser)
|
If Labels.Contains(LabelsKeeper.NoParsedUser) Then Labels.Remove(LabelsKeeper.NoParsedUser)
|
||||||
|
|||||||
@@ -276,11 +276,6 @@ Namespace API
|
|||||||
Set(ByVal NewDate As Date?)
|
Set(ByVal NewDate As Date?)
|
||||||
End Set
|
End Set
|
||||||
End Property
|
End Property
|
||||||
Friend Overrides ReadOnly Property FitToAddParams As Boolean
|
|
||||||
Get
|
|
||||||
Return Count > 0 AndAlso Collections.Exists(Function(c) c.FitToAddParams)
|
|
||||||
End Get
|
|
||||||
End Property
|
|
||||||
Friend Overrides Property ScriptUse As Boolean
|
Friend Overrides Property ScriptUse As Boolean
|
||||||
Get
|
Get
|
||||||
Return Count > 0 AndAlso Collections.All(Function(c) c.ScriptUse)
|
Return Count > 0 AndAlso Collections.All(Function(c) c.ScriptUse)
|
||||||
|
|||||||
@@ -230,7 +230,7 @@ Namespace API.YouTube
|
|||||||
End If
|
End If
|
||||||
If list.Count > 0 Then
|
If list.Count > 0 Then
|
||||||
With list(0)
|
With list(0)
|
||||||
If Settings.UserSiteNameUpdateEveryTime Or UserSiteName.IsEmptyString Then UserSiteName = .UserTitle
|
If Settings.UpdateUserSiteNameEveryTime Or UserSiteName.IsEmptyString Then UserSiteName = .UserTitle
|
||||||
If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName
|
If FriendlyName.IsEmptyString Then FriendlyName = UserSiteName
|
||||||
End With
|
End With
|
||||||
_TempMediaList.AddRange(list.Select(Function(c) New UserMedia(c) With {.URL = If(IsSubscription, c.ThumbnailUrlMedia, .URL)}))
|
_TempMediaList.AddRange(list.Select(Function(c) New UserMedia(c) With {.URL = If(IsSubscription, c.ThumbnailUrlMedia, .URL)}))
|
||||||
|
|||||||
@@ -18,8 +18,6 @@ Namespace DownloadObjects
|
|||||||
Friend Event PauseChanged(ByVal Value As PauseModes)
|
Friend Event PauseChanged(ByVal Value As PauseModes)
|
||||||
Friend Enum Modes As Integer
|
Friend Enum Modes As Integer
|
||||||
None = 0
|
None = 0
|
||||||
[Default] = 1
|
|
||||||
All = 2
|
|
||||||
Specified = 3
|
Specified = 3
|
||||||
Groups = 4
|
Groups = 4
|
||||||
End Enum
|
End Enum
|
||||||
@@ -295,6 +293,9 @@ Namespace DownloadObjects
|
|||||||
Return $"{Name} ({GetWorkingState()}): last download date: {GetLastDateString()}; next run: {GetNextDateString()}"
|
Return $"{Name} ({GetWorkingState()}): last download date: {GetLastDateString()}; next run: {GetNextDateString()}"
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
|
Friend Overrides Function ToStringViewFilters() As String
|
||||||
|
Return $"Scheduler plan '{Name}'{IIf(IsManual, " (manual)", String.Empty)}"
|
||||||
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Initializer"
|
#Region "Initializer"
|
||||||
@@ -314,7 +315,9 @@ Namespace DownloadObjects
|
|||||||
Friend Sub New(ByVal x As EContainer)
|
Friend Sub New(ByVal x As EContainer)
|
||||||
Me.New
|
Me.New
|
||||||
Initialization = True
|
Initialization = True
|
||||||
Mode = x.Value(Name_Mode).FromXML(Of Integer)(Modes.None)
|
Dim m% = x.Value(Name_Mode).FromXML(Of Integer)(Modes.None)
|
||||||
|
If m = 1 Or m = 2 Then m = Modes.Specified
|
||||||
|
Mode = m
|
||||||
Import(x)
|
Import(x)
|
||||||
If Name.IsEmptyString Then Name = "Default"
|
If Name.IsEmptyString Then Name = "Default"
|
||||||
Groups.ListAddList(x.Value(Name_Groups).StringToList(Of String)("|"), LAP.NotContainsOnly)
|
Groups.ListAddList(x.Value(Name_Groups).StringToList(Of String)("|"), LAP.NotContainsOnly)
|
||||||
@@ -555,38 +558,6 @@ Namespace DownloadObjects
|
|||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Select Case Mode
|
Select Case Mode
|
||||||
Case Modes.All
|
|
||||||
Dim CheckLabels As Predicate(Of IUserData) = Function(ByVal u As IUserData) As Boolean
|
|
||||||
If LabelsExcluded.Count = 0 Then
|
|
||||||
Return True
|
|
||||||
ElseIf u.Labels.Count = 0 Then
|
|
||||||
Return True
|
|
||||||
Else
|
|
||||||
Return Not u.Labels.ListContains(LabelsExcluded)
|
|
||||||
End If
|
|
||||||
End Function
|
|
||||||
Dim CheckSites As Predicate(Of IUserData) = Function(u) SitesExcluded.Count = 0 OrElse Not SitesExcluded.Contains(u.Site)
|
|
||||||
Dim ExistsPredicate As Predicate(Of IUserData)
|
|
||||||
If Subscriptions Then
|
|
||||||
If SubscriptionsOnly Then
|
|
||||||
ExistsPredicate = UserExistsSubscriptionsPredicate
|
|
||||||
Else
|
|
||||||
ExistsPredicate = UserExistsPredicate
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
ExistsPredicate = UserExistsNonSubscriptionsPredicate
|
|
||||||
End If
|
|
||||||
users.ListAddList(Settings.GetUsers(Function(u) ExistsPredicate(u) And CheckLabels.Invoke(u) And CheckSites.Invoke(u)))
|
|
||||||
If UsersCount <> 0 And users.Count > 0 Then
|
|
||||||
users = users.ListTake(If(UsersCount > 0, -1, -2), Math.Abs(UsersCount))
|
|
||||||
If UsersCount < 0 Then users = users.ListReverse
|
|
||||||
End If
|
|
||||||
Case Modes.Default
|
|
||||||
Using g As New GroupParameters
|
|
||||||
g.LabelsExcluded.ListAddList(LabelsExcluded)
|
|
||||||
g.SitesExcluded.ListAddList(SitesExcluded)
|
|
||||||
users.ListAddList(DownloadGroup.GetUsers(g))
|
|
||||||
End Using
|
|
||||||
Case Modes.Specified : users.ListAddList(DownloadGroup.GetUsers(Me))
|
Case Modes.Specified : users.ListAddList(DownloadGroup.GetUsers(Me))
|
||||||
Case Modes.Groups
|
Case Modes.Groups
|
||||||
If Groups.Count > 0 And Settings.Groups.Count > 0 Then
|
If Groups.Count > 0 And Settings.Groups.Count > 0 Then
|
||||||
|
|||||||
@@ -25,16 +25,14 @@ Namespace DownloadObjects
|
|||||||
Me.components = New System.ComponentModel.Container()
|
Me.components = New System.ComponentModel.Container()
|
||||||
Dim CONTAINER_MAIN As System.Windows.Forms.ToolStripContainer
|
Dim CONTAINER_MAIN As System.Windows.Forms.ToolStripContainer
|
||||||
Dim TP_MODE As System.Windows.Forms.TableLayoutPanel
|
Dim TP_MODE As System.Windows.Forms.TableLayoutPanel
|
||||||
Dim ActionButton5 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton1 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AutoDownloaderEditorForm))
|
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AutoDownloaderEditorForm))
|
||||||
Dim ActionButton6 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton2 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
Dim TP_NOTIFY As System.Windows.Forms.TableLayoutPanel
|
Dim TP_NOTIFY As System.Windows.Forms.TableLayoutPanel
|
||||||
Dim ActionButton7 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton3 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
Dim ActionButton8 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton4 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
Dim TT_MAIN As System.Windows.Forms.ToolTip
|
Dim TT_MAIN As System.Windows.Forms.ToolTip
|
||||||
Me.DEF_GROUP = New SCrawler.DownloadObjects.Groups.GroupDefaults()
|
Me.DEF_GROUP = New SCrawler.DownloadObjects.Groups.GroupDefaults()
|
||||||
Me.OPT_ALL = New System.Windows.Forms.RadioButton()
|
|
||||||
Me.OPT_DEFAULT = New System.Windows.Forms.RadioButton()
|
|
||||||
Me.OPT_SPEC = New System.Windows.Forms.RadioButton()
|
Me.OPT_SPEC = New System.Windows.Forms.RadioButton()
|
||||||
Me.OPT_DISABLED = New System.Windows.Forms.RadioButton()
|
Me.OPT_DISABLED = New System.Windows.Forms.RadioButton()
|
||||||
Me.OPT_GROUP = New System.Windows.Forms.RadioButton()
|
Me.OPT_GROUP = New System.Windows.Forms.RadioButton()
|
||||||
@@ -67,13 +65,13 @@ Namespace DownloadObjects
|
|||||||
'CONTAINER_MAIN.ContentPanel
|
'CONTAINER_MAIN.ContentPanel
|
||||||
'
|
'
|
||||||
CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEF_GROUP)
|
CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEF_GROUP)
|
||||||
CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 388)
|
CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 519)
|
||||||
CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
||||||
CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
||||||
CONTAINER_MAIN.Name = "CONTAINER_MAIN"
|
CONTAINER_MAIN.Name = "CONTAINER_MAIN"
|
||||||
CONTAINER_MAIN.RightToolStripPanelVisible = False
|
CONTAINER_MAIN.RightToolStripPanelVisible = False
|
||||||
CONTAINER_MAIN.Size = New System.Drawing.Size(476, 413)
|
CONTAINER_MAIN.Size = New System.Drawing.Size(476, 519)
|
||||||
CONTAINER_MAIN.TabIndex = 0
|
CONTAINER_MAIN.TabIndex = 0
|
||||||
CONTAINER_MAIN.TopToolStripPanelVisible = False
|
CONTAINER_MAIN.TopToolStripPanelVisible = False
|
||||||
'
|
'
|
||||||
@@ -83,23 +81,27 @@ Namespace DownloadObjects
|
|||||||
Me.DEF_GROUP.ColumnCount = 1
|
Me.DEF_GROUP.ColumnCount = 1
|
||||||
Me.DEF_GROUP.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
Me.DEF_GROUP.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
Me.DEF_GROUP.Controls.Add(TP_MODE, 0, 0)
|
Me.DEF_GROUP.Controls.Add(TP_MODE, 0, 0)
|
||||||
Me.DEF_GROUP.Controls.Add(Me.TXT_GROUPS, 0, 8)
|
Me.DEF_GROUP.Controls.Add(Me.TXT_GROUPS, 0, 12)
|
||||||
Me.DEF_GROUP.Controls.Add(TP_NOTIFY, 0, 9)
|
Me.DEF_GROUP.Controls.Add(TP_NOTIFY, 0, 13)
|
||||||
Me.DEF_GROUP.Controls.Add(Me.TXT_TIMER, 0, 11)
|
Me.DEF_GROUP.Controls.Add(Me.TXT_TIMER, 0, 15)
|
||||||
Me.DEF_GROUP.Controls.Add(Me.NUM_DELAY, 0, 12)
|
Me.DEF_GROUP.Controls.Add(Me.NUM_DELAY, 0, 16)
|
||||||
Me.DEF_GROUP.Controls.Add(Me.LBL_LAST_TIME_UP, 0, 13)
|
Me.DEF_GROUP.Controls.Add(Me.LBL_LAST_TIME_UP, 0, 17)
|
||||||
Me.DEF_GROUP.Controls.Add(Me.CH_MANUAL, 0, 10)
|
Me.DEF_GROUP.Controls.Add(Me.CH_MANUAL, 0, 14)
|
||||||
Me.DEF_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.DEF_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.DEF_GROUP.Location = New System.Drawing.Point(0, 0)
|
Me.DEF_GROUP.Location = New System.Drawing.Point(0, 0)
|
||||||
Me.DEF_GROUP.Name = "DEF_GROUP"
|
Me.DEF_GROUP.Name = "DEF_GROUP"
|
||||||
Me.DEF_GROUP.RowCount = 15
|
Me.DEF_GROUP.RowCount = 19
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
@@ -108,23 +110,21 @@ Namespace DownloadObjects
|
|||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
Me.DEF_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
Me.DEF_GROUP.Size = New System.Drawing.Size(476, 388)
|
Me.DEF_GROUP.Size = New System.Drawing.Size(476, 519)
|
||||||
Me.DEF_GROUP.TabIndex = 0
|
Me.DEF_GROUP.TabIndex = 0
|
||||||
'
|
'
|
||||||
'TP_MODE
|
'TP_MODE
|
||||||
'
|
'
|
||||||
TP_MODE.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.[Single]
|
TP_MODE.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.[Single]
|
||||||
TP_MODE.ColumnCount = 5
|
TP_MODE.ColumnCount = 3
|
||||||
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20.0!))
|
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20.0!))
|
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20.0!))
|
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20.0!))
|
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
|
||||||
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20.0!))
|
TP_MODE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
|
||||||
TP_MODE.Controls.Add(Me.OPT_ALL, 1, 0)
|
TP_MODE.Controls.Add(Me.OPT_SPEC, 1, 0)
|
||||||
TP_MODE.Controls.Add(Me.OPT_DEFAULT, 2, 0)
|
|
||||||
TP_MODE.Controls.Add(Me.OPT_SPEC, 3, 0)
|
|
||||||
TP_MODE.Controls.Add(Me.OPT_DISABLED, 0, 0)
|
TP_MODE.Controls.Add(Me.OPT_DISABLED, 0, 0)
|
||||||
TP_MODE.Controls.Add(Me.OPT_GROUP, 4, 0)
|
TP_MODE.Controls.Add(Me.OPT_GROUP, 2, 0)
|
||||||
TP_MODE.Dock = System.Windows.Forms.DockStyle.Fill
|
TP_MODE.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
TP_MODE.Location = New System.Drawing.Point(1, 1)
|
TP_MODE.Location = New System.Drawing.Point(1, 1)
|
||||||
TP_MODE.Margin = New System.Windows.Forms.Padding(0)
|
TP_MODE.Margin = New System.Windows.Forms.Padding(0)
|
||||||
@@ -134,39 +134,13 @@ Namespace DownloadObjects
|
|||||||
TP_MODE.Size = New System.Drawing.Size(474, 25)
|
TP_MODE.Size = New System.Drawing.Size(474, 25)
|
||||||
TP_MODE.TabIndex = 0
|
TP_MODE.TabIndex = 0
|
||||||
'
|
'
|
||||||
'OPT_ALL
|
|
||||||
'
|
|
||||||
Me.OPT_ALL.AutoSize = True
|
|
||||||
Me.OPT_ALL.Dock = System.Windows.Forms.DockStyle.Fill
|
|
||||||
Me.OPT_ALL.Location = New System.Drawing.Point(98, 4)
|
|
||||||
Me.OPT_ALL.Name = "OPT_ALL"
|
|
||||||
Me.OPT_ALL.Size = New System.Drawing.Size(87, 17)
|
|
||||||
Me.OPT_ALL.TabIndex = 1
|
|
||||||
Me.OPT_ALL.TabStop = True
|
|
||||||
Me.OPT_ALL.Text = "ALL"
|
|
||||||
TT_MAIN.SetToolTip(Me.OPT_ALL, "Download all users")
|
|
||||||
Me.OPT_ALL.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'OPT_DEFAULT
|
|
||||||
'
|
|
||||||
Me.OPT_DEFAULT.AutoSize = True
|
|
||||||
Me.OPT_DEFAULT.Dock = System.Windows.Forms.DockStyle.Fill
|
|
||||||
Me.OPT_DEFAULT.Location = New System.Drawing.Point(192, 4)
|
|
||||||
Me.OPT_DEFAULT.Name = "OPT_DEFAULT"
|
|
||||||
Me.OPT_DEFAULT.Size = New System.Drawing.Size(87, 17)
|
|
||||||
Me.OPT_DEFAULT.TabIndex = 2
|
|
||||||
Me.OPT_DEFAULT.TabStop = True
|
|
||||||
Me.OPT_DEFAULT.Text = "Default"
|
|
||||||
TT_MAIN.SetToolTip(Me.OPT_DEFAULT, "All users marked ""Ready for download""")
|
|
||||||
Me.OPT_DEFAULT.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'OPT_SPEC
|
'OPT_SPEC
|
||||||
'
|
'
|
||||||
Me.OPT_SPEC.AutoSize = True
|
Me.OPT_SPEC.AutoSize = True
|
||||||
Me.OPT_SPEC.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.OPT_SPEC.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.OPT_SPEC.Location = New System.Drawing.Point(286, 4)
|
Me.OPT_SPEC.Location = New System.Drawing.Point(161, 4)
|
||||||
Me.OPT_SPEC.Name = "OPT_SPEC"
|
Me.OPT_SPEC.Name = "OPT_SPEC"
|
||||||
Me.OPT_SPEC.Size = New System.Drawing.Size(87, 17)
|
Me.OPT_SPEC.Size = New System.Drawing.Size(150, 17)
|
||||||
Me.OPT_SPEC.TabIndex = 3
|
Me.OPT_SPEC.TabIndex = 3
|
||||||
Me.OPT_SPEC.TabStop = True
|
Me.OPT_SPEC.TabStop = True
|
||||||
Me.OPT_SPEC.Text = "Specified"
|
Me.OPT_SPEC.Text = "Specified"
|
||||||
@@ -179,7 +153,7 @@ Namespace DownloadObjects
|
|||||||
Me.OPT_DISABLED.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.OPT_DISABLED.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.OPT_DISABLED.Location = New System.Drawing.Point(4, 4)
|
Me.OPT_DISABLED.Location = New System.Drawing.Point(4, 4)
|
||||||
Me.OPT_DISABLED.Name = "OPT_DISABLED"
|
Me.OPT_DISABLED.Name = "OPT_DISABLED"
|
||||||
Me.OPT_DISABLED.Size = New System.Drawing.Size(87, 17)
|
Me.OPT_DISABLED.Size = New System.Drawing.Size(150, 17)
|
||||||
Me.OPT_DISABLED.TabIndex = 0
|
Me.OPT_DISABLED.TabIndex = 0
|
||||||
Me.OPT_DISABLED.TabStop = True
|
Me.OPT_DISABLED.TabStop = True
|
||||||
Me.OPT_DISABLED.Text = "Disabled"
|
Me.OPT_DISABLED.Text = "Disabled"
|
||||||
@@ -190,9 +164,9 @@ Namespace DownloadObjects
|
|||||||
'
|
'
|
||||||
Me.OPT_GROUP.AutoSize = True
|
Me.OPT_GROUP.AutoSize = True
|
||||||
Me.OPT_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.OPT_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.OPT_GROUP.Location = New System.Drawing.Point(380, 4)
|
Me.OPT_GROUP.Location = New System.Drawing.Point(318, 4)
|
||||||
Me.OPT_GROUP.Name = "OPT_GROUP"
|
Me.OPT_GROUP.Name = "OPT_GROUP"
|
||||||
Me.OPT_GROUP.Size = New System.Drawing.Size(90, 17)
|
Me.OPT_GROUP.Size = New System.Drawing.Size(152, 17)
|
||||||
Me.OPT_GROUP.TabIndex = 4
|
Me.OPT_GROUP.TabIndex = 4
|
||||||
Me.OPT_GROUP.TabStop = True
|
Me.OPT_GROUP.TabStop = True
|
||||||
Me.OPT_GROUP.Text = "Groups"
|
Me.OPT_GROUP.Text = "Groups"
|
||||||
@@ -201,16 +175,16 @@ Namespace DownloadObjects
|
|||||||
'
|
'
|
||||||
'TXT_GROUPS
|
'TXT_GROUPS
|
||||||
'
|
'
|
||||||
ActionButton5.BackgroundImage = CType(resources.GetObject("ActionButton5.BackgroundImage"), System.Drawing.Image)
|
ActionButton1.BackgroundImage = CType(resources.GetObject("ActionButton1.BackgroundImage"), System.Drawing.Image)
|
||||||
ActionButton5.Name = "Edit"
|
ActionButton1.Name = "Edit"
|
||||||
ActionButton6.BackgroundImage = CType(resources.GetObject("ActionButton6.BackgroundImage"), System.Drawing.Image)
|
ActionButton2.BackgroundImage = CType(resources.GetObject("ActionButton2.BackgroundImage"), System.Drawing.Image)
|
||||||
ActionButton6.Name = "Clear"
|
ActionButton2.Name = "Clear"
|
||||||
Me.TXT_GROUPS.Buttons.Add(ActionButton5)
|
Me.TXT_GROUPS.Buttons.Add(ActionButton1)
|
||||||
Me.TXT_GROUPS.Buttons.Add(ActionButton6)
|
Me.TXT_GROUPS.Buttons.Add(ActionButton2)
|
||||||
Me.TXT_GROUPS.CaptionText = "Groups"
|
Me.TXT_GROUPS.CaptionText = "Groups"
|
||||||
Me.TXT_GROUPS.CaptionWidth = 50.0R
|
Me.TXT_GROUPS.CaptionWidth = 50.0R
|
||||||
Me.TXT_GROUPS.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.TXT_GROUPS.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.TXT_GROUPS.Location = New System.Drawing.Point(4, 224)
|
Me.TXT_GROUPS.Location = New System.Drawing.Point(4, 331)
|
||||||
Me.TXT_GROUPS.Name = "TXT_GROUPS"
|
Me.TXT_GROUPS.Name = "TXT_GROUPS"
|
||||||
Me.TXT_GROUPS.Size = New System.Drawing.Size(468, 22)
|
Me.TXT_GROUPS.Size = New System.Drawing.Size(468, 22)
|
||||||
Me.TXT_GROUPS.TabIndex = 1
|
Me.TXT_GROUPS.TabIndex = 1
|
||||||
@@ -228,7 +202,7 @@ Namespace DownloadObjects
|
|||||||
TP_NOTIFY.Controls.Add(Me.CH_SHOW_PIC_USER, 3, 0)
|
TP_NOTIFY.Controls.Add(Me.CH_SHOW_PIC_USER, 3, 0)
|
||||||
TP_NOTIFY.Controls.Add(Me.CH_NOTIFY_SIMPLE, 1, 0)
|
TP_NOTIFY.Controls.Add(Me.CH_NOTIFY_SIMPLE, 1, 0)
|
||||||
TP_NOTIFY.Dock = System.Windows.Forms.DockStyle.Fill
|
TP_NOTIFY.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
TP_NOTIFY.Location = New System.Drawing.Point(1, 250)
|
TP_NOTIFY.Location = New System.Drawing.Point(1, 357)
|
||||||
TP_NOTIFY.Margin = New System.Windows.Forms.Padding(0)
|
TP_NOTIFY.Margin = New System.Windows.Forms.Padding(0)
|
||||||
TP_NOTIFY.Name = "TP_NOTIFY"
|
TP_NOTIFY.Name = "TP_NOTIFY"
|
||||||
TP_NOTIFY.RowCount = 1
|
TP_NOTIFY.RowCount = 1
|
||||||
@@ -286,24 +260,24 @@ Namespace DownloadObjects
|
|||||||
'
|
'
|
||||||
'TXT_TIMER
|
'TXT_TIMER
|
||||||
'
|
'
|
||||||
ActionButton7.BackgroundImage = CType(resources.GetObject("ActionButton7.BackgroundImage"), System.Drawing.Image)
|
ActionButton3.BackgroundImage = CType(resources.GetObject("ActionButton3.BackgroundImage"), System.Drawing.Image)
|
||||||
ActionButton7.Name = "Refresh"
|
ActionButton3.Name = "Refresh"
|
||||||
Me.TXT_TIMER.Buttons.Add(ActionButton7)
|
Me.TXT_TIMER.Buttons.Add(ActionButton3)
|
||||||
Me.TXT_TIMER.CaptionText = "Timer"
|
Me.TXT_TIMER.CaptionText = "Timer"
|
||||||
Me.TXT_TIMER.CaptionToolTipEnabled = True
|
Me.TXT_TIMER.CaptionToolTipEnabled = True
|
||||||
Me.TXT_TIMER.CaptionToolTipText = "Timer (in minutes)"
|
Me.TXT_TIMER.CaptionToolTipText = "Timer (in minutes)"
|
||||||
Me.TXT_TIMER.CaptionWidth = 50.0R
|
Me.TXT_TIMER.CaptionWidth = 50.0R
|
||||||
Me.TXT_TIMER.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.TXT_TIMER.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.TXT_TIMER.Location = New System.Drawing.Point(4, 308)
|
Me.TXT_TIMER.Location = New System.Drawing.Point(4, 415)
|
||||||
Me.TXT_TIMER.Name = "TXT_TIMER"
|
Me.TXT_TIMER.Name = "TXT_TIMER"
|
||||||
Me.TXT_TIMER.Size = New System.Drawing.Size(468, 22)
|
Me.TXT_TIMER.Size = New System.Drawing.Size(468, 22)
|
||||||
Me.TXT_TIMER.TabIndex = 4
|
Me.TXT_TIMER.TabIndex = 4
|
||||||
'
|
'
|
||||||
'NUM_DELAY
|
'NUM_DELAY
|
||||||
'
|
'
|
||||||
ActionButton8.BackgroundImage = CType(resources.GetObject("ActionButton8.BackgroundImage"), System.Drawing.Image)
|
ActionButton4.BackgroundImage = CType(resources.GetObject("ActionButton4.BackgroundImage"), System.Drawing.Image)
|
||||||
ActionButton8.Name = "Refresh"
|
ActionButton4.Name = "Refresh"
|
||||||
Me.NUM_DELAY.Buttons.Add(ActionButton8)
|
Me.NUM_DELAY.Buttons.Add(ActionButton4)
|
||||||
Me.NUM_DELAY.CaptionText = "Delay"
|
Me.NUM_DELAY.CaptionText = "Delay"
|
||||||
Me.NUM_DELAY.CaptionToolTipEnabled = True
|
Me.NUM_DELAY.CaptionToolTipEnabled = True
|
||||||
Me.NUM_DELAY.CaptionToolTipText = "Startup delay"
|
Me.NUM_DELAY.CaptionToolTipText = "Startup delay"
|
||||||
@@ -311,7 +285,7 @@ Namespace DownloadObjects
|
|||||||
Me.NUM_DELAY.ClearTextByButtonClear = False
|
Me.NUM_DELAY.ClearTextByButtonClear = False
|
||||||
Me.NUM_DELAY.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown
|
Me.NUM_DELAY.ControlMode = PersonalUtilities.Forms.Controls.TextBoxExtended.ControlModes.NumericUpDown
|
||||||
Me.NUM_DELAY.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.NUM_DELAY.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.NUM_DELAY.Location = New System.Drawing.Point(4, 337)
|
Me.NUM_DELAY.Location = New System.Drawing.Point(4, 444)
|
||||||
Me.NUM_DELAY.Name = "NUM_DELAY"
|
Me.NUM_DELAY.Name = "NUM_DELAY"
|
||||||
Me.NUM_DELAY.NumberMaximum = New Decimal(New Integer() {1440, 0, 0, 0})
|
Me.NUM_DELAY.NumberMaximum = New Decimal(New Integer() {1440, 0, 0, 0})
|
||||||
Me.NUM_DELAY.NumberUpDownAlign = System.Windows.Forms.LeftRightAlignment.Left
|
Me.NUM_DELAY.NumberUpDownAlign = System.Windows.Forms.LeftRightAlignment.Left
|
||||||
@@ -324,7 +298,7 @@ Namespace DownloadObjects
|
|||||||
Me.LBL_LAST_TIME_UP.AutoSize = True
|
Me.LBL_LAST_TIME_UP.AutoSize = True
|
||||||
Me.LBL_LAST_TIME_UP.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.LBL_LAST_TIME_UP.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.LBL_LAST_TIME_UP.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(204, Byte))
|
Me.LBL_LAST_TIME_UP.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, CType(204, Byte))
|
||||||
Me.LBL_LAST_TIME_UP.Location = New System.Drawing.Point(4, 363)
|
Me.LBL_LAST_TIME_UP.Location = New System.Drawing.Point(4, 470)
|
||||||
Me.LBL_LAST_TIME_UP.Name = "LBL_LAST_TIME_UP"
|
Me.LBL_LAST_TIME_UP.Name = "LBL_LAST_TIME_UP"
|
||||||
Me.LBL_LAST_TIME_UP.Size = New System.Drawing.Size(468, 25)
|
Me.LBL_LAST_TIME_UP.Size = New System.Drawing.Size(468, 25)
|
||||||
Me.LBL_LAST_TIME_UP.TabIndex = 6
|
Me.LBL_LAST_TIME_UP.TabIndex = 6
|
||||||
@@ -335,7 +309,7 @@ Namespace DownloadObjects
|
|||||||
'
|
'
|
||||||
Me.CH_MANUAL.AutoSize = True
|
Me.CH_MANUAL.AutoSize = True
|
||||||
Me.CH_MANUAL.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.CH_MANUAL.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.CH_MANUAL.Location = New System.Drawing.Point(4, 282)
|
Me.CH_MANUAL.Location = New System.Drawing.Point(4, 389)
|
||||||
Me.CH_MANUAL.Name = "CH_MANUAL"
|
Me.CH_MANUAL.Name = "CH_MANUAL"
|
||||||
Me.CH_MANUAL.Size = New System.Drawing.Size(468, 19)
|
Me.CH_MANUAL.Size = New System.Drawing.Size(468, 19)
|
||||||
Me.CH_MANUAL.TabIndex = 3
|
Me.CH_MANUAL.TabIndex = 3
|
||||||
@@ -348,15 +322,15 @@ Namespace DownloadObjects
|
|||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||||
Me.ClientSize = New System.Drawing.Size(476, 413)
|
Me.ClientSize = New System.Drawing.Size(476, 519)
|
||||||
Me.Controls.Add(CONTAINER_MAIN)
|
Me.Controls.Add(CONTAINER_MAIN)
|
||||||
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
|
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
|
||||||
Me.Icon = Global.SCrawler.My.Resources.Resources.ArrowDownIcon_Blue_24
|
Me.Icon = Global.SCrawler.My.Resources.Resources.ArrowDownIcon_Blue_24
|
||||||
Me.KeyPreview = True
|
Me.KeyPreview = True
|
||||||
Me.MaximizeBox = False
|
Me.MaximizeBox = False
|
||||||
Me.MaximumSize = New System.Drawing.Size(492, 452)
|
Me.MaximumSize = New System.Drawing.Size(492, 558)
|
||||||
Me.MinimizeBox = False
|
Me.MinimizeBox = False
|
||||||
Me.MinimumSize = New System.Drawing.Size(492, 452)
|
Me.MinimumSize = New System.Drawing.Size(492, 558)
|
||||||
Me.Name = "AutoDownloaderEditorForm"
|
Me.Name = "AutoDownloaderEditorForm"
|
||||||
Me.ShowInTaskbar = False
|
Me.ShowInTaskbar = False
|
||||||
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
||||||
@@ -378,8 +352,6 @@ Namespace DownloadObjects
|
|||||||
End Sub
|
End Sub
|
||||||
Private WithEvents DEF_GROUP As DownloadObjects.Groups.GroupDefaults
|
Private WithEvents DEF_GROUP As DownloadObjects.Groups.GroupDefaults
|
||||||
Private WithEvents TXT_GROUPS As PersonalUtilities.Forms.Controls.TextBoxExtended
|
Private WithEvents TXT_GROUPS As PersonalUtilities.Forms.Controls.TextBoxExtended
|
||||||
Private WithEvents OPT_ALL As RadioButton
|
|
||||||
Private WithEvents OPT_DEFAULT As RadioButton
|
|
||||||
Private WithEvents OPT_SPEC As RadioButton
|
Private WithEvents OPT_SPEC As RadioButton
|
||||||
Private WithEvents OPT_DISABLED As RadioButton
|
Private WithEvents OPT_DISABLED As RadioButton
|
||||||
Private WithEvents CH_NOTIFY As CheckBox
|
Private WithEvents CH_NOTIFY As CheckBox
|
||||||
|
|||||||
@@ -123,8 +123,14 @@
|
|||||||
<metadata name="TP_MODE.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="TP_MODE.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<metadata name="TT_MAIN.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
|
<value>False</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="TT_MAIN.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="ActionButton5.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="ActionButton1.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
|
||||||
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
|
DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
|
||||||
@@ -182,7 +188,7 @@
|
|||||||
AAAASUVORK5CYII=
|
AAAASUVORK5CYII=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ActionButton6.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="ActionButton2.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||||
xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go
|
xAAADsQBlSsOGwAAAIZJREFUOE+1j10KwCAMgz2b755xl/IsvnaL2K20UfbDAmEako+ZROSTafjE12Go
|
||||||
@@ -193,53 +199,41 @@
|
|||||||
<metadata name="TP_NOTIFY.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="TP_NOTIFY.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<data name="ActionButton7.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
|
|
||||||
JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE
|
|
||||||
QVQ4T2P4//8/QczOJyyqHpzfiE0OQwAZC8iqszAzs7CJ69o4BR768V/W2jcGXQ0KB4aFNS3dDQtnrbCb
|
|
||||||
ePCK48wTN1wXXXzge/jXf/clV55zC4hIIatF0cjIyMikElzc57z0wX+XHd/+2+//99/ywP//xlu//tdb
|
|
||||||
+eK/4Zp3/1WTOhYzARViNUAluKjTdf37/0ZTTn9TbdhwXblhwwW1/qOP1Ja9+K8w+95/6cm3/6v2Xvkv
|
|
||||||
qKjniGGAoIqRpW3/4e8S9uGdzFz82gwMDFxAzCxm4ZegtuLDf+VJ1/8rZM25IqLvnM/CximCYYCic1QN
|
|
||||||
v7x2JIwPwyrJ3XNUylddE9G2TWNmZOBDl4czmJiZMSRBmFdSyYyJgUEQmxwIYxWEYXZBCUls4sgYq6CA
|
|
||||||
prWNbtG8nXKeaVPR5XiVjSxEzf0yYXy4BBMLO6eQjoOXZvrkbbazrv53Xf/2v4CSbjBMXkhBl1/CMyNZ
|
|
||||||
qWnvGy5pNQ+YONwAfjXzAOupl/47LLr333L50/96q9/8l23YdES6cO5KuYqVW+R7Tj6SnfP0v4hryjyY
|
|
||||||
HhQDmFjYeHVKFp7WX/Xuv9Kq9/+Vd/z7r7rv/3+l7f//y676DEwDN/9L+BVvYkKLCTgDhNkkVUyVlr74
|
|
||||||
qbbz73/VOTc/qsy89kWx+9h7qbQpJwS1bbOAscGGrB6EUTggLOqf16C55ft/HlnNAFZOXgVWdi4FRgYG
|
|
||||||
VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg==
|
|
||||||
</value>
|
|
||||||
</data>
|
|
||||||
<data name="ActionButton8.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>
|
|
||||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
|
|
||||||
JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE
|
|
||||||
QVQ4T2P4//8/QczOJyyqHpzfiE0OQwAZC8iqszAzs7CJ69o4BR768V/W2jcGXQ0KB4aFNS3dDQtnrbCb
|
|
||||||
ePCK48wTN1wXXXzge/jXf/clV55zC4hIIatF0cjIyMikElzc57z0wX+XHd/+2+//99/ywP//xlu//tdb
|
|
||||||
+eK/4Zp3/1WTOhYzARViNUAluKjTdf37/0ZTTn9TbdhwXblhwwW1/qOP1Ja9+K8w+95/6cm3/6v2Xvkv
|
|
||||||
qKjniGGAoIqRpW3/4e8S9uGdzFz82gwMDFxAzCxm4ZegtuLDf+VJ1/8rZM25IqLvnM/CximCYYCic1QN
|
|
||||||
v7x2JIwPwyrJ3XNUylddE9G2TWNmZOBDl4czmJiZMSRBmFdSyYyJgUEQmxwIYxWEYXZBCUls4sgYq6CA
|
|
||||||
prWNbtG8nXKeaVPR5XiVjSxEzf0yYXy4BBMLO6eQjoOXZvrkbbazrv53Xf/2v4CSbjBMXkhBl1/CMyNZ
|
|
||||||
qWnvGy5pNQ+YONwAfjXzAOupl/47LLr333L50/96q9/8l23YdES6cO5KuYqVW+R7Tj6SnfP0v4hryjyY
|
|
||||||
HhQDmFjYeHVKFp7WX/Xuv9Kq9/+Vd/z7r7rv/3+l7f//y676DEwDN/9L+BVvYkKLCTgDhNkkVUyVlr74
|
|
||||||
qbbz73/VOTc/qsy89kWx+9h7qbQpJwS1bbOAscGGrB6EUTggLOqf16C55ft/HlnNAFZOXgVWdi4FRgYG
|
|
||||||
VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg==
|
|
||||||
</value>
|
|
||||||
</data>
|
|
||||||
<metadata name="TT_MAIN.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
|
||||||
<value>False</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="TT_MAIN.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>17, 17</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="TT_MAIN.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
|
||||||
<value>False</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="TT_MAIN.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>17, 17</value>
|
|
||||||
</metadata>
|
|
||||||
<data name="CH_NOTIFY_SIMPLE.ToolTip" xml:space="preserve">
|
<data name="CH_NOTIFY_SIMPLE.ToolTip" xml:space="preserve">
|
||||||
<value>Show a simple notification instead of a user notification.
|
<value>Show a simple notification instead of a user notification.
|
||||||
This means that if any user data has been downloaded with the plan, a simple notification will be shown with the number of users downloaded.
|
This means that if any user data has been downloaded with the plan, a simple notification will be shown with the number of users downloaded.
|
||||||
The 'Image' and 'User icon' parameters will be ignored.</value>
|
The 'Image' and 'User icon' parameters will be ignored.</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="ActionButton3.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
|
||||||
|
JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE
|
||||||
|
QVQ4T2P4//8/QczOJyyqHpzfiE0OQwAZC8iqszAzs7CJ69o4BR768V/W2jcGXQ0KB4aFNS3dDQtnrbCb
|
||||||
|
ePCK48wTN1wXXXzge/jXf/clV55zC4hIIatF0cjIyMikElzc57z0wX+XHd/+2+//99/ywP//xlu//tdb
|
||||||
|
+eK/4Zp3/1WTOhYzARViNUAluKjTdf37/0ZTTn9TbdhwXblhwwW1/qOP1Ja9+K8w+95/6cm3/6v2Xvkv
|
||||||
|
qKjniGGAoIqRpW3/4e8S9uGdzFz82gwMDFxAzCxm4ZegtuLDf+VJ1/8rZM25IqLvnM/CximCYYCic1QN
|
||||||
|
v7x2JIwPwyrJ3XNUylddE9G2TWNmZOBDl4czmJiZMSRBmFdSyYyJgUEQmxwIYxWEYXZBCUls4sgYq6CA
|
||||||
|
prWNbtG8nXKeaVPR5XiVjSxEzf0yYXy4BBMLO6eQjoOXZvrkbbazrv53Xf/2v4CSbjBMXkhBl1/CMyNZ
|
||||||
|
qWnvGy5pNQ+YONwAfjXzAOupl/47LLr333L50/96q9/8l23YdES6cO5KuYqVW+R7Tj6SnfP0v4hryjyY
|
||||||
|
HhQDmFjYeHVKFp7WX/Xuv9Kq9/+Vd/z7r7rv/3+l7f//y676DEwDN/9L+BVvYkKLCTgDhNkkVUyVlr74
|
||||||
|
qbbz73/VOTc/qsy89kWx+9h7qbQpJwS1bbOAscGGrB6EUTggLOqf16C55ft/HlnNAFZOXgVWdi4FRgYG
|
||||||
|
VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="ActionButton4.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
|
||||||
|
JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACOElE
|
||||||
|
QVQ4T2P4//8/QczOJyyqHpzfiE0OQwAZC8iqszAzs7CJ69o4BR768V/W2jcGXQ0KB4aFNS3dDQtnrbCb
|
||||||
|
ePCK48wTN1wXXXzge/jXf/clV55zC4hIIatF0cjIyMikElzc57z0wX+XHd/+2+//99/ywP//xlu//tdb
|
||||||
|
+eK/4Zp3/1WTOhYzARViNUAluKjTdf37/0ZTTn9TbdhwXblhwwW1/qOP1Ja9+K8w+95/6cm3/6v2Xvkv
|
||||||
|
qKjniGGAoIqRpW3/4e8S9uGdzFz82gwMDFxAzCxm4ZegtuLDf+VJ1/8rZM25IqLvnM/CximCYYCic1QN
|
||||||
|
v7x2JIwPwyrJ3XNUylddE9G2TWNmZOBDl4czmJiZMSRBmFdSyYyJgUEQmxwIYxWEYXZBCUls4sgYq6CA
|
||||||
|
prWNbtG8nXKeaVPR5XiVjSxEzf0yYXy4BBMLO6eQjoOXZvrkbbazrv53Xf/2v4CSbjBMXkhBl1/CMyNZ
|
||||||
|
qWnvGy5pNQ+YONwAfjXzAOupl/47LLr333L50/96q9/8l23YdES6cO5KuYqVW+R7Tj6SnfP0v4hryjyY
|
||||||
|
HhQDmFjYeHVKFp7WX/Xuv9Kq9/+Vd/z7r7rv/3+l7f//y676DEwDN/9L+BVvYkKLCTgDhNkkVUyVlr74
|
||||||
|
qbbz73/VOTc/qsy89kWx+9h7qbQpJwS1bbOAscGGrB6EUTggLOqf16C55ft/HlnNAFZOXgVWdi4FRgYG
|
||||||
|
VnR1MIwhwMTCyqEQ37qEmZVDFF0OE/9nAACtFF4Ey6OP+wAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
||||||
@@ -46,11 +46,14 @@ Namespace DownloadObjects
|
|||||||
With Plan
|
With Plan
|
||||||
Select Case .Mode
|
Select Case .Mode
|
||||||
Case DModes.None : OPT_DISABLED.Checked = True
|
Case DModes.None : OPT_DISABLED.Checked = True
|
||||||
Case DModes.All : OPT_ALL.Checked = True
|
|
||||||
Case DModes.Default : OPT_DEFAULT.Checked = True
|
|
||||||
Case DModes.Specified : OPT_SPEC.Checked = True
|
Case DModes.Specified : OPT_SPEC.Checked = True
|
||||||
Case DModes.Groups : OPT_GROUP.Checked = True
|
Case DModes.Groups : OPT_GROUP.Checked = True
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
|
TXT_GROUPS.CaptionWidth = Groups.GroupDefaults.CaptionWidthDefault
|
||||||
|
TXT_TIMER.CaptionWidth = Groups.GroupDefaults.CaptionWidthDefault
|
||||||
|
NUM_DELAY.CaptionWidth = Groups.GroupDefaults.CaptionWidthDefault
|
||||||
|
|
||||||
DEF_GROUP.Set(Plan)
|
DEF_GROUP.Set(Plan)
|
||||||
If MyGroups.Count > 0 Then TXT_GROUPS.Text = MyGroups.ListToString
|
If MyGroups.Count > 0 Then TXT_GROUPS.Text = MyGroups.ListToString
|
||||||
If Settings.Groups.Count = 0 Then TXT_GROUPS.Clear() : TXT_GROUPS.Enabled = False
|
If Settings.Groups.Count = 0 Then TXT_GROUPS.Clear() : TXT_GROUPS.Enabled = False
|
||||||
@@ -83,8 +86,6 @@ Namespace DownloadObjects
|
|||||||
With Plan
|
With Plan
|
||||||
Select Case True
|
Select Case True
|
||||||
Case OPT_DISABLED.Checked : .Mode = DModes.None
|
Case OPT_DISABLED.Checked : .Mode = DModes.None
|
||||||
Case OPT_ALL.Checked : .Mode = DModes.All
|
|
||||||
Case OPT_DEFAULT.Checked : .Mode = DModes.Default
|
|
||||||
Case OPT_SPEC.Checked : .Mode = DModes.Specified
|
Case OPT_SPEC.Checked : .Mode = DModes.Specified
|
||||||
Case OPT_GROUP.Checked : .Mode = DModes.Groups
|
Case OPT_GROUP.Checked : .Mode = DModes.Groups
|
||||||
End Select
|
End Select
|
||||||
@@ -107,17 +108,17 @@ Namespace DownloadObjects
|
|||||||
Private Sub TXT_GROUPS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Handles TXT_GROUPS.ActionOnButtonClick
|
Private Sub TXT_GROUPS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As EventArgs) Handles TXT_GROUPS.ActionOnButtonClick
|
||||||
Select Case Sender.DefaultButton
|
Select Case Sender.DefaultButton
|
||||||
Case ActionButton.DefaultButtons.Edit
|
Case ActionButton.DefaultButtons.Edit
|
||||||
Using f As New LabelsForm(MyGroups, Settings.Groups.Select(Function(g) g.Name)) With {.Text = "Groups", .Icon = My.Resources.GroupByIcon_16}
|
Using f As New LabelsForm(MyGroups, (From g As Groups.DownloadGroup In Settings.Groups Where Not g.IsViewFilter Select g.Name)) With {.Text = "Groups", .Icon = My.Resources.GroupByIcon_16}
|
||||||
f.ShowDialog()
|
f.ShowDialog()
|
||||||
If f.DialogResult = DialogResult.OK Then MyGroups.ListAddList(f.LabelsList, LAP.ClearBeforeAdd) : TXT_GROUPS.Text = MyGroups.ListToString
|
If f.DialogResult = DialogResult.OK Then MyGroups.ListAddList(f.LabelsList, LAP.ClearBeforeAdd) : TXT_GROUPS.Text = MyGroups.ListToString
|
||||||
End Using
|
End Using
|
||||||
Case ActionButton.DefaultButtons.Clear : MyGroups.Clear()
|
Case ActionButton.DefaultButtons.Clear : MyGroups.Clear()
|
||||||
End Select
|
End Select
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub ChangeEnabled() Handles OPT_DISABLED.CheckedChanged, OPT_ALL.CheckedChanged, OPT_DEFAULT.CheckedChanged,
|
Private Sub ChangeEnabled() Handles OPT_DISABLED.CheckedChanged,
|
||||||
OPT_SPEC.CheckedChanged, OPT_GROUP.CheckedChanged,
|
OPT_SPEC.CheckedChanged, OPT_GROUP.CheckedChanged,
|
||||||
CH_NOTIFY.CheckedChanged, CH_NOTIFY_SIMPLE.CheckedChanged
|
CH_NOTIFY.CheckedChanged, CH_NOTIFY_SIMPLE.CheckedChanged
|
||||||
DEF_GROUP.Enabled(OPT_ALL.Checked Or OPT_DEFAULT.Checked Or OPT_SPEC.Checked, OPT_ALL.Checked) = OPT_SPEC.Checked
|
DEF_GROUP.Enabled = OPT_SPEC.Checked
|
||||||
TXT_GROUPS.Enabled = OPT_GROUP.Checked
|
TXT_GROUPS.Enabled = OPT_GROUP.Checked
|
||||||
TXT_TIMER.Enabled = Not OPT_DISABLED.Checked
|
TXT_TIMER.Enabled = Not OPT_DISABLED.Checked
|
||||||
NUM_DELAY.Enabled = Not OPT_DISABLED.Checked
|
NUM_DELAY.Enabled = Not OPT_DISABLED.Checked
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ Namespace DownloadObjects
|
|||||||
End Enum
|
End Enum
|
||||||
Friend Property ViewMode As ViewModes
|
Friend Property ViewMode As ViewModes
|
||||||
Get
|
Get
|
||||||
Return IIf(MENU_VIEW_ALL.Checked, ViewModes.All, ViewModes.Session)
|
Return IIf(ControlInvokeFast(ToolbarTOP, MENU_VIEW_ALL, Function() MENU_VIEW_ALL.Checked, True, EDP.ReturnValue), ViewModes.All, ViewModes.Session)
|
||||||
End Get
|
End Get
|
||||||
Set(ByVal SMode As ViewModes)
|
Set(ByVal SMode As ViewModes)
|
||||||
Settings.InfoViewMode.Value = CInt(SMode)
|
Settings.InfoViewMode.Value = CInt(SMode)
|
||||||
@@ -57,7 +57,7 @@ Namespace DownloadObjects
|
|||||||
InitializeComponent()
|
InitializeComponent()
|
||||||
_UsersListSession = New List(Of IUserData)
|
_UsersListSession = New List(Of IUserData)
|
||||||
_UsersListAll = New List(Of IUserData)
|
_UsersListAll = New List(Of IUserData)
|
||||||
If Settings.InfoViewMode.Value = CInt(ViewModes.All) Then
|
If Settings.InfoViewMode.Value = ViewModes.All Then
|
||||||
MENU_VIEW_SESSION.Checked = False
|
MENU_VIEW_SESSION.Checked = False
|
||||||
MENU_VIEW_ALL.Checked = True
|
MENU_VIEW_ALL.Checked = True
|
||||||
Else
|
Else
|
||||||
@@ -66,8 +66,6 @@ Namespace DownloadObjects
|
|||||||
End If
|
End If
|
||||||
OPT_DEFAULT.Checked = Settings.InfoViewDefault
|
OPT_DEFAULT.Checked = Settings.InfoViewDefault
|
||||||
OPT_SUBSCRIPTIONS.Checked = Not Settings.InfoViewDefault
|
OPT_SUBSCRIPTIONS.Checked = Not Settings.InfoViewDefault
|
||||||
Settings.InfoViewMode.Value = ViewMode
|
|
||||||
RefillList()
|
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Form handlers"
|
#Region "Form handlers"
|
||||||
@@ -78,11 +76,11 @@ Namespace DownloadObjects
|
|||||||
MyView.Import()
|
MyView.Import()
|
||||||
MyView.SetFormSize()
|
MyView.SetFormSize()
|
||||||
End If
|
End If
|
||||||
BTT_CLEAR.Visible = ViewMode = ViewModes.Session
|
ControlInvokeFast(ToolbarTOP, BTT_CLEAR, Sub() BTT_CLEAR.Visible = ViewMode = ViewModes.Session, EDP.None)
|
||||||
RefillList()
|
|
||||||
Catch
|
Catch
|
||||||
Finally
|
Finally
|
||||||
Opened = True
|
Opened = True
|
||||||
|
RefillList()
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub DownloadedInfoForm_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
|
Private Sub DownloadedInfoForm_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
|
||||||
@@ -116,51 +114,50 @@ Namespace DownloadObjects
|
|||||||
End Function
|
End Function
|
||||||
End Class
|
End Class
|
||||||
Private Sub RefillList() Handles BTT_REFRESH.Click
|
Private Sub RefillList() Handles BTT_REFRESH.Click
|
||||||
Try
|
If Opened Then
|
||||||
Dim lClear As Action = Sub() LIST_DOWN.Items.Clear()
|
Try
|
||||||
If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(lClear) Else lClear.Invoke
|
ControlInvokeFast(LIST_DOWN, Sub() LIST_DOWN.Items.Clear())
|
||||||
If ViewMode = ViewModes.Session Then
|
If ViewMode = ViewModes.Session Then
|
||||||
With Downloader.Downloaded
|
With Downloader.Downloaded
|
||||||
If .Count > 0 Then
|
If .Count > 0 Then
|
||||||
With .Select(Function(u) Settings.GetUser(u, False)).Reverse
|
With .Select(Function(u) Settings.GetUser(u, False)).Reverse
|
||||||
If _UsersListSession.Count > 0 Then _UsersListSession.ListWithRemove(.Self, New ListAddParams With {.DisableDispose = True})
|
If _UsersListSession.Count > 0 Then _UsersListSession.ListWithRemove(.Self, New ListAddParams With {.DisableDispose = True})
|
||||||
If _UsersListSession.Count > 0 Then
|
If _UsersListSession.Count > 0 Then
|
||||||
_UsersListSession.InsertRange(0, .Self)
|
_UsersListSession.InsertRange(0, .Self)
|
||||||
Else
|
Else
|
||||||
_UsersListSession.AddRange(.Self)
|
_UsersListSession.AddRange(.Self)
|
||||||
End If
|
End If
|
||||||
End With
|
End With
|
||||||
End If
|
End If
|
||||||
End With
|
End With
|
||||||
Else
|
Else
|
||||||
_UsersListAll.ListAddList(Settings.GetUsers(Function(u) True), LAP.ClearBeforeAdd)
|
_UsersListAll.ListAddList(Settings.GetUsers(Function(u) True), LAP.ClearBeforeAdd)
|
||||||
If _UsersListAll.Count > 0 Then _UsersListAll.Sort(New UsersDateOrder)
|
If _UsersListAll.Count > 0 Then _UsersListAll.Sort(New UsersDateOrder)
|
||||||
End If
|
End If
|
||||||
Dim isDefault As Boolean = OPT_DEFAULT.Checked
|
Dim isDefault As Boolean = OPT_DEFAULT.Checked
|
||||||
If Current.Count > 0 Then Current.RemoveAll(Function(u) u.IsSubscription = isDefault)
|
If Current.Count > 0 Then Current.RemoveAll(Function(u) u Is Nothing OrElse u.IsSubscription = isDefault)
|
||||||
If Current.Count > 0 Then
|
If Current.Count > 0 Then
|
||||||
For Each user As IUserData In Current
|
ControlInvokeFast(LIST_DOWN,
|
||||||
If LIST_DOWN.InvokeRequired Then
|
Sub()
|
||||||
LIST_DOWN.Invoke(Sub() LIST_DOWN.Items.Add(user.DownloadedInformation))
|
For Each user As IUserData In Current
|
||||||
Else
|
LIST_DOWN.Items.Add(user.DownloadedInformation)
|
||||||
LIST_DOWN.Items.Add(user.DownloadedInformation)
|
Next
|
||||||
End If
|
If _LatestSelected.ValueBetween(0, LIST_DOWN.Items.Count - 1) Then
|
||||||
Next
|
LIST_DOWN.SelectedIndex = _LatestSelected
|
||||||
If _LatestSelected.ValueBetween(0, LIST_DOWN.Items.Count - 1) Then
|
Else
|
||||||
Dim aSel As Action = Sub() LIST_DOWN.SelectedIndex = _LatestSelected
|
_LatestSelected = -1
|
||||||
If LIST_DOWN.InvokeRequired Then LIST_DOWN.Invoke(aSel) Else aSel.Invoke
|
End If
|
||||||
|
End Sub)
|
||||||
Else
|
Else
|
||||||
_LatestSelected = -1
|
_LatestSelected = -1
|
||||||
End If
|
End If
|
||||||
Else
|
Catch ies As InvalidOperationException
|
||||||
_LatestSelected = -1
|
Catch ex As Exception
|
||||||
End If
|
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[DownloadedInfoForm.RefillList]")
|
||||||
Catch ies As InvalidOperationException
|
Finally
|
||||||
Catch ex As Exception
|
UpdateNavigationButtons(Nothing)
|
||||||
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[DownloadedInfoForm.RefillList]")
|
End Try
|
||||||
Finally
|
End If
|
||||||
UpdateNavigationButtons(Nothing)
|
|
||||||
End Try
|
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Toolbar controls"
|
#Region "Toolbar controls"
|
||||||
@@ -251,7 +248,7 @@ Namespace DownloadObjects
|
|||||||
#End Region
|
#End Region
|
||||||
#Region "Downloader handlers"
|
#Region "Downloader handlers"
|
||||||
Friend Sub Downloader_DownloadCountChange()
|
Friend Sub Downloader_DownloadCountChange()
|
||||||
If ViewMode = ViewModes.Session Then RefillList()
|
If Opened AndAlso ViewMode = ViewModes.Session Then RefillList()
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -1449,6 +1449,9 @@ Namespace DownloadObjects
|
|||||||
If Not b Then ScrollSuspended = False
|
If Not b Then ScrollSuspended = False
|
||||||
End Sub)
|
End Sub)
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Sub DownloadFeedForm_Deactivate(sender As Object, e As EventArgs) Handles Me.Deactivate
|
||||||
|
If Not LatestScrollValueDisabled Then LatestScrollValue = ControlInvokeFast(TP_DATA, Function() TP_DATA.VerticalScroll.Value, 0, EDP.ReturnValue)
|
||||||
|
End Sub
|
||||||
Private Sub TP_DATA_Paint(sender As Object, e As PaintEventArgs) Handles TP_DATA.Paint
|
Private Sub TP_DATA_Paint(sender As Object, e As PaintEventArgs) Handles TP_DATA.Paint
|
||||||
If Not MyDefs.Initializing And Not ScrollSuspended And FeedEndless Then
|
If Not MyDefs.Initializing And Not ScrollSuspended And FeedEndless Then
|
||||||
If Not LatestScrollValueDisabled Then LatestScrollValue = ControlInvokeFast(TP_DATA, Function() TP_DATA.VerticalScroll.Value, 0)
|
If Not LatestScrollValueDisabled Then LatestScrollValue = ControlInvokeFast(TP_DATA, Function() TP_DATA.VerticalScroll.Value, 0)
|
||||||
|
|||||||
@@ -10,22 +10,44 @@ Imports SCrawler.API.Base
|
|||||||
Imports PersonalUtilities.Functions.XML
|
Imports PersonalUtilities.Functions.XML
|
||||||
Imports PersonalUtilities.Functions.XML.Base
|
Imports PersonalUtilities.Functions.XML.Base
|
||||||
Namespace DownloadObjects.Groups
|
Namespace DownloadObjects.Groups
|
||||||
Friend Class DownloadGroup : Inherits GroupParameters : Implements IIndexable, IEContainerProvider
|
Friend Class DownloadGroup : Inherits GroupParameters : Implements IIndexable, IEContainerProvider, IComparable(Of DownloadGroup)
|
||||||
#Region "Events"
|
#Region "Events"
|
||||||
Friend Delegate Sub GroupEventHandler(ByVal Sender As DownloadGroup)
|
Friend Delegate Sub GroupEventHandler(ByVal Sender As DownloadGroup)
|
||||||
Friend Event Deleted As GroupEventHandler
|
Friend Event Deleted As GroupEventHandler
|
||||||
Friend Event Updated As GroupEventHandler
|
Friend Event Updated As GroupEventHandler
|
||||||
#End Region
|
#End Region
|
||||||
|
#Region "XML names"
|
||||||
|
Private Const Name_FilterViewMode As String = "FilterViewMode"
|
||||||
|
Private Const Name_FilterGroupUsers As String = "FilterGroupUsers"
|
||||||
|
Private Const Name_FilterShowGroupsInsteadLabels As String = "FilterShowGroupsInsteadLabels"
|
||||||
|
#End Region
|
||||||
#Region "Declarations"
|
#Region "Declarations"
|
||||||
#Region "Controls"
|
#Region "Controls"
|
||||||
Private WithEvents BTT_EDIT As ToolStripMenuItem
|
Private WithEvents BTT_EDIT As ToolStripMenuItem
|
||||||
Private WithEvents BTT_DELETE As ToolStripMenuItem
|
Private WithEvents BTT_DELETE As ToolStripMenuItem
|
||||||
Private WithEvents BTT_DOWNLOAD As ToolStripMenuItem
|
Private WithEvents BTT_DOWNLOAD As ToolStripKeyMenuItem
|
||||||
Private WithEvents BTT_DOWNLOAD_FULL As ToolStripMenuItem
|
Private WithEvents BTT_CLONE_ADD As ToolStripMenuItem
|
||||||
|
Private WithEvents BTT_CLONE_TEMP As ToolStripKeyMenuItem
|
||||||
Private ReadOnly SEP_1 As ToolStripSeparator
|
Private ReadOnly SEP_1 As ToolStripSeparator
|
||||||
Private WithEvents BTT_MENU As ToolStripMenuItem
|
Private ReadOnly SEP_2 As ToolStripSeparator
|
||||||
|
Private WithEvents BTT_MENU As ToolStripKeyMenuItem
|
||||||
|
#End Region
|
||||||
|
#Region "Filter declarations"
|
||||||
|
Friend Property FilterViewMode As ViewModes = ViewModes.IconLarge
|
||||||
|
Friend Property FilterGroupUsers As Boolean = True
|
||||||
|
Friend Property FilterShowGroupsInsteadLabels As Boolean = True
|
||||||
#End Region
|
#End Region
|
||||||
Private File As SFile = Nothing
|
Private File As SFile = Nothing
|
||||||
|
Friend Overrides Property Name As String
|
||||||
|
Get
|
||||||
|
Return MyBase.Name
|
||||||
|
End Get
|
||||||
|
Set(ByVal NewName As String)
|
||||||
|
Dim b As Boolean = Not MyBase.Name.IsEmptyString AndAlso Not MyBase.Name = NewName
|
||||||
|
MyBase.Name = NewName
|
||||||
|
If b Then RaiseEvent Updated(Me)
|
||||||
|
End Set
|
||||||
|
End Property
|
||||||
Friend Property NameBefore As String = String.Empty
|
Friend Property NameBefore As String = String.Empty
|
||||||
Private _Key As String = String.Empty
|
Private _Key As String = String.Empty
|
||||||
Friend ReadOnly Property Key As String
|
Friend ReadOnly Property Key As String
|
||||||
@@ -49,55 +71,114 @@ Namespace DownloadObjects.Groups
|
|||||||
DirectCast(Obj, DownloadGroup).Index = _Index
|
DirectCast(Obj, DownloadGroup).Index = _Index
|
||||||
Return Obj
|
Return Obj
|
||||||
End Function
|
End Function
|
||||||
|
Friend Shared ReadOnly Property GroupImage As Bitmap
|
||||||
|
Get
|
||||||
|
Return My.Resources.GroupByIcon_16.ToBitmap
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Initializers"
|
#Region "Initializers"
|
||||||
Friend ReadOnly NeedToSave As Boolean = False
|
Friend ReadOnly NeedToSave As Boolean = False
|
||||||
Friend Sub New()
|
Friend Sub New()
|
||||||
BTT_MENU = New ToolStripMenuItem With {
|
Me.New(True)
|
||||||
|
End Sub
|
||||||
|
Friend Sub New(ByVal InitButtons As Boolean)
|
||||||
|
If InitButtons Then
|
||||||
|
BTT_MENU = New ToolStripKeyMenuItem With {
|
||||||
.ToolTipText = "Download users of this group",
|
.ToolTipText = "Download users of this group",
|
||||||
.AutoToolTip = True,
|
.AutoToolTip = True,
|
||||||
.Image = My.Resources.GroupByIcon_16.ToBitmap
|
.Image = GroupImage
|
||||||
}
|
}
|
||||||
BTT_DELETE = New ToolStripMenuItem With {
|
BTT_DELETE = New ToolStripMenuItem With {
|
||||||
.Image = PersonalUtilities.My.Resources.DeletePic_Red_24,
|
.Image = PersonalUtilities.My.Resources.DeletePic_Red_24,
|
||||||
.BackColor = MyColor.DeleteBack,
|
.BackColor = MyColor.DeleteBack,
|
||||||
.ForeColor = MyColor.DeleteFore,
|
.ForeColor = MyColor.DeleteFore,
|
||||||
.Text = "Delete",
|
.Text = "Delete",
|
||||||
.ToolTipText = String.Empty,
|
.ToolTipText = String.Empty,
|
||||||
.AutoToolTip = False
|
.AutoToolTip = False
|
||||||
}
|
}
|
||||||
BTT_EDIT = New ToolStripMenuItem With {
|
BTT_EDIT = New ToolStripMenuItem With {
|
||||||
.Image = PersonalUtilities.My.Resources.PencilPic_16,
|
.Image = PersonalUtilities.My.Resources.PencilPic_16,
|
||||||
.BackColor = MyColor.EditBack,
|
.BackColor = MyColor.EditBack,
|
||||||
.ForeColor = MyColor.EditFore,
|
.ForeColor = MyColor.EditFore,
|
||||||
.Text = "Edit",
|
.Text = "Edit",
|
||||||
.ToolTipText = String.Empty,
|
.ToolTipText = String.Empty,
|
||||||
.AutoToolTip = False
|
.AutoToolTip = False
|
||||||
}
|
}
|
||||||
SEP_1 = New ToolStripSeparator
|
BTT_CLONE_ADD = New ToolStripMenuItem With {
|
||||||
BTT_DOWNLOAD = New ToolStripMenuItem With {
|
.Image = PersonalUtilities.My.Resources.PlusPic_Green_24,
|
||||||
.Image = My.Resources.StartPic_Green_16,
|
.BackColor = MyColor.OkBack,
|
||||||
.Text = "Download",
|
.ForeColor = MyColor.OkFore,
|
||||||
.ToolTipText = "Download users of this group (respect the 'Ready for download' parameter)",
|
.Text = "Clone and add",
|
||||||
.AutoToolTip = True
|
.ToolTipText = "Clone the group, change parameters and add this group as a new one",
|
||||||
}
|
.AutoToolTip = True
|
||||||
BTT_DOWNLOAD_FULL = New ToolStripMenuItem With {
|
}
|
||||||
.Image = My.Resources.StartPic_Green_16,
|
BTT_CLONE_TEMP = New ToolStripKeyMenuItem With {
|
||||||
.Text = "Download FULL",
|
.Image = PersonalUtilities.My.Resources.PlusPic_Green_24,
|
||||||
.ToolTipText = "Download users of this group (ignore the 'Ready for download' parameter)",
|
.BackColor = MyColor.OkBack,
|
||||||
.AutoToolTip = True
|
.ForeColor = MyColor.OkFore,
|
||||||
}
|
.Text = "Clone and download",
|
||||||
BTT_MENU.DropDownItems.AddRange({BTT_EDIT, BTT_DELETE, SEP_1, BTT_DOWNLOAD, BTT_DOWNLOAD_FULL})
|
.ToolTipText = "Clone the group, change parameters and download filtered users (this group will not be added as a new one)",
|
||||||
|
.AutoToolTip = True
|
||||||
|
}
|
||||||
|
SEP_1 = New ToolStripSeparator
|
||||||
|
SEP_2 = New ToolStripSeparator
|
||||||
|
BTT_DOWNLOAD = New ToolStripKeyMenuItem With {
|
||||||
|
.Image = My.Resources.StartPic_Green_16,
|
||||||
|
.Text = "Download",
|
||||||
|
.ToolTipText = "Download users of this group (respect the 'Ready for download' parameter)",
|
||||||
|
.AutoToolTip = True
|
||||||
|
}
|
||||||
|
BTT_MENU.DropDownItems.AddRange({BTT_EDIT, BTT_DELETE, SEP_1, BTT_CLONE_ADD, BTT_CLONE_TEMP, SEP_2, BTT_DOWNLOAD})
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Friend Sub New(ByVal e As EContainer)
|
Friend Sub New(ByVal e As EContainer)
|
||||||
Me.New
|
Me.New(Not e.Value(Name_IsViewFilter).FromXML(Of Boolean)(False))
|
||||||
Import(e)
|
Import(e)
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
|
#Region "Import/Export"
|
||||||
|
Protected Overrides Sub Import(ByVal e As EContainer)
|
||||||
|
MyBase.Import(e)
|
||||||
|
If IsViewFilter Then
|
||||||
|
FilterViewMode = e.Value(Name_FilterViewMode).FromXML(Of Integer)(ViewModes.IconLarge)
|
||||||
|
FilterGroupUsers = e.Value(Name_FilterGroupUsers).FromXML(Of Boolean)(True)
|
||||||
|
FilterShowGroupsInsteadLabels = e.Value(Name_FilterShowGroupsInsteadLabels).FromXML(Of Boolean)(True)
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
Protected Overrides Function Export(ByVal e As EContainer) As EContainer
|
||||||
|
MyBase.Export(e)
|
||||||
|
e.AddRange({New EContainer(Name_FilterViewMode, CInt(FilterViewMode)),
|
||||||
|
New EContainer(Name_FilterGroupUsers, FilterGroupUsers.BoolToInteger),
|
||||||
|
New EContainer(Name_FilterShowGroupsInsteadLabels, FilterShowGroupsInsteadLabels.BoolToInteger)})
|
||||||
|
Return e
|
||||||
|
End Function
|
||||||
|
#End Region
|
||||||
|
#Region "Copy"
|
||||||
|
Friend Overloads Overrides Function Copy() As Object
|
||||||
|
Return (New DownloadGroup).Copy(Me)
|
||||||
|
End Function
|
||||||
|
Friend Overloads Overrides Function Copy(ByVal Source As Object) As Object
|
||||||
|
MyBase.Copy(Source)
|
||||||
|
If TypeOf Source Is DownloadGroup Then
|
||||||
|
With DirectCast(Source, DownloadGroup)
|
||||||
|
If .IsViewFilter Then
|
||||||
|
FilterViewMode = .FilterViewMode
|
||||||
|
FilterGroupUsers = .FilterGroupUsers
|
||||||
|
FilterShowGroupsInsteadLabels = .FilterShowGroupsInsteadLabels
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
End If
|
||||||
|
Return Me
|
||||||
|
End Function
|
||||||
|
#End Region
|
||||||
#Region "ToString"
|
#Region "ToString"
|
||||||
Public Overrides Function ToString() As String
|
Public Overrides Function ToString() As String
|
||||||
Return $"{IIf(Index.ValueBetween(0, 8), $"#{Index + 1}: ", String.Empty)}{Name}"
|
Return $"{IIf(Index.ValueBetween(0, 8), $"#{Index + 1}: ", String.Empty)}{Name}"
|
||||||
End Function
|
End Function
|
||||||
|
Friend Overrides Function ToStringViewFilters() As String
|
||||||
|
Return $"{IIf(IsViewFilter, "View filter", "Group")} '{Name}'"
|
||||||
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
#Region "GetControl"
|
#Region "GetControl"
|
||||||
Private _ControlSent As Boolean = False
|
Private _ControlSent As Boolean = False
|
||||||
@@ -111,9 +192,39 @@ Namespace DownloadObjects.Groups
|
|||||||
End Function
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Buttons"
|
#Region "Buttons"
|
||||||
Private Sub BTT_MENU_Click(sender As Object, e As EventArgs) Handles BTT_MENU.Click
|
Private Sub BTT_MENU_Click(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_MENU.KeyClick
|
||||||
DownloadUsers()
|
Try
|
||||||
|
With BTT_MENU
|
||||||
|
.HideDropDown()
|
||||||
|
Dim obj As Object = .Owner
|
||||||
|
Dim r% = 0
|
||||||
|
Do While Not obj Is Nothing And r < 5 : obj = TryHide(obj) : r += 1 : Loop
|
||||||
|
End With
|
||||||
|
Catch
|
||||||
|
End Try
|
||||||
|
ProcessDownloadUsers(e.IncludeInTheFeed)
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Function TryHide(ByVal Sender As Object) As Object
|
||||||
|
Dim retObj As Object = Nothing
|
||||||
|
Try
|
||||||
|
If Not Sender Is Nothing Then
|
||||||
|
If TypeOf Sender Is ToolStripDropDownMenu Then
|
||||||
|
With DirectCast(Sender, ToolStripDropDownMenu)
|
||||||
|
retObj = .OwnerItem
|
||||||
|
.Hide()
|
||||||
|
End With
|
||||||
|
ElseIf TypeOf Sender Is ToolStripMenuItem Then
|
||||||
|
With DirectCast(Sender, ToolStripMenuItem)
|
||||||
|
retObj = .Owner
|
||||||
|
.HideDropDown()
|
||||||
|
End With
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Catch
|
||||||
|
End Try
|
||||||
|
If Not retObj Is Nothing AndAlso Not (TypeOf retObj Is ToolStripMenuItem Or TypeOf retObj Is ToolStripDropDownMenu) Then retObj = Nothing
|
||||||
|
Return retObj
|
||||||
|
End Function
|
||||||
Private Sub BTT_EDIT_Click(sender As Object, e As EventArgs) Handles BTT_EDIT.Click
|
Private Sub BTT_EDIT_Click(sender As Object, e As EventArgs) Handles BTT_EDIT.Click
|
||||||
Using f As New GroupEditorForm(Me)
|
Using f As New GroupEditorForm(Me)
|
||||||
f.ShowDialog()
|
f.ShowDialog()
|
||||||
@@ -121,67 +232,98 @@ Namespace DownloadObjects.Groups
|
|||||||
End Using
|
End Using
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_DELETE_Click(sender As Object, e As EventArgs) Handles BTT_DELETE.Click
|
Private Sub BTT_DELETE_Click(sender As Object, e As EventArgs) Handles BTT_DELETE.Click
|
||||||
If MsgBoxE({$"Are you sure you want to delete the [{Name}] group?", "Deleting a group"}, vbExclamation + vbYesNo) = vbYes Then
|
Delete()
|
||||||
|
End Sub
|
||||||
|
Friend Function Delete(Optional ByVal Silent As Boolean = False) As Boolean
|
||||||
|
Dim msgTitle$ = $"Deleting a {IIf(IsViewFilter, "filter", "group")}"
|
||||||
|
If Silent OrElse MsgBoxE({$"Are you sure you want to delete the '{Name}' {IIf(IsViewFilter, "filter", "group")}?", msgTitle}, vbExclamation + vbYesNo) = vbYes Then
|
||||||
|
If Not Settings.Automation Is Nothing AndAlso Settings.Automation.Count > 0 Then
|
||||||
|
Dim aIncl As New List(Of String)
|
||||||
|
For Each plan As AutoDownloader In Settings.Automation
|
||||||
|
If plan.Mode = AutoDownloader.Modes.Groups AndAlso plan.Groups.Count > 0 AndAlso plan.Groups.Contains(Name) Then aIncl.Add(plan.Name)
|
||||||
|
Next
|
||||||
|
If aIncl.Count > 0 Then
|
||||||
|
MsgBoxE({$"The '{Name}' group cannot be deleted because it is included in the following scheduler plans:{vbCr}{vbCr}" &
|
||||||
|
aIncl.ListToString(vbCr), msgTitle}, vbCritical)
|
||||||
|
aIncl.Clear()
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
RaiseEvent Deleted(Me)
|
RaiseEvent Deleted(Me)
|
||||||
MsgBoxE({$"Group [{Name}] deleted", "Deleting a group"})
|
If Not Silent Then MsgBoxE({$"{IIf(IsViewFilter, "Filter", "Group")} '{Name}' deleted", msgTitle})
|
||||||
|
Return True
|
||||||
End If
|
End If
|
||||||
|
Return False
|
||||||
|
End Function
|
||||||
|
Private Sub BTT_CLONE_ADD_Click(sender As Object, e As EventArgs) Handles BTT_CLONE_ADD.Click
|
||||||
|
Settings.Groups.CloneAndAdd(Me)
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_DOWNLOAD_Click(sender As Object, e As EventArgs) Handles BTT_DOWNLOAD.Click
|
Private Sub BTT_CLONE_TEMP_Click(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_CLONE_TEMP.KeyClick
|
||||||
DownloadUsers()
|
Using f As New GroupEditorForm(New DownloadGroup(False).Copy(Me)) With {.IsTemporaryGroup = True}
|
||||||
|
f.ShowDialog()
|
||||||
|
If f.DialogResult = DialogResult.OK AndAlso Not f.MyGroup Is Nothing Then
|
||||||
|
f.MyGroup.Name = String.Empty
|
||||||
|
f.MyGroup.ProcessDownloadUsers(e.IncludeInTheFeed)
|
||||||
|
End If
|
||||||
|
If Not f.MyGroup Is Nothing Then f.MyGroup.Dispose()
|
||||||
|
End Using
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_DOWNLOAD_FULL_Click(sender As Object, e As EventArgs) Handles BTT_DOWNLOAD_FULL.Click
|
Private Sub BTT_DOWNLOAD_Click(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWNLOAD.KeyClick
|
||||||
DownloadUsers(, False)
|
ProcessDownloadUsers(e.IncludeInTheFeed)
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Get users"
|
#Region "Get users"
|
||||||
Friend Overloads Function GetUsers() As IEnumerable(Of IUserData)
|
Friend Overloads Function GetUsers() As IEnumerable(Of IUserData)
|
||||||
Return GetUsers(Me)
|
Return GetUsers(Me)
|
||||||
End Function
|
End Function
|
||||||
Friend Overloads Shared Function GetUsers(ByVal Instance As IGroup, Optional ByVal UseReadyOption As Boolean = True,
|
Friend Overloads Shared Function GetUsers(ByVal Instance As IGroup) As IEnumerable(Of IUserData)
|
||||||
Optional ByVal IncludeNonExistentUsers As Boolean = False,
|
|
||||||
Optional ByVal OnlyNonExistentUsers As Boolean = False) As IEnumerable(Of IUserData)
|
|
||||||
Try
|
Try
|
||||||
If Settings.Users.Count > 0 Then
|
If Settings.Users.Count > 0 Then
|
||||||
With Instance
|
With Instance
|
||||||
|
Dim downDate As Date? = Nothing
|
||||||
|
If .DaysNumber > 0 Then
|
||||||
|
With Now.AddDays(- .DaysNumber) : downDate = New Date(.Year, .Month, .Day, 0, 0, 0) : End With
|
||||||
|
End If
|
||||||
Dim CheckUserExists As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
Dim CheckUserExists As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
||||||
If user.Exists Then
|
If Not user.Exists Then
|
||||||
If IncludeNonExistentUsers And OnlyNonExistentUsers Then
|
Return .UserDeleted
|
||||||
Return False
|
ElseIf user.Suspended Then
|
||||||
Else
|
Return .UserSuspended
|
||||||
Return True
|
|
||||||
End If
|
|
||||||
ElseIf IncludeNonExistentUsers Then
|
|
||||||
Return True
|
|
||||||
Else
|
Else
|
||||||
Return False
|
Return .UserExists
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
Dim CheckParams As Predicate(Of IUserData) = Function(user) _
|
Dim CheckUserCategory As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
||||||
(.Temporary = CheckState.Indeterminate Or user.Temporary = CBool(.Temporary)) And
|
If user.Favorite Then
|
||||||
(.Favorite = CheckState.Indeterminate Or (user.Favorite = CBool(.Favorite))) And
|
Return .Favorite
|
||||||
(Not UseReadyOption Or .ReadyForDownloadIgnore Or user.ReadyForDownload = .ReadyForDownload) And CheckUserExists.Invoke(user)
|
ElseIf user.Temporary Then
|
||||||
Dim CheckSubscription As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
Return .Temporary
|
||||||
If .Subscriptions Then
|
|
||||||
If .SubscriptionsOnly Then
|
|
||||||
Return user.IsSubscription = True
|
|
||||||
Else
|
|
||||||
Return True
|
|
||||||
End If
|
|
||||||
Else
|
Else
|
||||||
Return user.IsSubscription = False
|
Return .Regular
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
|
Dim CheckParams As Predicate(Of IUserData) = Function(user) _
|
||||||
|
CheckUserCategory.Invoke(user) And
|
||||||
|
(.ReadyForDownloadIgnore Or user.ReadyForDownload = .ReadyForDownload) And CheckUserExists.Invoke(user)
|
||||||
|
Dim CheckSubscription As Predicate(Of IUserData) = Function(user) (.DownloadSubscriptions And user.IsSubscription) Or
|
||||||
|
(.DownloadUsers And Not user.IsSubscription)
|
||||||
Dim CheckLabelsExcluded As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
Dim CheckLabelsExcluded As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
||||||
If .LabelsExcluded.Count = 0 Then
|
If Not .LabelsExcludedIgnore Then
|
||||||
Return True
|
If .LabelsExcluded.Count = 0 Then
|
||||||
ElseIf user.Labels.Count = 0 Then
|
Return True
|
||||||
Return True
|
ElseIf user.Labels.Count = 0 Then
|
||||||
|
Return True
|
||||||
|
Else
|
||||||
|
Return Not user.Labels.ListContains(.LabelsExcluded)
|
||||||
|
End If
|
||||||
Else
|
Else
|
||||||
Return Not user.Labels.ListContains(.LabelsExcluded)
|
Return True
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
Dim CheckLabels As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
Dim CheckLabels As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
||||||
If .Labels.Count = 0 Then
|
If .LabelsNo Then
|
||||||
|
Return user.Labels.Count = 0
|
||||||
|
ElseIf .Labels.Count = 0 Then
|
||||||
Return CheckLabelsExcluded.Invoke(user)
|
Return CheckLabelsExcluded.Invoke(user)
|
||||||
ElseIf user.Labels.Count = 0 Then
|
ElseIf user.Labels.Count = 0 Then
|
||||||
Return False
|
Return False
|
||||||
@@ -189,19 +331,42 @@ Namespace DownloadObjects.Groups
|
|||||||
Return user.Labels.ListContains(.Labels) And CheckLabelsExcluded.Invoke(user)
|
Return user.Labels.ListContains(.Labels) And CheckLabelsExcluded.Invoke(user)
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
|
Dim CheckDays As Predicate(Of IUserData) = Function(ByVal user As IUserData) As Boolean
|
||||||
|
If downDate.HasValue Then
|
||||||
|
Dim ld As Date? = DirectCast(user, UserDataBase).LastUpdated
|
||||||
|
If .DaysIsDownloaded Then
|
||||||
|
Return ld.HasValue AndAlso ld.Value >= downDate.Value
|
||||||
|
Else
|
||||||
|
Return Not ld.HasValue OrElse ld.Value < downDate.Value
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
End Function
|
||||||
|
Dim CheckDateRange As Predicate(Of IUserData) =
|
||||||
|
Function(ByVal user As IUserData) As Boolean
|
||||||
|
If Not .DateMode = ShowingDates.Off Then
|
||||||
|
Dim ld As Date? = DirectCast(user, UserDataBase).LastUpdated
|
||||||
|
If ld.HasValue Then
|
||||||
|
Dim df As Date = If(.DateFrom, Date.MinValue.Date)
|
||||||
|
Dim dt As Date = If(.DateTo, Date.MaxValue.Date)
|
||||||
|
Return ld.Value.ValueBetween(df, dt) = (.DateMode = ShowingDates.In)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Return True
|
||||||
|
End Function
|
||||||
Dim CheckSites As Predicate(Of IUserData) = Function(user) _
|
Dim CheckSites As Predicate(Of IUserData) = Function(user) _
|
||||||
(.Sites.Count = 0 OrElse .Sites.Contains(user.Site)) AndAlso
|
(.Sites.Count = 0 OrElse .Sites.Contains(user.Site)) AndAlso
|
||||||
(.SitesExcluded.Count = 0 OrElse Not .SitesExcluded.Contains(user.Site))
|
(.SitesExcluded.Count = 0 OrElse Not .SitesExcluded.Contains(user.Site))
|
||||||
Dim users As IEnumerable(Of IUserData) =
|
Dim users As IEnumerable(Of IUserData) =
|
||||||
Settings.GetUsers(Function(user) CheckLabels.Invoke(user) AndAlso CheckSites.Invoke(user) AndAlso
|
Settings.GetUsers(Function(user) CheckLabels.Invoke(user) AndAlso CheckSites.Invoke(user) AndAlso
|
||||||
CheckParams.Invoke(user) AndAlso CheckSubscription.Invoke(user))
|
CheckParams.Invoke(user) AndAlso CheckSubscription.Invoke(user) AndAlso
|
||||||
If .UsersCount = 0 Or Not users.ListExists Then
|
CheckDays.Invoke(user) AndAlso CheckDateRange.Invoke(user))
|
||||||
Return users
|
If .UsersCount <> 0 And users.ListExists Then
|
||||||
Else
|
|
||||||
users = users.ListTake(If(.UsersCount > 0, -1, -2), Math.Abs(.UsersCount))
|
users = users.ListTake(If(.UsersCount > 0, -1, -2), Math.Abs(.UsersCount))
|
||||||
If .UsersCount < 0 Then users = users.ListReverse
|
If .UsersCount < 0 Then users = users.ListReverse
|
||||||
Return users
|
|
||||||
End If
|
End If
|
||||||
|
Return users
|
||||||
End With
|
End With
|
||||||
Else
|
Else
|
||||||
Return Nothing
|
Return Nothing
|
||||||
@@ -212,16 +377,14 @@ Namespace DownloadObjects.Groups
|
|||||||
End Function
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Download users"
|
#Region "Download users"
|
||||||
Friend Sub DownloadUsers(Optional ByVal IncludeInTheFeed As Boolean = True, Optional ByVal UseReadyOption As Boolean = True,
|
Friend Sub ProcessDownloadUsers(Optional ByVal IncludeInTheFeed As Boolean = True, Optional ByVal ShowNoUsersMessage As Boolean = True)
|
||||||
Optional ByVal IncludeNonExistentUsers As Boolean = False,
|
|
||||||
Optional ByVal OnlyNonExistentUsers As Boolean = False)
|
|
||||||
Try
|
Try
|
||||||
If Settings.Users.Count > 0 Then
|
If Settings.Users.Count > 0 Then
|
||||||
Dim u As IEnumerable(Of IUserData) = GetUsers(Me, UseReadyOption, IncludeNonExistentUsers, OnlyNonExistentUsers)
|
Dim u As IEnumerable(Of IUserData) = GetUsers(Me)
|
||||||
If u.ListExists Then
|
If u.ListExists Then
|
||||||
Downloader.AddRange(u, IncludeInTheFeed)
|
Downloader.AddRange(u, IncludeInTheFeed)
|
||||||
Else
|
ElseIf ShowNoUsersMessage Then
|
||||||
MsgBoxE({$"No users found for group [{Name}].", "No users found"}, vbExclamation)
|
MsgBoxE({$"No users found{If(Not Name.IsEmptyString, $" in group '{Name}'", String.Empty)}!", "No users found"}, vbExclamation)
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -249,15 +412,37 @@ Namespace DownloadObjects.Groups
|
|||||||
Return Export(New EContainer("Group"))
|
Return Export(New EContainer("Group"))
|
||||||
End Function
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
|
#Region "IComparable Support"
|
||||||
|
Private Function CompareTo(ByVal Other As DownloadGroup) As Integer Implements IComparable(Of DownloadGroup).CompareTo
|
||||||
|
If IsViewFilter Then
|
||||||
|
Return IIf(Other.IsViewFilter, Name.CompareTo(Other.Name), 1)
|
||||||
|
ElseIf Other.IsViewFilter Then
|
||||||
|
Return -1
|
||||||
|
Else
|
||||||
|
Return Index.CompareTo(Other.Index)
|
||||||
|
End If
|
||||||
|
End Function
|
||||||
|
#End Region
|
||||||
#Region "IDisposable Support"
|
#Region "IDisposable Support"
|
||||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||||
If Not disposedValue And disposing Then
|
If Not disposedValue Then
|
||||||
BTT_DELETE.Dispose()
|
If disposing Then
|
||||||
BTT_EDIT.Dispose()
|
BTT_EDIT.DisposeIfReady
|
||||||
BTT_MENU.Dispose()
|
BTT_DELETE.DisposeIfReady
|
||||||
SEP_1.Dispose()
|
BTT_DOWNLOAD.DisposeIfReady
|
||||||
BTT_DOWNLOAD.Dispose()
|
BTT_CLONE_ADD.DisposeIfReady
|
||||||
BTT_DOWNLOAD_FULL.Dispose()
|
BTT_CLONE_TEMP.DisposeIfReady
|
||||||
|
SEP_1.DisposeIfReady
|
||||||
|
SEP_2.DisposeIfReady
|
||||||
|
If Not BTT_MENU Is Nothing Then BTT_MENU.DropDownItems.Clear()
|
||||||
|
BTT_MENU.DisposeIfReady
|
||||||
|
End If
|
||||||
|
BTT_EDIT = Nothing
|
||||||
|
BTT_DELETE = Nothing
|
||||||
|
BTT_DOWNLOAD = Nothing
|
||||||
|
BTT_CLONE_ADD = Nothing
|
||||||
|
BTT_CLONE_TEMP = Nothing
|
||||||
|
BTT_MENU = Nothing
|
||||||
End If
|
End If
|
||||||
MyBase.Dispose(disposing)
|
MyBase.Dispose(disposing)
|
||||||
End Sub
|
End Sub
|
||||||
|
|||||||
@@ -10,11 +10,16 @@ Imports PersonalUtilities.Tools
|
|||||||
Imports PersonalUtilities.Functions.XML
|
Imports PersonalUtilities.Functions.XML
|
||||||
Namespace DownloadObjects.Groups
|
Namespace DownloadObjects.Groups
|
||||||
Friend Class DownloadGroupCollection : Implements IEnumerable(Of DownloadGroup), IMyEnumerator(Of DownloadGroup)
|
Friend Class DownloadGroupCollection : Implements IEnumerable(Of DownloadGroup), IMyEnumerator(Of DownloadGroup)
|
||||||
|
#Region "Events"
|
||||||
Friend Event Deleted As DownloadGroup.GroupEventHandler
|
Friend Event Deleted As DownloadGroup.GroupEventHandler
|
||||||
Friend Event Added As DownloadGroup.GroupEventHandler
|
Friend Event Added As DownloadGroup.GroupEventHandler
|
||||||
Friend Event Updated As DownloadGroup.GroupEventHandler
|
Friend Event Updated As DownloadGroup.GroupEventHandler
|
||||||
|
#End Region
|
||||||
|
#Region "Declarations"
|
||||||
Private ReadOnly GroupsList As List(Of DownloadGroup)
|
Private ReadOnly GroupsList As List(Of DownloadGroup)
|
||||||
Private ReadOnly GroupFile As SFile = "Settings\Groups.xml"
|
Private ReadOnly GroupFile As SFile = "Settings\Groups.xml"
|
||||||
|
#End Region
|
||||||
|
#Region "Initializer"
|
||||||
Friend Sub New()
|
Friend Sub New()
|
||||||
GroupsList = New List(Of DownloadGroup)
|
GroupsList = New List(Of DownloadGroup)
|
||||||
If GroupFile.Exists Then
|
If GroupFile.Exists Then
|
||||||
@@ -34,6 +39,8 @@ Namespace DownloadObjects.Groups
|
|||||||
End If
|
End If
|
||||||
GroupsList.ListReindex
|
GroupsList.ListReindex
|
||||||
End Sub
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Base properties"
|
||||||
Default Friend ReadOnly Property Item(ByVal Index As Integer) As DownloadGroup Implements IMyEnumerator(Of DownloadGroup).MyEnumeratorObject
|
Default Friend ReadOnly Property Item(ByVal Index As Integer) As DownloadGroup Implements IMyEnumerator(Of DownloadGroup).MyEnumeratorObject
|
||||||
Get
|
Get
|
||||||
Return GroupsList(Index)
|
Return GroupsList(Index)
|
||||||
@@ -44,19 +51,43 @@ Namespace DownloadObjects.Groups
|
|||||||
Return GroupsList.Count
|
Return GroupsList.Count
|
||||||
End Get
|
End Get
|
||||||
End Property
|
End Property
|
||||||
|
#End Region
|
||||||
|
#Region "Update, BeginUpdate, EndUpdate"
|
||||||
Friend Sub Update()
|
Friend Sub Update()
|
||||||
If Count > 0 Then
|
If Not _UpdateMode Then
|
||||||
Using x As New XmlFile With {.Name = "Groups", .AllowSameNames = True} : x.AddRange(GroupsList) : x.Save(GroupFile) : End Using
|
If Count > 0 Then
|
||||||
Else
|
Using x As New XmlFile With {.Name = "Groups", .AllowSameNames = True} : x.AddRange(GroupsList) : x.Save(GroupFile) : End Using
|
||||||
GroupFile.Delete()
|
Else
|
||||||
|
GroupFile.Delete()
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
Private _UpdateMode As Boolean = False
|
||||||
|
Friend Sub BeginUpdate()
|
||||||
|
_UpdateMode = True
|
||||||
|
End Sub
|
||||||
|
Friend Sub EndUpdate()
|
||||||
|
_UpdateMode = False
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Sort, Reindex"
|
||||||
|
Friend Sub Sort()
|
||||||
|
GroupsList.Sort()
|
||||||
|
End Sub
|
||||||
|
Friend Sub Reindex()
|
||||||
|
GroupsList.ListReindex
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Group handlers"
|
||||||
Private _GroupAddInProgress As Boolean = False
|
Private _GroupAddInProgress As Boolean = False
|
||||||
Private Sub OnGroupUpdated(ByVal Sender As DownloadGroup)
|
Private Sub OnGroupUpdated(ByVal Sender As DownloadGroup)
|
||||||
If Not _GroupAddInProgress Then Update() : RaiseEvent Updated(Sender)
|
If Not _GroupAddInProgress Then
|
||||||
|
Update()
|
||||||
|
If Not Sender.IsViewFilter Then RaiseEvent Updated(Sender)
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub OnGroupDeleted(ByVal Sender As DownloadGroup)
|
Private Sub OnGroupDeleted(ByVal Sender As DownloadGroup)
|
||||||
RaiseEvent Deleted(Sender)
|
If Not Sender.IsViewFilter Then RaiseEvent Deleted(Sender)
|
||||||
Dim i% = GroupsList.FindIndex(Function(g) g.Key = Sender.Key)
|
Dim i% = GroupsList.FindIndex(Function(g) g.Key = Sender.Key)
|
||||||
If i >= 0 Then
|
If i >= 0 Then
|
||||||
GroupsList(i).Dispose()
|
GroupsList(i).Dispose()
|
||||||
@@ -65,38 +96,77 @@ Namespace DownloadObjects.Groups
|
|||||||
Update()
|
Update()
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Friend Sub Add()
|
#End Region
|
||||||
Using f As New GroupEditorForm(Nothing)
|
#Region "Add"
|
||||||
|
Friend Sub CloneAndAdd(ByVal Group As DownloadGroup)
|
||||||
|
Using f As New GroupEditorForm(Group.Copy) With {.IsClone = True}
|
||||||
f.ShowDialog()
|
f.ShowDialog()
|
||||||
If f.DialogResult = DialogResult.OK Then
|
If f.DialogResult = DialogResult.OK Then Add(f.MyGroup)
|
||||||
_GroupAddInProgress = True
|
|
||||||
GroupsList.Add(f.MyGroup)
|
|
||||||
With GroupsList.Last
|
|
||||||
AddHandler .Deleted, AddressOf OnGroupDeleted
|
|
||||||
AddHandler .Updated, AddressOf OnGroupUpdated
|
|
||||||
End With
|
|
||||||
GroupsList.ListReindex
|
|
||||||
RaiseEvent Added(GroupsList.Last)
|
|
||||||
Update()
|
|
||||||
_GroupAddInProgress = False
|
|
||||||
End If
|
|
||||||
End Using
|
End Using
|
||||||
End Sub
|
End Sub
|
||||||
Friend Function DownloadGroupIfExists(ByVal Index As Integer) As Boolean
|
Friend Overloads Function Add() As Integer
|
||||||
If Index.ValueBetween(0, Count - 1) Then Item(Index).DownloadUsers() : Return True Else Return False
|
Using f As New GroupEditorForm(Nothing)
|
||||||
|
f.ShowDialog()
|
||||||
|
If f.DialogResult = DialogResult.OK Then Add(f.MyGroup) : Return IndexOf(f.MyGroup.Name)
|
||||||
|
End Using
|
||||||
|
Return -1
|
||||||
End Function
|
End Function
|
||||||
Friend Function IndexOf(ByVal Name As String) As Integer
|
Friend Overloads Sub Add(ByVal Item As DownloadGroup, Optional ByVal IsFilter As Boolean = False, Optional ByVal ReplaceExisting As Boolean = False)
|
||||||
|
Dim i% = IndexOf(Item.Name, IsFilter)
|
||||||
|
Dim exists As Boolean = i >= 0
|
||||||
|
_GroupAddInProgress = True
|
||||||
|
|
||||||
|
If exists Then
|
||||||
|
If ReplaceExisting Then
|
||||||
|
GroupsList(i).Dispose()
|
||||||
|
GroupsList(i) = Item
|
||||||
|
Else
|
||||||
|
i = -1
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
GroupsList.Add(Item)
|
||||||
|
i = Count - 1
|
||||||
|
End If
|
||||||
|
|
||||||
|
If i >= 0 Then
|
||||||
|
With GroupsList(i)
|
||||||
|
AddHandler .Deleted, AddressOf OnGroupDeleted
|
||||||
|
AddHandler .Updated, AddressOf OnGroupUpdated
|
||||||
|
If Not exists Then
|
||||||
|
GroupsList.ListReindex
|
||||||
|
GroupsList.Sort()
|
||||||
|
GroupsList.ListReindex
|
||||||
|
If Not Item.IsViewFilter And Not _UpdateMode Then RaiseEvent Added(.Self)
|
||||||
|
Else
|
||||||
|
If Not Item.IsViewFilter And Not _UpdateMode Then RaiseEvent Updated(.Self)
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
Update()
|
||||||
|
End If
|
||||||
|
_GroupAddInProgress = False
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "DownloadGroupIfExists"
|
||||||
|
Friend Function DownloadGroupIfExists(ByVal Index As Integer) As Boolean
|
||||||
|
If Index.ValueBetween(0, Count - 1) Then Item(Index).ProcessDownloadUsers() : Return True Else Return False
|
||||||
|
End Function
|
||||||
|
#End Region
|
||||||
|
#Region "IndexOf"
|
||||||
|
Friend Function IndexOf(ByVal Name As String, Optional ByVal IsFilter As Boolean = False) As Integer
|
||||||
If Count > 0 Then
|
If Count > 0 Then
|
||||||
Return GroupsList.FindIndex(Function(g) g.Name = Name)
|
Return GroupsList.FindIndex(Function(g) g.Name = Name And g.IsViewFilter = IsFilter)
|
||||||
Else
|
Else
|
||||||
Return -1
|
Return -1
|
||||||
End If
|
End If
|
||||||
End Function
|
End Function
|
||||||
|
#End Region
|
||||||
|
#Region "IEnumerable Support"
|
||||||
Private Function GetEnumerator() As IEnumerator(Of DownloadGroup) Implements IEnumerable(Of DownloadGroup).GetEnumerator
|
Private Function GetEnumerator() As IEnumerator(Of DownloadGroup) Implements IEnumerable(Of DownloadGroup).GetEnumerator
|
||||||
Return New MyEnumerator(Of DownloadGroup)(Me)
|
Return New MyEnumerator(Of DownloadGroup)(Me)
|
||||||
End Function
|
End Function
|
||||||
Private Function IEnumerable_GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
|
Private Function IEnumerable_GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
|
||||||
Return GetEnumerator()
|
Return GetEnumerator()
|
||||||
End Function
|
End Function
|
||||||
|
#End Region
|
||||||
End Class
|
End Class
|
||||||
End Namespace
|
End Namespace
|
||||||
@@ -6,33 +6,64 @@
|
|||||||
'
|
'
|
||||||
' This program is distributed in the hope that it will be useful,
|
' This program is distributed in the hope that it will be useful,
|
||||||
' but WITHOUT ANY WARRANTY
|
' but WITHOUT ANY WARRANTY
|
||||||
|
Imports PersonalUtilities.Forms
|
||||||
Imports PersonalUtilities.Forms.Controls
|
Imports PersonalUtilities.Forms.Controls
|
||||||
Imports PersonalUtilities.Forms.Controls.Base
|
Imports PersonalUtilities.Forms.Controls.Base
|
||||||
Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons
|
Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons
|
||||||
Namespace DownloadObjects.Groups
|
Namespace DownloadObjects.Groups
|
||||||
Public Class GroupDefaults : Inherits TableLayoutPanel
|
Public Class GroupDefaults : Inherits TableLayoutPanel
|
||||||
Private ReadOnly TP_1 As TableLayoutPanel
|
#Region "Constants"
|
||||||
Private ReadOnly TP_2 As TableLayoutPanel
|
Friend Const CaptionWidthDefault As Integer = 55
|
||||||
Private ReadOnly TP_3 As TableLayoutPanel
|
#End Region
|
||||||
|
#Region "Declarations"
|
||||||
|
Private ReadOnly TP_1 As TableLayoutPanel 'CH_REGULAR, CH_TEMPORARY, CH_FAV
|
||||||
|
Private ReadOnly TP_2 As TableLayoutPanel 'CH_READY_FOR_DOWN, CH_READY_FOR_DOWN_IGNORE
|
||||||
|
Private ReadOnly TP_3 As TableLayoutPanel 'CH_USERS, CH_SUBSCRIPTIONS
|
||||||
|
Private ReadOnly TP_4 As TableLayoutPanel 'CH_USER_EXISTS, CH_USER_SUSPENDED, CH_USER_DELETED
|
||||||
|
Private ReadOnly TP_5 As TableLayoutPanel 'CH_LABELS_NO, CH_LABELS_EXCLUDED_IGNORE
|
||||||
|
Private ReadOnly TP_6 As TableLayoutPanel 'CH_DATE_IN_RANGE, DT_FROM, DT_TO
|
||||||
|
|
||||||
|
Private ReadOnly CH_REGULAR As CheckBox
|
||||||
Private ReadOnly CH_TEMPORARY As CheckBox
|
Private ReadOnly CH_TEMPORARY As CheckBox
|
||||||
Private ReadOnly CH_FAV As CheckBox
|
Private ReadOnly CH_FAV As CheckBox
|
||||||
|
|
||||||
Private ReadOnly CH_READY_FOR_DOWN As CheckBox
|
Private ReadOnly CH_READY_FOR_DOWN As CheckBox
|
||||||
Private ReadOnly CH_READY_FOR_DOWN_IGNORE As CheckBox
|
Private ReadOnly CH_READY_FOR_DOWN_IGNORE As CheckBox
|
||||||
|
|
||||||
|
Private ReadOnly CH_USERS As CheckBox
|
||||||
Private ReadOnly CH_SUBSCRIPTIONS As CheckBox
|
Private ReadOnly CH_SUBSCRIPTIONS As CheckBox
|
||||||
Private ReadOnly CH_SUBSCRIPTIONS_ONLY As CheckBox
|
|
||||||
|
Private ReadOnly CH_USER_EXISTS As CheckBox
|
||||||
|
Private ReadOnly CH_USER_SUSPENDED As CheckBox
|
||||||
|
Private ReadOnly CH_USER_DELETED As CheckBox
|
||||||
|
|
||||||
|
Private ReadOnly CH_LABELS_NO As CheckBox
|
||||||
|
Private ReadOnly CH_LABELS_EXCLUDED_IGNORE As CheckBox
|
||||||
|
|
||||||
|
Private ReadOnly DT_FROM As TextBoxExtended
|
||||||
|
Private ReadOnly DT_TO As TextBoxExtended
|
||||||
|
Private ReadOnly CH_DATE_IN_RANGE As CheckBox
|
||||||
|
|
||||||
Private WithEvents NUM_USERS_COUNT As TextBoxExtended
|
Private WithEvents NUM_USERS_COUNT As TextBoxExtended
|
||||||
|
Private WithEvents NUM_DAYS As TextBoxExtended
|
||||||
|
|
||||||
Private WithEvents TXT_LABELS As TextBoxExtended
|
Private WithEvents TXT_LABELS As TextBoxExtended
|
||||||
Private WithEvents TXT_SITES As TextBoxExtended
|
Private WithEvents TXT_SITES As TextBoxExtended
|
||||||
Friend WithEvents TXT_NAME As TextBoxExtended
|
Friend WithEvents TXT_NAME As TextBoxExtended
|
||||||
|
|
||||||
Private ReadOnly Labels As List(Of String)
|
Private ReadOnly Labels As List(Of String)
|
||||||
Private ReadOnly LabelsExcluded As List(Of String)
|
Private ReadOnly LabelsExcluded As List(Of String)
|
||||||
Private ReadOnly Sites As List(Of String)
|
Private ReadOnly Sites As List(Of String)
|
||||||
Private ReadOnly SitesExcluded As List(Of String)
|
Private ReadOnly SitesExcluded As List(Of String)
|
||||||
|
Private ReadOnly TT_MAIN As ToolTip
|
||||||
|
#End Region
|
||||||
|
#Region "Initializer"
|
||||||
Public Sub New()
|
Public Sub New()
|
||||||
Labels = New List(Of String)
|
Labels = New List(Of String)
|
||||||
LabelsExcluded = New List(Of String)
|
LabelsExcluded = New List(Of String)
|
||||||
Sites = New List(Of String)
|
Sites = New List(Of String)
|
||||||
SitesExcluded = New List(Of String)
|
SitesExcluded = New List(Of String)
|
||||||
|
TT_MAIN = New ToolTip
|
||||||
|
|
||||||
InitTextBox(TXT_LABELS, "Labels", {New ActionButton(ADB.Edit) With {.ToolTipText = "Edit selected labels"},
|
InitTextBox(TXT_LABELS, "Labels", {New ActionButton(ADB.Edit) With {.ToolTipText = "Edit selected labels"},
|
||||||
New ActionButton(ADB.Delete) With {.ToolTipText = "Edit excluded labels"}, ADB.Clear})
|
New ActionButton(ADB.Delete) With {.ToolTipText = "Edit excluded labels"}, ADB.Clear})
|
||||||
@@ -44,19 +75,94 @@ Namespace DownloadObjects.Groups
|
|||||||
|
|
||||||
InitTextBox(TXT_NAME, "Name", {ADB.Clear})
|
InitTextBox(TXT_NAME, "Name", {ADB.Clear})
|
||||||
|
|
||||||
CH_TEMPORARY = New CheckBox With {.Text = "Temporary", .Name = "CH_TEMPORARY", .ThreeState = True, .CheckState = CheckState.Indeterminate, .Dock = DockStyle.Fill}
|
CH_REGULAR = New CheckBox With {.Text = "Regular", .Name = "CH_REGULAR", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
CH_FAV = New CheckBox With {.Text = "Favorite", .Name = "CH_FAV", .ThreeState = True, .CheckState = CheckState.Indeterminate, .Dock = DockStyle.Fill}
|
TT_MAIN.SetToolTip(CH_REGULAR, "Users not marked as temporary or favorite")
|
||||||
CH_READY_FOR_DOWN = New CheckBox With {.Text = "Ready for download", .Name = "CH_READY_FOR_DOWN", .Checked = True, .Dock = DockStyle.Fill}
|
CH_TEMPORARY = New CheckBox With {.Text = "Temporary", .Name = "CH_TEMPORARY", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
CH_READY_FOR_DOWN_IGNORE = New CheckBox With {.Text = "Ignore ready for download", .Name = "CH_READY_FOR_DOWN_IGNORE", .Checked = False, .Dock = DockStyle.Fill}
|
TT_MAIN.SetToolTip(CH_TEMPORARY, "Users marked as temporary")
|
||||||
|
CH_FAV = New CheckBox With {.Text = "Favorite", .Name = "CH_FAV", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_FAV, "Users marked as favorite")
|
||||||
TP_1 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
TP_1 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
FillTP(TP_1, CH_TEMPORARY, CH_FAV)
|
FillTP(TP_1, CH_REGULAR, CH_TEMPORARY, CH_FAV)
|
||||||
|
|
||||||
|
CH_READY_FOR_DOWN = New CheckBox With {.Text = "Ready for download", .Name = "CH_READY_FOR_DOWN", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_READY_FOR_DOWN, "Users marked as 'Ready for download'")
|
||||||
|
CH_READY_FOR_DOWN_IGNORE = New CheckBox With {.Text = "Ignore ready for download", .Name = "CH_READY_FOR_DOWN_IGNORE", .Checked = False, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_READY_FOR_DOWN_IGNORE, "Ignore the 'Ready for download' mark")
|
||||||
TP_2 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
TP_2 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
FillTP(TP_2, CH_READY_FOR_DOWN, CH_READY_FOR_DOWN_IGNORE)
|
FillTP(TP_2, CH_READY_FOR_DOWN, CH_READY_FOR_DOWN_IGNORE)
|
||||||
|
|
||||||
|
CH_USERS = New CheckBox With {.Text = "Users", .Name = "CH_USERS", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_USERS, "Download/filter users")
|
||||||
CH_SUBSCRIPTIONS = New CheckBox With {.Text = "Subscriptions", .Name = "CH_SUBSCRIPTIONS", .Checked = False, .Dock = DockStyle.Fill}
|
CH_SUBSCRIPTIONS = New CheckBox With {.Text = "Subscriptions", .Name = "CH_SUBSCRIPTIONS", .Checked = False, .Dock = DockStyle.Fill}
|
||||||
CH_SUBSCRIPTIONS_ONLY = New CheckBox With {.Text = "Subscriptions only", .Name = "CH_SUBSCRIPTIONS_ONLY", .Checked = False, .Dock = DockStyle.Fill}
|
TT_MAIN.SetToolTip(CH_SUBSCRIPTIONS, "Download/filter subscriptions")
|
||||||
TP_3 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
TP_3 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
FillTP(TP_3, CH_SUBSCRIPTIONS, CH_SUBSCRIPTIONS_ONLY)
|
FillTP(TP_3, CH_USERS, CH_SUBSCRIPTIONS)
|
||||||
|
|
||||||
|
CH_USER_EXISTS = New CheckBox With {.Text = "User exists", .Name = "CH_USER_EXISTS", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_USER_EXISTS, "Include users not marked as 'Suspended' or 'Deleted'")
|
||||||
|
CH_USER_SUSPENDED = New CheckBox With {.Text = "User suspended", .Name = "CH_USER_SUSPENDED", .Checked = True, .Dock = DockStyle.Fill,
|
||||||
|
.BackColor = MyColor.EditBack, .ForeColor = MyColor.EditFore}
|
||||||
|
TT_MAIN.SetToolTip(CH_USER_SUSPENDED, "Include users marked as 'Suspended'")
|
||||||
|
CH_USER_DELETED = New CheckBox With {.Text = "User deleted", .Name = "CH_USER_DELETED", .Checked = False, .Dock = DockStyle.Fill,
|
||||||
|
.BackColor = MyColor.DeleteBack, .ForeColor = MyColor.DeleteFore}
|
||||||
|
TT_MAIN.SetToolTip(CH_USER_DELETED, "Include users marked as 'Deleted'")
|
||||||
|
TP_4 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
|
FillTP(TP_4, CH_USER_EXISTS, CH_USER_SUSPENDED, CH_USER_DELETED)
|
||||||
|
|
||||||
|
CH_LABELS_NO = New CheckBox With {.Text = "No labels", .Name = "CH_LABELS_NO", .Checked = False, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_LABELS_NO, "Only users that have no labels at all." & vbCr & "If checked, the list of labels will be ignored!")
|
||||||
|
CH_LABELS_EXCLUDED_IGNORE = New CheckBox With {.Text = "Ignore excluded labels", .Name = "CH_LABELS_EXCLUDED_IGNORE", .Checked = False, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_LABELS_EXCLUDED_IGNORE, "Ignore excluded labels if they exist")
|
||||||
|
TP_5 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
|
FillTP(TP_5, CH_LABELS_NO, CH_LABELS_EXCLUDED_IGNORE)
|
||||||
|
|
||||||
|
Dim initDtTxt As Action(Of TextBoxExtended, String, String) =
|
||||||
|
Sub(ByVal cnt As TextBoxExtended, ByVal captionText As String, ByVal toolTip As String)
|
||||||
|
With cnt
|
||||||
|
.BeginInit()
|
||||||
|
.CaptionText = captionText
|
||||||
|
.CaptionToolTipText = toolTip
|
||||||
|
.CaptionToolTipEnabled = True
|
||||||
|
.CaptionWidth = 30
|
||||||
|
.ControlMode = TextBoxExtended.ControlModes.DateTimePicker
|
||||||
|
.DateShowCheckBox = True
|
||||||
|
.DateMin = DateTimePicker.MinimumDateTime
|
||||||
|
.DateMax = DateTimePicker.MaximumDateTime
|
||||||
|
.DateChecked = False
|
||||||
|
.DateShowUpDown = False
|
||||||
|
.CaptionMargin = New PaddingE(.CaptionMargin).Add(, 1)
|
||||||
|
.Dock = DockStyle.Fill
|
||||||
|
.Value = Now.Date
|
||||||
|
.EndInit()
|
||||||
|
End With
|
||||||
|
End Sub
|
||||||
|
DT_FROM = New TextBoxExtended
|
||||||
|
initDtTxt.Invoke(DT_FROM, "From", "Minimum date")
|
||||||
|
DT_TO = New TextBoxExtended
|
||||||
|
initDtTxt.Invoke(DT_TO, "To", "Maximum date")
|
||||||
|
CH_DATE_IN_RANGE = New CheckBox With {.Text = "In range", .Name = "CH_DATE_IN_RANGE", .Checked = True, .Dock = DockStyle.Fill}
|
||||||
|
TT_MAIN.SetToolTip(CH_DATE_IN_RANGE, "Last download date range." & vbCr &
|
||||||
|
"If checked, filter users whose last download date is within the selected date range." & vbCr &
|
||||||
|
"If unchecked, filter users whose last download date is outside the selected date range." & vbCr &
|
||||||
|
"If no dates are checked, this option will be ignored.")
|
||||||
|
CH_DATE_IN_RANGE.Margin = New PaddingE(CH_DATE_IN_RANGE.Margin).Add(, 2,, -2)
|
||||||
|
TP_6 = New TableLayoutPanel With {.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single, .Margin = New Padding(0), .Dock = DockStyle.Fill}
|
||||||
|
|
||||||
|
With TP_6
|
||||||
|
.ColumnCount = 3
|
||||||
|
With .ColumnStyles
|
||||||
|
.Add(New ColumnStyle(SizeType.Absolute, 80))
|
||||||
|
.Add(New ColumnStyle(SizeType.Percent, 50))
|
||||||
|
.Add(New ColumnStyle(SizeType.Percent, 50))
|
||||||
|
End With
|
||||||
|
.RowCount = 1
|
||||||
|
.RowStyles.Add(New RowStyle(SizeType.Percent, 100))
|
||||||
|
With .Controls
|
||||||
|
.Add(CH_DATE_IN_RANGE, 0, 0)
|
||||||
|
.Add(DT_FROM, 1, 0)
|
||||||
|
.Add(DT_TO, 2, 0)
|
||||||
|
End With
|
||||||
|
End With
|
||||||
|
|
||||||
NUM_USERS_COUNT = New TextBoxExtended
|
NUM_USERS_COUNT = New TextBoxExtended
|
||||||
With NUM_USERS_COUNT
|
With NUM_USERS_COUNT
|
||||||
@@ -67,7 +173,7 @@ Namespace DownloadObjects.Groups
|
|||||||
"Number greater than 0 = number of users from the beginning to the end of the list." & vbCr &
|
"Number greater than 0 = number of users from the beginning to the end of the list." & vbCr &
|
||||||
"Number less than 0 = number of users from end to the beginning of the list."
|
"Number less than 0 = number of users from end to the beginning of the list."
|
||||||
.CaptionToolTipEnabled = True
|
.CaptionToolTipEnabled = True
|
||||||
.CaptionWidth = 50
|
.CaptionWidth = CaptionWidthDefault
|
||||||
.ControlMode = TextBoxExtended.ControlModes.NumericUpDown
|
.ControlMode = TextBoxExtended.ControlModes.NumericUpDown
|
||||||
.NumberMinimum = Integer.MinValue
|
.NumberMinimum = Integer.MinValue
|
||||||
.NumberMaximum = Integer.MaxValue
|
.NumberMaximum = Integer.MaxValue
|
||||||
@@ -78,6 +184,30 @@ Namespace DownloadObjects.Groups
|
|||||||
.Value = 0
|
.Value = 0
|
||||||
.EndInit()
|
.EndInit()
|
||||||
End With
|
End With
|
||||||
|
NUM_DAYS = New TextBoxExtended
|
||||||
|
With NUM_DAYS
|
||||||
|
.BeginInit()
|
||||||
|
.CaptionText = "Down"
|
||||||
|
.CaptionToolTipText = "Filter users who have been (not)downloaded in the last x days." & vbCr &
|
||||||
|
"-1 to disable" & vbCr &
|
||||||
|
"Checked = downloaded in the last x days" & vbCr &
|
||||||
|
"Unchecked = NOT downloaded in the last x days"
|
||||||
|
.CaptionToolTipEnabled = True
|
||||||
|
.CaptionMode = ICaptionControl.Modes.CheckBox
|
||||||
|
.CaptionCheckAlign = ContentAlignment.MiddleLeft
|
||||||
|
.CaptionMargin = New PaddingE(.CaptionMargin).Add(1)
|
||||||
|
.CaptionWidth = CaptionWidthDefault
|
||||||
|
.ChangeControlsEnableOnCheckedChange = False
|
||||||
|
.ControlMode = TextBoxExtended.ControlModes.NumericUpDown
|
||||||
|
.NumberMinimum = -1
|
||||||
|
.NumberMaximum = Integer.MaxValue
|
||||||
|
.NumberUpDownAlign = LeftRightAlignment.Left
|
||||||
|
.Dock = DockStyle.Fill
|
||||||
|
.Buttons.Add(New ActionButton(ADB.Clear) With {.ToolTipText = "Reset value"})
|
||||||
|
.ClearTextByButtonClear = False
|
||||||
|
.Value = -1
|
||||||
|
.EndInit()
|
||||||
|
End With
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub InitTextBox(ByRef TXT As TextBoxExtended, ByVal Caption As String, ByVal Buttons As ActionButton())
|
Private Sub InitTextBox(ByRef TXT As TextBoxExtended, ByVal Caption As String, ByVal Buttons As ActionButton())
|
||||||
TXT = New TextBoxExtended
|
TXT = New TextBoxExtended
|
||||||
@@ -85,48 +215,21 @@ Namespace DownloadObjects.Groups
|
|||||||
.BeginInit()
|
.BeginInit()
|
||||||
.Buttons.AddRange(Buttons)
|
.Buttons.AddRange(Buttons)
|
||||||
.CaptionText = Caption
|
.CaptionText = Caption
|
||||||
.CaptionWidth = 50
|
.CaptionWidth = CaptionWidthDefault
|
||||||
.Dock = DockStyle.Fill
|
.Dock = DockStyle.Fill
|
||||||
.EndInit()
|
.EndInit()
|
||||||
End With
|
End With
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub FillTP(ByRef TP As TableLayoutPanel, ByVal CNT1 As Control, ByVal CNT2 As Control)
|
Private Sub FillTP(ByRef TP As TableLayoutPanel, ByVal ParamArray CNT As Control())
|
||||||
With TP
|
With TP
|
||||||
.ColumnCount = 2
|
Dim i%
|
||||||
.ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 50))
|
.ColumnCount = CNT.Count
|
||||||
.ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 50))
|
For i = 0 To CNT.Count - 1 : .ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 50)) : Next
|
||||||
.RowCount = 1
|
.RowCount = 1
|
||||||
.RowStyles.Add(New RowStyle(SizeType.Percent, 100))
|
.RowStyles.Add(New RowStyle(SizeType.Percent, 100))
|
||||||
With .Controls : .Add(CNT1, 0, 0) : .Add(CNT2, 1, 0) : End With
|
With .Controls
|
||||||
End With
|
For i = 0 To CNT.Count - 1 : .Add(CNT(i), i, 0) : Next
|
||||||
End Sub
|
End With
|
||||||
Private Sub GroupDefaults_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed
|
|
||||||
Labels.Clear()
|
|
||||||
CH_TEMPORARY.Dispose()
|
|
||||||
CH_FAV.Dispose()
|
|
||||||
CH_READY_FOR_DOWN.Dispose()
|
|
||||||
CH_READY_FOR_DOWN_IGNORE.Dispose()
|
|
||||||
CH_SUBSCRIPTIONS.Dispose()
|
|
||||||
CH_SUBSCRIPTIONS_ONLY.Dispose()
|
|
||||||
NUM_USERS_COUNT.Dispose()
|
|
||||||
TXT_LABELS.Dispose()
|
|
||||||
With TP_1
|
|
||||||
.Controls.Clear()
|
|
||||||
.RowStyles.Clear()
|
|
||||||
.ColumnStyles.Clear()
|
|
||||||
.Dispose()
|
|
||||||
End With
|
|
||||||
With TP_2
|
|
||||||
.Controls.Clear()
|
|
||||||
.RowStyles.Clear()
|
|
||||||
.ColumnStyles.Clear()
|
|
||||||
.Dispose()
|
|
||||||
End With
|
|
||||||
With TP_3
|
|
||||||
.Controls.Clear()
|
|
||||||
.RowStyles.Clear()
|
|
||||||
.ColumnStyles.Clear()
|
|
||||||
.Dispose()
|
|
||||||
End With
|
End With
|
||||||
End Sub
|
End Sub
|
||||||
Protected Overrides Sub InitLayout()
|
Protected Overrides Sub InitLayout()
|
||||||
@@ -137,25 +240,81 @@ Namespace DownloadObjects.Groups
|
|||||||
CellBorderStyle = TableLayoutPanelCellBorderStyle.Single
|
CellBorderStyle = TableLayoutPanelCellBorderStyle.Single
|
||||||
ColumnCount = 1
|
ColumnCount = 1
|
||||||
ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 100))
|
ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 100))
|
||||||
RowCount = 9
|
RowCount = 13
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
||||||
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 25))
|
||||||
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
RowStyles.Add(New RowStyle(SizeType.Absolute, 28))
|
||||||
RowStyles.Add(New RowStyle(SizeType.Percent, 100))
|
RowStyles.Add(New RowStyle(SizeType.Percent, 100))
|
||||||
End If
|
End If
|
||||||
Controls.Add(TXT_NAME, 0, 1)
|
Controls.Add(TXT_NAME, 0, 1)
|
||||||
Controls.Add(TP_1, 0, 2)
|
Controls.Add(TP_1, 0, 2)
|
||||||
Controls.Add(TP_2, 0, 3)
|
Controls.Add(TP_4, 0, 3)
|
||||||
Controls.Add(TP_3, 0, 4)
|
Controls.Add(TP_2, 0, 4)
|
||||||
Controls.Add(NUM_USERS_COUNT, 0, 5)
|
Controls.Add(TP_3, 0, 5)
|
||||||
Controls.Add(TXT_LABELS, 0, 6)
|
Controls.Add(TP_6, 0, 6)
|
||||||
Controls.Add(TXT_SITES, 0, 7)
|
|
||||||
|
Controls.Add(NUM_DAYS, 0, 5)
|
||||||
|
Controls.Add(NUM_USERS_COUNT, 0, 8)
|
||||||
|
|
||||||
|
Controls.Add(TP_5, 0, 9)
|
||||||
|
|
||||||
|
Controls.Add(TXT_LABELS, 0, 10)
|
||||||
|
Controls.Add(TXT_SITES, 0, 11)
|
||||||
End Sub
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Control handlers"
|
||||||
|
Private Sub GroupDefaults_Disposed(sender As Object, e As EventArgs) Handles Me.Disposed
|
||||||
|
Labels.Clear()
|
||||||
|
LabelsExcluded.Clear()
|
||||||
|
Sites.Clear()
|
||||||
|
SitesExcluded.Clear()
|
||||||
|
CH_REGULAR.Dispose()
|
||||||
|
CH_TEMPORARY.Dispose()
|
||||||
|
CH_FAV.Dispose()
|
||||||
|
CH_READY_FOR_DOWN.Dispose()
|
||||||
|
CH_READY_FOR_DOWN_IGNORE.Dispose()
|
||||||
|
CH_USERS.Dispose()
|
||||||
|
CH_SUBSCRIPTIONS.Dispose()
|
||||||
|
CH_USER_EXISTS.Dispose()
|
||||||
|
CH_USER_SUSPENDED.Dispose()
|
||||||
|
CH_USER_DELETED.Dispose()
|
||||||
|
CH_LABELS_NO.Dispose()
|
||||||
|
CH_LABELS_EXCLUDED_IGNORE.Dispose()
|
||||||
|
DT_FROM.Dispose()
|
||||||
|
DT_TO.Dispose()
|
||||||
|
CH_DATE_IN_RANGE.Dispose()
|
||||||
|
NUM_USERS_COUNT.Dispose()
|
||||||
|
NUM_DAYS.Dispose()
|
||||||
|
TXT_LABELS.Dispose()
|
||||||
|
TXT_SITES.Dispose()
|
||||||
|
TXT_NAME.Dispose()
|
||||||
|
TT_MAIN.Dispose()
|
||||||
|
ClearTP(TP_1)
|
||||||
|
ClearTP(TP_2)
|
||||||
|
ClearTP(TP_3)
|
||||||
|
ClearTP(TP_4)
|
||||||
|
ClearTP(TP_5)
|
||||||
|
ClearTP(TP_6)
|
||||||
|
End Sub
|
||||||
|
Private Sub ClearTP(ByRef TP As TableLayoutPanel)
|
||||||
|
With TP
|
||||||
|
.Controls.Clear()
|
||||||
|
.RowStyles.Clear()
|
||||||
|
.ColumnStyles.Clear()
|
||||||
|
.Dispose()
|
||||||
|
End With
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Controls"
|
||||||
Friend Sub HideName()
|
Friend Sub HideName()
|
||||||
Controls.Remove(TXT_NAME)
|
Controls.Remove(TXT_NAME)
|
||||||
RowStyles(1).Height = 0
|
RowStyles(1).Height = 0
|
||||||
@@ -163,6 +322,9 @@ Namespace DownloadObjects.Groups
|
|||||||
Private Sub NUM_USERS_COUNT_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles NUM_USERS_COUNT.ActionOnButtonClick
|
Private Sub NUM_USERS_COUNT_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles NUM_USERS_COUNT.ActionOnButtonClick
|
||||||
If Sender.DefaultButton = ADB.Clear Then NUM_USERS_COUNT.Value = 0
|
If Sender.DefaultButton = ADB.Clear Then NUM_USERS_COUNT.Value = 0
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Sub NUM_DAYS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles NUM_DAYS.ActionOnButtonClick
|
||||||
|
If Sender.DefaultButton = ADB.Clear Then NUM_DAYS.Value = -1
|
||||||
|
End Sub
|
||||||
Private Sub TXT_LABELS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_LABELS.ActionOnButtonClick
|
Private Sub TXT_LABELS_ActionOnButtonClick(ByVal Sender As ActionButton, ByVal e As ActionButtonEventArgs) Handles TXT_LABELS.ActionOnButtonClick
|
||||||
Select Case Sender.DefaultButton
|
Select Case Sender.DefaultButton
|
||||||
Case ADB.Edit, ADB.Delete
|
Case ADB.Edit, ADB.Delete
|
||||||
@@ -205,17 +367,41 @@ Namespace DownloadObjects.Groups
|
|||||||
If Not _JustExcludeOptions Then TXT_SITES.Text = Sites.ListToString
|
If Not _JustExcludeOptions Then TXT_SITES.Text = Sites.ListToString
|
||||||
If SitesExcluded.Count > 0 Then TXT_SITES.Text.StringAppend($"EXCLUDED: {SitesExcluded.ListToString}", "; ")
|
If SitesExcluded.Count > 0 Then TXT_SITES.Text.StringAppend($"EXCLUDED: {SitesExcluded.ListToString}", "; ")
|
||||||
End Sub
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Get/set"
|
||||||
Friend Sub [Get](ByRef Instance As IGroup)
|
Friend Sub [Get](ByRef Instance As IGroup)
|
||||||
If Not Instance Is Nothing Then
|
If Not Instance Is Nothing Then
|
||||||
With Instance
|
With Instance
|
||||||
.Name = TXT_NAME.Text
|
.Name = TXT_NAME.Text
|
||||||
.Temporary = CH_TEMPORARY.CheckState
|
.Regular = CH_REGULAR.Checked
|
||||||
.Favorite = CH_FAV.CheckState
|
.Temporary = CH_TEMPORARY.Checked
|
||||||
|
.Favorite = CH_FAV.Checked
|
||||||
.ReadyForDownload = CH_READY_FOR_DOWN.Checked
|
.ReadyForDownload = CH_READY_FOR_DOWN.Checked
|
||||||
.ReadyForDownloadIgnore = CH_READY_FOR_DOWN_IGNORE.Checked
|
.ReadyForDownloadIgnore = CH_READY_FOR_DOWN_IGNORE.Checked
|
||||||
.Subscriptions = CH_SUBSCRIPTIONS.Checked
|
.DownloadUsers = CH_USERS.Checked
|
||||||
.SubscriptionsOnly = CH_SUBSCRIPTIONS_ONLY.Checked
|
.DownloadSubscriptions = CH_SUBSCRIPTIONS.Checked
|
||||||
.UsersCount = NUM_USERS_COUNT.Value
|
.UsersCount = NUM_USERS_COUNT.Value
|
||||||
|
.DaysNumber = NUM_DAYS.Value
|
||||||
|
.DaysIsDownloaded = NUM_DAYS.Checked
|
||||||
|
.UserDeleted = CH_USER_DELETED.Checked
|
||||||
|
.UserSuspended = CH_USER_SUSPENDED.Checked
|
||||||
|
.UserExists = CH_USER_EXISTS.Checked
|
||||||
|
|
||||||
|
If DT_FROM.DateChecked Then .DateFrom = DT_FROM.Date.Date Else .DateFrom = Nothing
|
||||||
|
If DT_TO.DateChecked Then
|
||||||
|
With DT_TO.Date.Date : Instance.DateTo = New Date(.Year, .Month, .Day, 23, 59, 59) : End With
|
||||||
|
Else
|
||||||
|
.DateTo = Nothing
|
||||||
|
End If
|
||||||
|
If .DateFrom.HasValue Or .DateTo.HasValue Then
|
||||||
|
.DateMode = If(CH_DATE_IN_RANGE.Checked, ShowingDates.In, ShowingDates.Not)
|
||||||
|
Else
|
||||||
|
.DateMode = ShowingDates.Off
|
||||||
|
End If
|
||||||
|
|
||||||
|
.LabelsNo = CH_LABELS_NO.Checked
|
||||||
|
.LabelsExcludedIgnore = CH_LABELS_EXCLUDED_IGNORE.Checked
|
||||||
|
|
||||||
.Labels.Clear()
|
.Labels.Clear()
|
||||||
.Labels.ListAddList(Labels)
|
.Labels.ListAddList(Labels)
|
||||||
.LabelsExcluded.Clear()
|
.LabelsExcluded.Clear()
|
||||||
@@ -231,13 +417,38 @@ Namespace DownloadObjects.Groups
|
|||||||
If Not Instance Is Nothing Then
|
If Not Instance Is Nothing Then
|
||||||
With Instance
|
With Instance
|
||||||
TXT_NAME.Text = .Name
|
TXT_NAME.Text = .Name
|
||||||
CH_TEMPORARY.CheckState = .Temporary
|
CH_REGULAR.Checked = .Regular
|
||||||
CH_FAV.CheckState = .Favorite
|
CH_TEMPORARY.Checked = .Temporary
|
||||||
|
CH_FAV.Checked = .Favorite
|
||||||
CH_READY_FOR_DOWN.Checked = .ReadyForDownload
|
CH_READY_FOR_DOWN.Checked = .ReadyForDownload
|
||||||
CH_READY_FOR_DOWN_IGNORE.Checked = .ReadyForDownloadIgnore
|
CH_READY_FOR_DOWN_IGNORE.Checked = .ReadyForDownloadIgnore
|
||||||
CH_SUBSCRIPTIONS.Checked = .Subscriptions
|
CH_USERS.Checked = .DownloadUsers
|
||||||
CH_SUBSCRIPTIONS_ONLY.Checked = .SubscriptionsOnly
|
CH_SUBSCRIPTIONS.Checked = .DownloadSubscriptions
|
||||||
NUM_USERS_COUNT.Value = .UsersCount
|
NUM_USERS_COUNT.Value = .UsersCount
|
||||||
|
NUM_DAYS.Value = .DaysNumber
|
||||||
|
NUM_DAYS.Checked = .DaysIsDownloaded
|
||||||
|
CH_USER_DELETED.Checked = .UserDeleted
|
||||||
|
CH_USER_SUSPENDED.Checked = .UserSuspended
|
||||||
|
CH_USER_EXISTS.Checked = .UserExists
|
||||||
|
|
||||||
|
If .DateFrom.HasValue Then
|
||||||
|
DT_FROM.DateChecked = True
|
||||||
|
DT_FROM.Value = .DateFrom.Value
|
||||||
|
Else
|
||||||
|
DT_FROM.DateChecked = False
|
||||||
|
DT_FROM.Value = Now.Date
|
||||||
|
End If
|
||||||
|
If .DateTo.HasValue Then
|
||||||
|
DT_TO.DateChecked = True
|
||||||
|
DT_TO.Value = .DateTo.Value
|
||||||
|
Else
|
||||||
|
DT_TO.DateChecked = False
|
||||||
|
DT_TO.Value = Now.Date
|
||||||
|
End If
|
||||||
|
CH_DATE_IN_RANGE.Checked = .DateMode = ShowingDates.In
|
||||||
|
|
||||||
|
CH_LABELS_NO.Checked = .LabelsNo
|
||||||
|
CH_LABELS_EXCLUDED_IGNORE.Checked = .LabelsExcludedIgnore
|
||||||
|
|
||||||
Labels.ListAddList(.Labels)
|
Labels.ListAddList(.Labels)
|
||||||
LabelsExcluded.ListAddList(.LabelsExcluded)
|
LabelsExcluded.ListAddList(.LabelsExcluded)
|
||||||
@@ -249,10 +460,11 @@ Namespace DownloadObjects.Groups
|
|||||||
End With
|
End With
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Enabled"
|
||||||
Private _Enabled As Boolean = True
|
Private _Enabled As Boolean = True
|
||||||
Private _JustExcludeOptions As Boolean = False
|
Private _JustExcludeOptions As Boolean = False
|
||||||
Friend Overloads Property Enabled(Optional ByVal LeaveExcludeOptions As Boolean = False,
|
Friend Overloads Property Enabled() As Boolean
|
||||||
Optional ByVal LeaveSubscriptionsAndUsersCount As Boolean = False) As Boolean
|
|
||||||
Get
|
Get
|
||||||
Return _Enabled
|
Return _Enabled
|
||||||
End Get
|
End Get
|
||||||
@@ -261,29 +473,18 @@ Namespace DownloadObjects.Groups
|
|||||||
_JustExcludeOptions = False
|
_JustExcludeOptions = False
|
||||||
TP_1.Enabled = e
|
TP_1.Enabled = e
|
||||||
TP_2.Enabled = e
|
TP_2.Enabled = e
|
||||||
TP_3.Enabled = e Or LeaveSubscriptionsAndUsersCount
|
TP_3.Enabled = e
|
||||||
NUM_USERS_COUNT.Enabled = e Or LeaveSubscriptionsAndUsersCount
|
TP_4.Enabled = e
|
||||||
If e Then
|
TP_5.Enabled = e
|
||||||
TXT_LABELS.Enabled = True
|
TP_6.Enabled = e
|
||||||
TXT_SITES.Enabled = True
|
NUM_USERS_COUNT.Enabled = e
|
||||||
ElseIf LeaveExcludeOptions Then
|
NUM_DAYS.Enabled = e
|
||||||
_JustExcludeOptions = True
|
TXT_LABELS.Enabled = e
|
||||||
TXT_LABELS.Enabled = True
|
TXT_SITES.Enabled = e
|
||||||
TXT_LABELS.Button(ADB.Edit).Enabled = False
|
|
||||||
TXT_LABELS.Button(ADB.Delete).Enabled = True
|
|
||||||
TXT_LABELS.Button(ADB.Clear).Enabled = False
|
|
||||||
|
|
||||||
TXT_SITES.Enabled = True
|
|
||||||
TXT_SITES.Button(ADB.Edit).Enabled = False
|
|
||||||
TXT_SITES.Button(ADB.Delete).Enabled = True
|
|
||||||
TXT_SITES.Button(ADB.Clear).Enabled = False
|
|
||||||
Else
|
|
||||||
TXT_LABELS.Enabled = False
|
|
||||||
TXT_SITES.Enabled = False
|
|
||||||
End If
|
|
||||||
UpdateLabelsText()
|
UpdateLabelsText()
|
||||||
UpdateSitesText()
|
UpdateSitesText()
|
||||||
End Set
|
End Set
|
||||||
End Property
|
End Property
|
||||||
|
#End Region
|
||||||
End Class
|
End Class
|
||||||
End Namespace
|
End Namespace
|
||||||
18
SCrawler/Download/Groups/GroupEditorForm.Designer.vb
generated
18
SCrawler/Download/Groups/GroupEditorForm.Designer.vb
generated
@@ -35,13 +35,13 @@ Namespace DownloadObjects.Groups
|
|||||||
'CONTAINER_MAIN.ContentPanel
|
'CONTAINER_MAIN.ContentPanel
|
||||||
'
|
'
|
||||||
CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEFS_GROUP)
|
CONTAINER_MAIN.ContentPanel.Controls.Add(Me.DEFS_GROUP)
|
||||||
CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 196)
|
CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(476, 328)
|
||||||
CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
||||||
CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
||||||
CONTAINER_MAIN.Name = "CONTAINER_MAIN"
|
CONTAINER_MAIN.Name = "CONTAINER_MAIN"
|
||||||
CONTAINER_MAIN.RightToolStripPanelVisible = False
|
CONTAINER_MAIN.RightToolStripPanelVisible = False
|
||||||
CONTAINER_MAIN.Size = New System.Drawing.Size(476, 221)
|
CONTAINER_MAIN.Size = New System.Drawing.Size(476, 328)
|
||||||
CONTAINER_MAIN.TabIndex = 0
|
CONTAINER_MAIN.TabIndex = 0
|
||||||
CONTAINER_MAIN.TopToolStripPanelVisible = False
|
CONTAINER_MAIN.TopToolStripPanelVisible = False
|
||||||
'
|
'
|
||||||
@@ -53,32 +53,36 @@ Namespace DownloadObjects.Groups
|
|||||||
Me.DEFS_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.DEFS_GROUP.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.DEFS_GROUP.Location = New System.Drawing.Point(0, 0)
|
Me.DEFS_GROUP.Location = New System.Drawing.Point(0, 0)
|
||||||
Me.DEFS_GROUP.Name = "DEFS_GROUP"
|
Me.DEFS_GROUP.Name = "DEFS_GROUP"
|
||||||
Me.DEFS_GROUP.RowCount = 9
|
Me.DEFS_GROUP.RowCount = 13
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
Me.DEFS_GROUP.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
Me.DEFS_GROUP.Size = New System.Drawing.Size(476, 196)
|
Me.DEFS_GROUP.Size = New System.Drawing.Size(476, 328)
|
||||||
Me.DEFS_GROUP.TabIndex = 0
|
Me.DEFS_GROUP.TabIndex = 0
|
||||||
'
|
'
|
||||||
'GroupEditorForm
|
'GroupEditorForm
|
||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||||
Me.ClientSize = New System.Drawing.Size(476, 221)
|
Me.ClientSize = New System.Drawing.Size(476, 328)
|
||||||
Me.Controls.Add(CONTAINER_MAIN)
|
Me.Controls.Add(CONTAINER_MAIN)
|
||||||
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
|
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
|
||||||
Me.Icon = Global.SCrawler.My.Resources.Resources.GroupByIcon_16
|
Me.Icon = Global.SCrawler.My.Resources.Resources.GroupByIcon_16
|
||||||
Me.KeyPreview = True
|
Me.KeyPreview = True
|
||||||
Me.MaximizeBox = False
|
Me.MaximizeBox = False
|
||||||
Me.MaximumSize = New System.Drawing.Size(492, 260)
|
Me.MaximumSize = New System.Drawing.Size(492, 367)
|
||||||
Me.MinimizeBox = False
|
Me.MinimizeBox = False
|
||||||
Me.MinimumSize = New System.Drawing.Size(492, 260)
|
Me.MinimumSize = New System.Drawing.Size(492, 367)
|
||||||
Me.Name = "GroupEditorForm"
|
Me.Name = "GroupEditorForm"
|
||||||
Me.ShowInTaskbar = False
|
Me.ShowInTaskbar = False
|
||||||
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ Namespace DownloadObjects.Groups
|
|||||||
Friend Property MyGroup As DownloadGroup
|
Friend Property MyGroup As DownloadGroup
|
||||||
Friend Property DownloadMode As Boolean = False
|
Friend Property DownloadMode As Boolean = False
|
||||||
Friend Property FilterMode As Boolean = False
|
Friend Property FilterMode As Boolean = False
|
||||||
|
Friend Property IsTemporaryGroup As Boolean = False
|
||||||
|
Friend Property IsClone As Boolean
|
||||||
Friend Sub New(ByRef g As DownloadGroup)
|
Friend Sub New(ByRef g As DownloadGroup)
|
||||||
InitializeComponent()
|
InitializeComponent()
|
||||||
MyGroup = g
|
MyGroup = g
|
||||||
@@ -60,7 +62,7 @@ Namespace DownloadObjects.Groups
|
|||||||
Text = "New Group"
|
Text = "New Group"
|
||||||
End If
|
End If
|
||||||
.MyFieldsChecker = New FieldsChecker
|
.MyFieldsChecker = New FieldsChecker
|
||||||
If DownloadMode Or FilterMode Then
|
If DownloadMode Or FilterMode Or IsTemporaryGroup Then
|
||||||
DEFS_GROUP.HideName()
|
DEFS_GROUP.HideName()
|
||||||
Dim s As Size = Size
|
Dim s As Size = Size
|
||||||
s.Height -= 31
|
s.Height -= 31
|
||||||
@@ -71,15 +73,16 @@ Namespace DownloadObjects.Groups
|
|||||||
MaximumSize = s
|
MaximumSize = s
|
||||||
Else
|
Else
|
||||||
.MyFieldsCheckerE.AddControl(Of String)(DEFS_GROUP.TXT_NAME, DEFS_GROUP.TXT_NAME.CaptionText,,
|
.MyFieldsCheckerE.AddControl(Of String)(DEFS_GROUP.TXT_NAME, DEFS_GROUP.TXT_NAME.CaptionText,,
|
||||||
New NameChecker(If(MyGroup?.Name, String.Empty), Settings.Groups, "Group"))
|
New NameChecker(If(Not IsClone, If(MyGroup?.Name, String.Empty), String.Empty), Settings.Groups, "Group"))
|
||||||
End If
|
End If
|
||||||
.MyFieldsChecker.EndLoaderOperations()
|
.MyFieldsChecker.EndLoaderOperations()
|
||||||
.EndLoaderOperations()
|
.EndLoaderOperations()
|
||||||
|
.MyOkCancel.EnableOK = True
|
||||||
End With
|
End With
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick
|
Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick
|
||||||
If MyDefs.MyFieldsChecker.AllParamsOK Then
|
If MyDefs.MyFieldsChecker.AllParamsOK Then
|
||||||
If MyGroup Is Nothing Then MyGroup = New DownloadGroup
|
If MyGroup Is Nothing Then MyGroup = New DownloadGroup(Not FilterMode)
|
||||||
With MyGroup
|
With MyGroup
|
||||||
.NameBefore = .Name
|
.NameBefore = .Name
|
||||||
DEFS_GROUP.Get(MyGroup)
|
DEFS_GROUP.Get(MyGroup)
|
||||||
|
|||||||
78
SCrawler/Download/Groups/GroupListForm.Designer.vb
generated
Normal file
78
SCrawler/Download/Groups/GroupListForm.Designer.vb
generated
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
' Copyright (C) Andy https://github.com/AAndyProgram
|
||||||
|
' This program is free software: you can redistribute it and/or modify
|
||||||
|
' it under the terms of the GNU General Public License as published by
|
||||||
|
' the Free Software Foundation, either version 3 of the License, or
|
||||||
|
' (at your option) any later version.
|
||||||
|
'
|
||||||
|
' This program is distributed in the hope that it will be useful,
|
||||||
|
' but WITHOUT ANY WARRANTY
|
||||||
|
Namespace DownloadObjects.Groups
|
||||||
|
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
|
||||||
|
Partial Friend Class GroupListForm : Inherits System.Windows.Forms.Form
|
||||||
|
<System.Diagnostics.DebuggerNonUserCode()>
|
||||||
|
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||||
|
Try
|
||||||
|
If disposing AndAlso components IsNot Nothing Then
|
||||||
|
components.Dispose()
|
||||||
|
End If
|
||||||
|
Finally
|
||||||
|
MyBase.Dispose(disposing)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private components As System.ComponentModel.IContainer
|
||||||
|
<System.Diagnostics.DebuggerStepThrough()>
|
||||||
|
Private Sub InitializeComponent()
|
||||||
|
Me.CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer()
|
||||||
|
Me.LIST_GROUPS = New System.Windows.Forms.ListBox()
|
||||||
|
Me.CONTAINER_MAIN.ContentPanel.SuspendLayout()
|
||||||
|
Me.CONTAINER_MAIN.SuspendLayout()
|
||||||
|
Me.SuspendLayout()
|
||||||
|
'
|
||||||
|
'CONTAINER_MAIN
|
||||||
|
'
|
||||||
|
Me.CONTAINER_MAIN.BottomToolStripPanelVisible = False
|
||||||
|
'
|
||||||
|
'CONTAINER_MAIN.ContentPanel
|
||||||
|
'
|
||||||
|
Me.CONTAINER_MAIN.ContentPanel.Controls.Add(Me.LIST_GROUPS)
|
||||||
|
Me.CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(284, 236)
|
||||||
|
Me.CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
||||||
|
Me.CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
||||||
|
Me.CONTAINER_MAIN.Name = "CONTAINER_MAIN"
|
||||||
|
Me.CONTAINER_MAIN.RightToolStripPanelVisible = False
|
||||||
|
Me.CONTAINER_MAIN.Size = New System.Drawing.Size(284, 261)
|
||||||
|
Me.CONTAINER_MAIN.TabIndex = 0
|
||||||
|
'
|
||||||
|
'LIST_GROUPS
|
||||||
|
'
|
||||||
|
Me.LIST_GROUPS.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.LIST_GROUPS.FormattingEnabled = True
|
||||||
|
Me.LIST_GROUPS.Location = New System.Drawing.Point(0, 0)
|
||||||
|
Me.LIST_GROUPS.Name = "LIST_GROUPS"
|
||||||
|
Me.LIST_GROUPS.Size = New System.Drawing.Size(284, 236)
|
||||||
|
Me.LIST_GROUPS.TabIndex = 0
|
||||||
|
'
|
||||||
|
'GroupListForm
|
||||||
|
'
|
||||||
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
|
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||||
|
Me.ClientSize = New System.Drawing.Size(284, 261)
|
||||||
|
Me.Controls.Add(Me.CONTAINER_MAIN)
|
||||||
|
Me.Icon = Global.SCrawler.My.Resources.Resources.GroupByIcon_16
|
||||||
|
Me.KeyPreview = True
|
||||||
|
Me.MinimumSize = New System.Drawing.Size(300, 300)
|
||||||
|
Me.Name = "GroupListForm"
|
||||||
|
Me.ShowInTaskbar = False
|
||||||
|
Me.Text = "Groups"
|
||||||
|
Me.CONTAINER_MAIN.ContentPanel.ResumeLayout(False)
|
||||||
|
Me.CONTAINER_MAIN.ResumeLayout(False)
|
||||||
|
Me.CONTAINER_MAIN.PerformLayout()
|
||||||
|
Me.ResumeLayout(False)
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private WithEvents LIST_GROUPS As ListBox
|
||||||
|
Private WithEvents CONTAINER_MAIN As ToolStripContainer
|
||||||
|
End Class
|
||||||
|
End Namespace
|
||||||
120
SCrawler/Download/Groups/GroupListForm.resx
Normal file
120
SCrawler/Download/Groups/GroupListForm.resx
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
||||||
300
SCrawler/Download/Groups/GroupListForm.vb
Normal file
300
SCrawler/Download/Groups/GroupListForm.vb
Normal file
@@ -0,0 +1,300 @@
|
|||||||
|
' Copyright (C) Andy https://github.com/AAndyProgram
|
||||||
|
' This program is free software: you can redistribute it and/or modify
|
||||||
|
' it under the terms of the GNU General Public License as published by
|
||||||
|
' the Free Software Foundation, either version 3 of the License, or
|
||||||
|
' (at your option) any later version.
|
||||||
|
'
|
||||||
|
' This program is distributed in the hope that it will be useful,
|
||||||
|
' but WITHOUT ANY WARRANTY
|
||||||
|
Imports System.ComponentModel
|
||||||
|
Imports System.Collections.ObjectModel
|
||||||
|
Imports PersonalUtilities.Forms
|
||||||
|
Imports PersonalUtilities.Forms.Toolbars
|
||||||
|
Imports ECI = PersonalUtilities.Forms.Toolbars.EditToolbar.ControlItem
|
||||||
|
Namespace DownloadObjects.Groups
|
||||||
|
Friend Class GroupListForm
|
||||||
|
#Region "Declarations"
|
||||||
|
Private WithEvents MyDefs As DefaultFormOptions
|
||||||
|
Private ReadOnly IsViewFilter As Boolean
|
||||||
|
Private WithEvents BTT_MOVE_UP As ToolStripButton
|
||||||
|
Private WithEvents BTT_MOVE_DOWN As ToolStripButton
|
||||||
|
Private WithEvents BTT_DOWNLOAD As ToolStripKeyMenuItem
|
||||||
|
Private ReadOnly MyGroups As ObservableCollection(Of String)
|
||||||
|
Private ReadOnly MyGroupParams As List(Of GroupParameters)
|
||||||
|
Private _GroupsUpdated As Boolean = False
|
||||||
|
Friend ReadOnly Property GroupsUpdated As Boolean
|
||||||
|
Get
|
||||||
|
Return _GroupsUpdated
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
Private _GroupToDownload As String = String.Empty
|
||||||
|
Friend ReadOnly Property GroupToDownload As String
|
||||||
|
Get
|
||||||
|
Return _GroupToDownload
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
Private _GroupToDownloadIncludeInTheFeed As Boolean = True
|
||||||
|
Friend ReadOnly Property GroupToDownloadIncludeInTheFeed As Boolean
|
||||||
|
Get
|
||||||
|
Return _GroupToDownloadIncludeInTheFeed
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
Private _FilterSelected As GroupParameters = Nothing
|
||||||
|
Friend ReadOnly Property FilterSelected As GroupParameters
|
||||||
|
Get
|
||||||
|
Return _FilterSelected
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
#End Region
|
||||||
|
#Region "Initializer"
|
||||||
|
Friend Sub New(ByVal _IsViewFilter As Boolean)
|
||||||
|
InitializeComponent()
|
||||||
|
MyDefs = New DefaultFormOptions(Me, Settings.Design)
|
||||||
|
MyGroups = New ObservableCollection(Of String)
|
||||||
|
MyGroupParams = New List(Of GroupParameters)
|
||||||
|
IsViewFilter = _IsViewFilter
|
||||||
|
If Not IsViewFilter Then
|
||||||
|
BTT_MOVE_UP = New ToolStripButton With {
|
||||||
|
.Image = PersonalUtilities.My.Resources.ArrowUpPic_Blue_32,
|
||||||
|
.Text = String.Empty,
|
||||||
|
.DisplayStyle = ToolStripItemDisplayStyle.Image,
|
||||||
|
.ToolTipText = "Move up",
|
||||||
|
.AutoToolTip = True
|
||||||
|
}
|
||||||
|
BTT_MOVE_DOWN = New ToolStripButton With {
|
||||||
|
.Image = PersonalUtilities.My.Resources.ArrowDownPic_Blue_32,
|
||||||
|
.Text = String.Empty,
|
||||||
|
.DisplayStyle = ToolStripItemDisplayStyle.Image,
|
||||||
|
.ToolTipText = "Move down",
|
||||||
|
.AutoToolTip = True
|
||||||
|
}
|
||||||
|
BTT_DOWNLOAD = New ToolStripKeyMenuItem("Download", My.Resources.StartPic_Green_16) With {.ToolTipText = "Download selected group"}
|
||||||
|
Else
|
||||||
|
Text = "Filters"
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Form handlers"
|
||||||
|
Private Sub GroupListForm_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||||
|
Try
|
||||||
|
With MyDefs
|
||||||
|
.MyViewInitialize()
|
||||||
|
|
||||||
|
If Not IsViewFilter Then
|
||||||
|
.AddEditToolbarPlus({BTT_MOVE_UP, BTT_MOVE_DOWN, ECI.Separator, BTT_DOWNLOAD})
|
||||||
|
With Settings.Groups.Where(Function(g) g.IsViewFilter = IsViewFilter)
|
||||||
|
If .ListExists Then .ListForEach(Sub(g, i) MyGroups.Add(g.Name))
|
||||||
|
End With
|
||||||
|
Else
|
||||||
|
.AddEditToolbar()
|
||||||
|
With .MyEditToolbar : .ButtonKey(ECI.Add) = Nothing : .Enabled(ECI.Add) = False : End With
|
||||||
|
With Settings.Groups.Cast(Of GroupParameters).Concat(Settings.Automation.Cast(Of GroupParameters)).ToList.
|
||||||
|
ListSort(New FComparer(Of GroupParameters)(
|
||||||
|
Function(ByVal x As GroupParameters, ByVal y As GroupParameters) As Integer
|
||||||
|
Dim getVal As Func(Of GroupParameters, Long) =
|
||||||
|
Function(ByVal g As GroupParameters) As Long
|
||||||
|
Dim v& = 0
|
||||||
|
If TypeOf g Is AutoDownloader Then
|
||||||
|
v = CLng(Integer.MaxValue) * 1000
|
||||||
|
ElseIf TypeOf g Is DownloadGroup Then
|
||||||
|
If Not g.IsViewFilter Then v = CLng(Integer.MaxValue) * 100
|
||||||
|
End If
|
||||||
|
v += g.ToStringViewFilters.GetHashCode
|
||||||
|
Return v
|
||||||
|
End Function
|
||||||
|
Return getVal(x).CompareTo(getVal(y))
|
||||||
|
End Function))
|
||||||
|
If .ListExists Then .ListForEach(Sub(ByVal g As GroupParameters, ByVal __indx As Integer)
|
||||||
|
MyGroups.Add(g.Name)
|
||||||
|
MyGroupParams.Add(g)
|
||||||
|
End Sub)
|
||||||
|
End With
|
||||||
|
CONTAINER_MAIN.BottomToolStripPanel.Visible = True
|
||||||
|
.AddOkCancelToolbar()
|
||||||
|
.MyOkCancel.ToolTipOk = "Apply selected filter"
|
||||||
|
End If
|
||||||
|
|
||||||
|
RefillList()
|
||||||
|
If Not IsViewFilter Then Settings.Groups.BeginUpdate()
|
||||||
|
|
||||||
|
.DelegateClosingChecker = False
|
||||||
|
|
||||||
|
.EndLoaderOperations()
|
||||||
|
End With
|
||||||
|
Catch ex As Exception
|
||||||
|
MyDefs.InvokeLoaderError(ex)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private Sub GroupListForm_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
|
||||||
|
If Not IsViewFilter And GroupsUpdated And MyGroups.Count > 0 Then
|
||||||
|
With Settings.Groups
|
||||||
|
Dim myIndx%, grIndx%
|
||||||
|
For myIndx = 0 To MyGroups.Count - 1
|
||||||
|
grIndx = .IndexOf(MyGroups(myIndx))
|
||||||
|
If grIndx >= 0 Then .Item(grIndx).Index = myIndx
|
||||||
|
Next
|
||||||
|
.Sort()
|
||||||
|
.Reindex()
|
||||||
|
.Sort()
|
||||||
|
End With
|
||||||
|
End If
|
||||||
|
MyGroups.Clear()
|
||||||
|
MyGroupParams.Clear()
|
||||||
|
Settings.Groups.EndUpdate()
|
||||||
|
If GroupsUpdated Then Settings.Groups.Update()
|
||||||
|
End Sub
|
||||||
|
Private Sub GroupListForm_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown
|
||||||
|
If e.KeyCode = Keys.Escape Then Close()
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Refill"
|
||||||
|
Private Sub RefillList(Optional ByVal OffsetIndex As Integer? = Nothing)
|
||||||
|
Try
|
||||||
|
With LIST_GROUPS
|
||||||
|
.BeginUpdate()
|
||||||
|
With .Items
|
||||||
|
.Clear()
|
||||||
|
If IsViewFilter Then
|
||||||
|
If MyGroupParams.Count > 0 Then .AddRange(MyGroupParams.Select(Function(g) g.ToStringViewFilters).Cast(Of Object).ToArray)
|
||||||
|
Else
|
||||||
|
If MyGroups.Count > 0 Then .AddRange(MyGroups.Cast(Of Object).ToArray)
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
.EndUpdate()
|
||||||
|
If OffsetIndex.HasValue Then
|
||||||
|
Dim newIndx% = _LatestSelected + OffsetIndex.Value
|
||||||
|
If newIndx.ValueBetween(0, .Items.Count - 1) Then .SelectedIndex = newIndx : _LatestSelected = newIndx
|
||||||
|
ElseIf .Items.Count > 0 Then
|
||||||
|
If _LatestSelected.ValueBetween(0, .Items.Count - 1) Then
|
||||||
|
.SelectedIndex = _LatestSelected
|
||||||
|
ElseIf (_LatestSelected - 1).ValueBetween(0, .Items.Count - 1) Then
|
||||||
|
_LatestSelected -= 1
|
||||||
|
.SelectedIndex = _LatestSelected
|
||||||
|
ElseIf (_LatestSelected + 1).ValueBetween(0, .Items.Count - 1) Then
|
||||||
|
_LatestSelected += 1
|
||||||
|
.SelectedIndex = _LatestSelected
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
Catch ex As Exception
|
||||||
|
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[GroupListForm.RefillList]")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Ok Cancel"
|
||||||
|
Private Sub MyDefs_ButtonOkClick(ByVal Sender As Object, ByVal e As KeyHandleEventArgs) Handles MyDefs.ButtonOkClick
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroupParams.Count - 1) Then
|
||||||
|
_FilterSelected = MyGroupParams(_LatestSelected)
|
||||||
|
MyDefs.CloseForm()
|
||||||
|
Else
|
||||||
|
MsgBoxE({"You haven't selected a filter", "Apply filter"}, vbCritical)
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Toolbar buttons"
|
||||||
|
Private Sub MyDefs_ButtonAddClick(ByVal Sender As Object, ByVal e As EditToolbarEventArgs) Handles MyDefs.ButtonAddClick
|
||||||
|
If Not IsViewFilter Then
|
||||||
|
Dim i% = Settings.Groups.Add
|
||||||
|
If i >= 0 Then
|
||||||
|
MyGroups.Add(Settings.Groups(i).Name)
|
||||||
|
_LatestSelected = MyGroups.Count - 1
|
||||||
|
_GroupsUpdated = True
|
||||||
|
RefillList()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
Private Sub MyDefs_ButtonEditClick(ByVal Sender As Object, ByVal e As EditToolbarEventArgs) Handles MyDefs.ButtonEditClick
|
||||||
|
EditItem()
|
||||||
|
End Sub
|
||||||
|
Private Function ItemEditDeleteReady(ByVal Operation As String) As DialogResult
|
||||||
|
If IsViewFilter Then
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroupParams.Count - 1) Then
|
||||||
|
With MyGroupParams(_LatestSelected)
|
||||||
|
If TypeOf .Self Is AutoDownloader Then
|
||||||
|
MsgBoxE({$"You cannot {Operation} the scheduler plan through this form", $"{Operation.ToUpperFirstChar} filter"}, vbCritical)
|
||||||
|
Return DialogResult.Abort
|
||||||
|
ElseIf TypeOf .Self Is DownloadGroup AndAlso Not DirectCast(.Self, DownloadGroup).IsViewFilter Then
|
||||||
|
MsgBoxE({$"You cannot {Operation} the group through this form", $"{Operation.ToUpperFirstChar} filter"}, vbCritical)
|
||||||
|
Return DialogResult.Abort
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Return DialogResult.OK
|
||||||
|
End Function
|
||||||
|
Private Sub EditItem()
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroups.Count - 1) AndAlso ItemEditDeleteReady("edit") = DialogResult.OK Then
|
||||||
|
Dim i% = Settings.Groups.IndexOf(MyGroups(_LatestSelected), IsViewFilter)
|
||||||
|
If i >= 0 Then
|
||||||
|
Using f As New GroupEditorForm(Settings.Groups(i))
|
||||||
|
f.ShowDialog()
|
||||||
|
If f.DialogResult = DialogResult.OK Then
|
||||||
|
If IsViewFilter Then
|
||||||
|
MyGroups(_LatestSelected) = Settings.Groups(i).ToStringViewFilters
|
||||||
|
Settings.Groups.Update()
|
||||||
|
Else
|
||||||
|
MyGroups(_LatestSelected) = Settings.Groups(i).Name
|
||||||
|
_GroupsUpdated = True
|
||||||
|
End If
|
||||||
|
RefillList()
|
||||||
|
End If
|
||||||
|
End Using
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
Private Sub MyDefs_ButtonDeleteClickEdit(ByVal Sender As Object, ByVal e As EditToolbarEventArgs) Handles MyDefs.ButtonDeleteClickE
|
||||||
|
Try
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroups.Count - 1) AndAlso ItemEditDeleteReady("delete") = DialogResult.OK Then
|
||||||
|
Dim i% = Settings.Groups.IndexOf(MyGroups(_LatestSelected), IsViewFilter)
|
||||||
|
If i >= 0 Then
|
||||||
|
Dim n$ = Settings.Groups(i).Name
|
||||||
|
If Settings.Groups(i).Delete Then
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroupParams.Count - 1) Then MyGroupParams.RemoveAt(_LatestSelected)
|
||||||
|
MyGroups.Remove(n)
|
||||||
|
RefillList()
|
||||||
|
If IsViewFilter Then
|
||||||
|
Settings.Groups.Update()
|
||||||
|
Else
|
||||||
|
_GroupsUpdated = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[GroupListForm.Delete]")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private Sub BTT_MOVE_UP_DOWN_Click(sender As Object, e As EventArgs) Handles BTT_MOVE_UP.Click, BTT_MOVE_DOWN.Click
|
||||||
|
Try
|
||||||
|
Dim offset% = IIf(sender Is BTT_MOVE_UP, -1, 1)
|
||||||
|
If _LatestSelected.ValueBetween(0, MyGroups.Count - 1) And (_LatestSelected + offset).ValueBetween(0, MyGroups.Count - 1) Then
|
||||||
|
MyGroups.Move(_LatestSelected, _LatestSelected + offset)
|
||||||
|
RefillList(offset)
|
||||||
|
_GroupsUpdated = True
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[GroupListForm.Move]")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private Sub BTT_DOWNLOAD_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWNLOAD.KeyClick
|
||||||
|
If Not IsViewFilter AndAlso _LatestSelected.ValueBetween(0, MyGroups.Count - 1) Then
|
||||||
|
Dim i% = Settings.Groups.IndexOf(MyGroups(_LatestSelected))
|
||||||
|
If i >= 0 Then _GroupToDownload = Settings.Groups(i).Name : _GroupToDownloadIncludeInTheFeed = e.IncludeInTheFeed : Close()
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "List handlers"
|
||||||
|
Private _LatestSelected As Integer = -1
|
||||||
|
Private Sub LIST_GROUPS_Click(sender As Object, e As EventArgs) Handles LIST_GROUPS.Click
|
||||||
|
_LatestSelected = LIST_GROUPS.SelectedIndex
|
||||||
|
End Sub
|
||||||
|
Private Sub LIST_GROUPS_DoubleClick(sender As Object, e As EventArgs) Handles LIST_GROUPS.DoubleClick
|
||||||
|
If IsViewFilter Then
|
||||||
|
MyDefs.MyOkCancel.BTT_OK.PerformClick()
|
||||||
|
Else
|
||||||
|
EditItem()
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
#End Region
|
||||||
|
End Class
|
||||||
|
End Namespace
|
||||||
@@ -10,49 +10,104 @@ Imports PersonalUtilities.Functions.XML
|
|||||||
Namespace DownloadObjects.Groups
|
Namespace DownloadObjects.Groups
|
||||||
Friend Interface IGroup
|
Friend Interface IGroup
|
||||||
Property Name As String
|
Property Name As String
|
||||||
|
Property LabelsNo As Boolean
|
||||||
ReadOnly Property Labels As List(Of String)
|
ReadOnly Property Labels As List(Of String)
|
||||||
ReadOnly Property LabelsExcluded As List(Of String)
|
ReadOnly Property LabelsExcluded As List(Of String)
|
||||||
|
Property LabelsExcludedIgnore As Boolean
|
||||||
ReadOnly Property Sites As List(Of String)
|
ReadOnly Property Sites As List(Of String)
|
||||||
ReadOnly Property SitesExcluded As List(Of String)
|
ReadOnly Property SitesExcluded As List(Of String)
|
||||||
Property Temporary As CheckState
|
Property Regular As Boolean
|
||||||
Property Favorite As CheckState
|
Property Temporary As Boolean
|
||||||
|
Property Favorite As Boolean
|
||||||
Property ReadyForDownload As Boolean
|
Property ReadyForDownload As Boolean
|
||||||
Property ReadyForDownloadIgnore As Boolean
|
Property ReadyForDownloadIgnore As Boolean
|
||||||
Property Subscriptions As Boolean
|
Property DownloadUsers As Boolean
|
||||||
Property SubscriptionsOnly As Boolean
|
Property DownloadSubscriptions As Boolean
|
||||||
Property UsersCount As Integer
|
Property UsersCount As Integer
|
||||||
|
Property DaysNumber As Integer
|
||||||
|
Property DaysIsDownloaded As Boolean
|
||||||
|
Property UserDeleted As Boolean
|
||||||
|
Property UserSuspended As Boolean
|
||||||
|
Property UserExists As Boolean
|
||||||
|
Property DateFrom As Date?
|
||||||
|
Property DateTo As Date?
|
||||||
|
Property DateMode As ShowingDates
|
||||||
End Interface
|
End Interface
|
||||||
Friend Class GroupParameters : Implements IGroup, IDisposable, ICopier
|
Friend Class GroupParameters : Implements IGroup, IDisposable, ICopier
|
||||||
|
#Region "XML names"
|
||||||
|
#Region "Old"
|
||||||
|
Protected Const Name_Subscriptions As String = "Subscriptions"
|
||||||
|
Protected Const Name_SubscriptionsOnly As String = "SubscriptionsOnly"
|
||||||
|
#End Region
|
||||||
Protected Const Name_Name As String = "Name"
|
Protected Const Name_Name As String = "Name"
|
||||||
|
Protected Const Name_Regular As String = "Regular"
|
||||||
Protected Const Name_Temporary As String = "Temporary"
|
Protected Const Name_Temporary As String = "Temporary"
|
||||||
Protected Const Name_Favorite As String = "Favorite"
|
Protected Const Name_Favorite As String = "Favorite"
|
||||||
Protected Const Name_ReadyForDownload As String = "RFD"
|
Protected Const Name_ReadyForDownload As String = "RFD"
|
||||||
Protected Const Name_ReadyForDownloadIgnore As String = "RFDI"
|
Protected Const Name_ReadyForDownloadIgnore As String = "RFDI"
|
||||||
Protected Const Name_Subscriptions As String = "Subscriptions"
|
|
||||||
Protected Const Name_SubscriptionsOnly As String = "SubscriptionsOnly"
|
Protected Const Name_DownloadUsers As String = "DownloadUsers"
|
||||||
|
Protected Const Name_DownloadSubscriptions As String = "DownloadSubscriptions"
|
||||||
|
|
||||||
Protected Const Name_UsersCount As String = "UsersCount"
|
Protected Const Name_UsersCount As String = "UsersCount"
|
||||||
|
Protected Const Name_LabelsNo As String = "LabelsNo"
|
||||||
Protected Const Name_Labels As String = "Labels"
|
Protected Const Name_Labels As String = "Labels"
|
||||||
Protected Const Name_Labels_Excluded As String = "LabelsExcluded"
|
Protected Const Name_Labels_Excluded As String = "LabelsExcluded"
|
||||||
|
Protected Const Name_LabelsExcludedIgnore As String = "LabelsExcludedIgnore"
|
||||||
Protected Const Name_Sites As String = "Sites"
|
Protected Const Name_Sites As String = "Sites"
|
||||||
Protected Const Name_Sites_Excluded As String = "SitesExcluded"
|
Protected Const Name_Sites_Excluded As String = "SitesExcluded"
|
||||||
Friend Property Name As String Implements IGroup.Name
|
Protected Const Name_DaysNumber As String = "DaysNumber"
|
||||||
|
Protected Const Name_DaysIsDownloaded As String = "DaysIsDownloaded"
|
||||||
|
Protected Const Name_UserDeleted As String = "UserDeleted"
|
||||||
|
Protected Const Name_UserSuspended As String = "UserSuspended"
|
||||||
|
Protected Const Name_UserExists As String = "UserExists"
|
||||||
|
Protected Const Name_DateFrom As String = "DateFrom"
|
||||||
|
Protected Const Name_DateTo As String = "DateTo"
|
||||||
|
Protected Const Name_DateMode As String = "DateMode"
|
||||||
|
Protected Const Name_IsViewFilter As String = "IsViewFilter"
|
||||||
|
#End Region
|
||||||
|
#Region "Declarations"
|
||||||
|
Friend Overridable Property Name As String Implements IGroup.Name
|
||||||
|
Friend Property LabelsNo As Boolean = False Implements IGroup.LabelsNo
|
||||||
Friend ReadOnly Property Labels As List(Of String) Implements IGroup.Labels
|
Friend ReadOnly Property Labels As List(Of String) Implements IGroup.Labels
|
||||||
Friend ReadOnly Property LabelsExcluded As List(Of String) Implements IGroup.LabelsExcluded
|
Friend ReadOnly Property LabelsExcluded As List(Of String) Implements IGroup.LabelsExcluded
|
||||||
|
Friend Property LabelsExcludedIgnore As Boolean = False Implements IGroup.LabelsExcludedIgnore
|
||||||
Friend ReadOnly Property Sites As List(Of String) Implements IGroup.Sites
|
Friend ReadOnly Property Sites As List(Of String) Implements IGroup.Sites
|
||||||
Friend ReadOnly Property SitesExcluded As List(Of String) Implements IGroup.SitesExcluded
|
Friend ReadOnly Property SitesExcluded As List(Of String) Implements IGroup.SitesExcluded
|
||||||
Friend Property Temporary As CheckState = CheckState.Indeterminate Implements IGroup.Temporary
|
Friend Property Regular As Boolean = True Implements IGroup.Regular
|
||||||
Friend Property Favorite As CheckState = CheckState.Indeterminate Implements IGroup.Favorite
|
Friend Property Temporary As Boolean = True Implements IGroup.Temporary
|
||||||
|
Friend Property Favorite As Boolean = True Implements IGroup.Favorite
|
||||||
Friend Property ReadyForDownload As Boolean = True Implements IGroup.ReadyForDownload
|
Friend Property ReadyForDownload As Boolean = True Implements IGroup.ReadyForDownload
|
||||||
Friend Property ReadyForDownloadIgnore As Boolean = False Implements IGroup.ReadyForDownloadIgnore
|
Friend Property ReadyForDownloadIgnore As Boolean = False Implements IGroup.ReadyForDownloadIgnore
|
||||||
Friend Property Subscriptions As Boolean = False Implements IGroup.Subscriptions
|
Friend Property DownloadUsers As Boolean = True Implements IGroup.DownloadUsers
|
||||||
Friend Property SubscriptionsOnly As Boolean = False Implements IGroup.SubscriptionsOnly
|
Friend Property DownloadSubscriptions As Boolean = True Implements IGroup.DownloadSubscriptions
|
||||||
Friend Property UsersCount As Integer = 0 Implements IGroup.UsersCount
|
Friend Property UsersCount As Integer = 0 Implements IGroup.UsersCount
|
||||||
|
Friend Property DaysNumber As Integer = -1 Implements IGroup.DaysNumber
|
||||||
|
Friend Property DaysIsDownloaded As Boolean = False Implements IGroup.DaysIsDownloaded
|
||||||
|
Friend Property UserDeleted As Boolean = False Implements IGroup.UserDeleted
|
||||||
|
Friend Property UserSuspended As Boolean = True Implements IGroup.UserSuspended
|
||||||
|
Friend Property UserExists As Boolean = True Implements IGroup.UserExists
|
||||||
|
Friend Property DateFrom As Date? = Nothing Implements IGroup.DateFrom
|
||||||
|
Friend Property DateTo As Date? = Nothing Implements IGroup.DateTo
|
||||||
|
Friend Property DateMode As ShowingDates = ShowingDates.Off Implements IGroup.DateMode
|
||||||
|
Friend Property IsViewFilter As Boolean = False
|
||||||
|
#End Region
|
||||||
|
#Region "Initializer"
|
||||||
Friend Sub New()
|
Friend Sub New()
|
||||||
Labels = New List(Of String)
|
Labels = New List(Of String)
|
||||||
LabelsExcluded = New List(Of String)
|
LabelsExcluded = New List(Of String)
|
||||||
Sites = New List(Of String)
|
Sites = New List(Of String)
|
||||||
SitesExcluded = New List(Of String)
|
SitesExcluded = New List(Of String)
|
||||||
End Sub
|
End Sub
|
||||||
|
#End Region
|
||||||
|
#Region "Base functions"
|
||||||
|
Public Overrides Function ToString() As String
|
||||||
|
Return Name
|
||||||
|
End Function
|
||||||
|
Friend Overridable Function ToStringViewFilters() As String
|
||||||
|
Return ToString()
|
||||||
|
End Function
|
||||||
|
#End Region
|
||||||
#Region "ICopier Support"
|
#Region "ICopier Support"
|
||||||
Friend Overridable Overloads Function Copy() As Object Implements ICopier.Copy
|
Friend Overridable Overloads Function Copy() As Object Implements ICopier.Copy
|
||||||
Return (New GroupParameters).Copy(Me)
|
Return (New GroupParameters).Copy(Me)
|
||||||
@@ -60,52 +115,101 @@ Namespace DownloadObjects.Groups
|
|||||||
Friend Overridable Overloads Function Copy(ByVal Source As Object) As Object Implements ICopier.Copy
|
Friend Overridable Overloads Function Copy(ByVal Source As Object) As Object Implements ICopier.Copy
|
||||||
With DirectCast(Source, GroupParameters)
|
With DirectCast(Source, GroupParameters)
|
||||||
Name = .Name
|
Name = .Name
|
||||||
|
LabelsNo = .LabelsNo
|
||||||
Labels.ListAddList(.Labels, LAP.ClearBeforeAdd)
|
Labels.ListAddList(.Labels, LAP.ClearBeforeAdd)
|
||||||
LabelsExcluded.ListAddList(.LabelsExcluded, LAP.ClearBeforeAdd)
|
LabelsExcluded.ListAddList(.LabelsExcluded, LAP.ClearBeforeAdd)
|
||||||
|
LabelsExcludedIgnore = .LabelsExcludedIgnore
|
||||||
Sites.ListAddList(.Sites, LAP.ClearBeforeAdd)
|
Sites.ListAddList(.Sites, LAP.ClearBeforeAdd)
|
||||||
SitesExcluded.ListAddList(.SitesExcluded, LAP.ClearBeforeAdd)
|
SitesExcluded.ListAddList(.SitesExcluded, LAP.ClearBeforeAdd)
|
||||||
|
Regular = .Regular
|
||||||
Temporary = .Temporary
|
Temporary = .Temporary
|
||||||
Favorite = .Favorite
|
Favorite = .Favorite
|
||||||
ReadyForDownload = .ReadyForDownload
|
ReadyForDownload = .ReadyForDownload
|
||||||
ReadyForDownloadIgnore = .ReadyForDownloadIgnore
|
ReadyForDownloadIgnore = .ReadyForDownloadIgnore
|
||||||
Subscriptions = .Subscriptions
|
DownloadUsers = .DownloadUsers
|
||||||
SubscriptionsOnly = .SubscriptionsOnly
|
DownloadSubscriptions = .DownloadSubscriptions
|
||||||
UsersCount = .UsersCount
|
UsersCount = .UsersCount
|
||||||
|
DaysNumber = .DaysNumber
|
||||||
|
DaysIsDownloaded = .DaysIsDownloaded
|
||||||
|
UserDeleted = .UserDeleted
|
||||||
|
UserSuspended = .UserSuspended
|
||||||
|
UserExists = .UserExists
|
||||||
|
DateFrom = .DateFrom
|
||||||
|
DateTo = .DateTo
|
||||||
|
DateMode = .DateMode
|
||||||
|
IsViewFilter = .IsViewFilter
|
||||||
End With
|
End With
|
||||||
Return Source
|
Return Me
|
||||||
End Function
|
End Function
|
||||||
#End Region
|
#End Region
|
||||||
Protected Sub Import(ByVal e As EContainer)
|
#Region "Import/Export"
|
||||||
|
Protected Overridable Sub Import(ByVal e As EContainer)
|
||||||
Name = e.Value(Name_Name)
|
Name = e.Value(Name_Name)
|
||||||
Temporary = e.Value(Name_Temporary).FromXML(Of Integer)(CInt(CheckState.Indeterminate))
|
|
||||||
Favorite = e.Value(Name_Favorite).FromXML(Of Integer)(CInt(CheckState.Indeterminate))
|
|
||||||
ReadyForDownload = e.Value(Name_ReadyForDownload).FromXML(Of Boolean)(True)
|
|
||||||
ReadyForDownloadIgnore = e.Value(Name_ReadyForDownloadIgnore).FromXML(Of Boolean)(False)
|
|
||||||
Subscriptions = e.Value(Name_Subscriptions).FromXML(Of Boolean)(False)
|
|
||||||
SubscriptionsOnly = e.Value(Name_SubscriptionsOnly).FromXML(Of Boolean)(False)
|
|
||||||
UsersCount = e.Value(Name_UsersCount).FromXML(Of Integer)(0)
|
|
||||||
|
|
||||||
Dim l As New ListAddParams(LAP.NotContainsOnly)
|
Dim l As New ListAddParams(LAP.NotContainsOnly)
|
||||||
|
LabelsNo = e.Value(Name_LabelsNo).FromXML(Of Boolean)(False)
|
||||||
If Not e.Value(Name_Labels).IsEmptyString Then Labels.ListAddList(e.Value(Name_Labels).Split("|"), l)
|
If Not e.Value(Name_Labels).IsEmptyString Then Labels.ListAddList(e.Value(Name_Labels).Split("|"), l)
|
||||||
If Not e.Value(Name_Labels_Excluded).IsEmptyString Then LabelsExcluded.ListAddList(e.Value(Name_Labels_Excluded).Split("|"), l)
|
If Not e.Value(Name_Labels_Excluded).IsEmptyString Then LabelsExcluded.ListAddList(e.Value(Name_Labels_Excluded).Split("|"), l)
|
||||||
|
LabelsExcludedIgnore = e.Value(Name_LabelsExcludedIgnore).FromXML(Of Boolean)(False)
|
||||||
If Not e.Value(Name_Sites).IsEmptyString Then Sites.ListAddList(e.Value(Name_Sites).Split("|"), l)
|
If Not e.Value(Name_Sites).IsEmptyString Then Sites.ListAddList(e.Value(Name_Sites).Split("|"), l)
|
||||||
If Not e.Value(Name_Sites_Excluded).IsEmptyString Then SitesExcluded.ListAddList(e.Value(Name_Sites_Excluded).Split("|"), l)
|
If Not e.Value(Name_Sites_Excluded).IsEmptyString Then SitesExcluded.ListAddList(e.Value(Name_Sites_Excluded).Split("|"), l)
|
||||||
|
|
||||||
|
Regular = e.Value(Name_Regular).FromXML(Of Boolean)(True)
|
||||||
|
Temporary = e.Value(Name_Temporary).FromXML(Of Boolean)(True)
|
||||||
|
Favorite = e.Value(Name_Favorite).FromXML(Of Boolean)(True)
|
||||||
|
ReadyForDownload = e.Value(Name_ReadyForDownload).FromXML(Of Boolean)(True)
|
||||||
|
ReadyForDownloadIgnore = e.Value(Name_ReadyForDownloadIgnore).FromXML(Of Boolean)(False)
|
||||||
|
|
||||||
|
If e.Contains(Name_SubscriptionsOnly) Then
|
||||||
|
DownloadUsers = Not e.Value(Name_SubscriptionsOnly).FromXML(Of Boolean)(False)
|
||||||
|
Else
|
||||||
|
DownloadUsers = e.Value(Name_DownloadUsers).FromXML(Of Boolean)(True)
|
||||||
|
End If
|
||||||
|
If e.Contains(Name_Subscriptions) Then
|
||||||
|
DownloadSubscriptions = e.Value(Name_Subscriptions).FromXML(Of Boolean)(False)
|
||||||
|
Else
|
||||||
|
DownloadSubscriptions = e.Value(Name_DownloadSubscriptions).FromXML(Of Boolean)(False)
|
||||||
|
End If
|
||||||
|
|
||||||
|
UsersCount = e.Value(Name_UsersCount).FromXML(Of Integer)(0)
|
||||||
|
DaysNumber = e.Value(Name_DaysNumber).FromXML(Of Integer)(-1)
|
||||||
|
DaysIsDownloaded = e.Value(Name_DaysIsDownloaded).FromXML(Of Boolean)(False)
|
||||||
|
UserDeleted = e.Value(Name_UserDeleted).FromXML(Of Boolean)(False)
|
||||||
|
UserSuspended = e.Value(Name_UserSuspended).FromXML(Of Boolean)(True)
|
||||||
|
UserExists = e.Value(Name_UserExists).FromXML(Of Boolean)(True)
|
||||||
|
DateFrom = AConvert(Of Date)(e.Value(Name_DateFrom), DateTimeDefaultProvider, Nothing)
|
||||||
|
DateTo = AConvert(Of Date)(e.Value(Name_DateTo), DateTimeDefaultProvider, Nothing)
|
||||||
|
DateMode = e.Value(Name_DateMode).FromXML(Of Integer)(ShowingDates.Off)
|
||||||
|
IsViewFilter = e.Value(Name_IsViewFilter).FromXML(Of Boolean)(False)
|
||||||
End Sub
|
End Sub
|
||||||
Protected Function Export(ByVal e As EContainer) As EContainer
|
Protected Overridable Function Export(ByVal e As EContainer) As EContainer
|
||||||
e.AddRange({New EContainer(Name_Name, Name),
|
e.AddRange({New EContainer(Name_Name, Name),
|
||||||
New EContainer(Name_Temporary, CInt(Temporary)),
|
New EContainer(Name_LabelsNo, LabelsNo.BoolToInteger),
|
||||||
New EContainer(Name_Favorite, CInt(Favorite)),
|
|
||||||
New EContainer(Name_ReadyForDownload, ReadyForDownload.BoolToInteger),
|
|
||||||
New EContainer(Name_ReadyForDownloadIgnore, ReadyForDownloadIgnore.BoolToInteger),
|
|
||||||
New EContainer(Name_Subscriptions, Subscriptions.BoolToInteger),
|
|
||||||
New EContainer(Name_SubscriptionsOnly, SubscriptionsOnly.BoolToInteger),
|
|
||||||
New EContainer(Name_UsersCount, UsersCount),
|
|
||||||
New EContainer(Name_Labels, Labels.ListToString("|")),
|
New EContainer(Name_Labels, Labels.ListToString("|")),
|
||||||
New EContainer(Name_Labels_Excluded, LabelsExcluded.ListToString("|")),
|
New EContainer(Name_Labels_Excluded, LabelsExcluded.ListToString("|")),
|
||||||
|
New EContainer(Name_LabelsExcludedIgnore, LabelsExcludedIgnore.BoolToInteger),
|
||||||
New EContainer(Name_Sites, Sites.ListToString("|")),
|
New EContainer(Name_Sites, Sites.ListToString("|")),
|
||||||
New EContainer(Name_Sites_Excluded, SitesExcluded.ListToString("|"))})
|
New EContainer(Name_Sites_Excluded, SitesExcluded.ListToString("|")),
|
||||||
|
New EContainer(Name_Regular, Regular.BoolToInteger),
|
||||||
|
New EContainer(Name_Temporary, Temporary.BoolToInteger),
|
||||||
|
New EContainer(Name_Favorite, Favorite.BoolToInteger),
|
||||||
|
New EContainer(Name_ReadyForDownload, ReadyForDownload.BoolToInteger),
|
||||||
|
New EContainer(Name_ReadyForDownloadIgnore, ReadyForDownloadIgnore.BoolToInteger),
|
||||||
|
New EContainer(Name_DownloadUsers, DownloadUsers.BoolToInteger),
|
||||||
|
New EContainer(Name_DownloadSubscriptions, DownloadSubscriptions.BoolToInteger),
|
||||||
|
New EContainer(Name_UsersCount, UsersCount),
|
||||||
|
New EContainer(Name_DaysNumber, DaysNumber),
|
||||||
|
New EContainer(Name_DaysIsDownloaded, DaysIsDownloaded.BoolToInteger),
|
||||||
|
New EContainer(Name_UserDeleted, UserDeleted.BoolToInteger),
|
||||||
|
New EContainer(Name_UserSuspended, UserSuspended.BoolToInteger),
|
||||||
|
New EContainer(Name_UserExists, UserExists.BoolToInteger),
|
||||||
|
New EContainer(Name_DateFrom, AConvert(Of String)(DateFrom, DateTimeDefaultProvider, String.Empty)),
|
||||||
|
New EContainer(Name_DateTo, AConvert(Of String)(DateTo, DateTimeDefaultProvider, String.Empty)),
|
||||||
|
New EContainer(Name_DateMode, CInt(DateMode)),
|
||||||
|
New EContainer(Name_IsViewFilter, IsViewFilter.BoolToInteger)})
|
||||||
Return e
|
Return e
|
||||||
End Function
|
End Function
|
||||||
|
#End Region
|
||||||
#Region "IDisposable Support"
|
#Region "IDisposable Support"
|
||||||
Protected disposedValue As Boolean = False
|
Protected disposedValue As Boolean = False
|
||||||
Protected Overridable Overloads Sub Dispose(ByVal disposing As Boolean)
|
Protected Overridable Overloads Sub Dispose(ByVal disposing As Boolean)
|
||||||
|
|||||||
87
SCrawler/Editors/GlobalSettingsForm.Designer.vb
generated
87
SCrawler/Editors/GlobalSettingsForm.Designer.vb
generated
@@ -50,6 +50,7 @@ Namespace Editors
|
|||||||
Dim ActionButton10 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton10 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
Dim TP_OPEN_INFO As System.Windows.Forms.TableLayoutPanel
|
Dim TP_OPEN_INFO As System.Windows.Forms.TableLayoutPanel
|
||||||
Dim TP_OPEN_PROGRESS As System.Windows.Forms.TableLayoutPanel
|
Dim TP_OPEN_PROGRESS As System.Windows.Forms.TableLayoutPanel
|
||||||
|
Dim TP_BEHAVIOR_F6 As System.Windows.Forms.TableLayoutPanel
|
||||||
Dim TAB_DOWN As System.Windows.Forms.TabPage
|
Dim TAB_DOWN As System.Windows.Forms.TabPage
|
||||||
Dim TP_DOWNLOADING As System.Windows.Forms.TableLayoutPanel
|
Dim TP_DOWNLOADING As System.Windows.Forms.TableLayoutPanel
|
||||||
Dim ActionButton11 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
Dim ActionButton11 As PersonalUtilities.Forms.Controls.Base.ActionButton = New PersonalUtilities.Forms.Controls.Base.ActionButton()
|
||||||
@@ -140,6 +141,8 @@ Namespace Editors
|
|||||||
Me.CH_USE_DEF_ACC = New System.Windows.Forms.CheckBox()
|
Me.CH_USE_DEF_ACC = New System.Windows.Forms.CheckBox()
|
||||||
Me.CH_NOTIFY_LOG = New System.Windows.Forms.CheckBox()
|
Me.CH_NOTIFY_LOG = New System.Windows.Forms.CheckBox()
|
||||||
Me.CH_FEED_UP_FILE_LOC_MOVE = New System.Windows.Forms.CheckBox()
|
Me.CH_FEED_UP_FILE_LOC_MOVE = New System.Windows.Forms.CheckBox()
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY = New System.Windows.Forms.CheckBox()
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY = New System.Windows.Forms.CheckBox()
|
||||||
Me.TXT_CHANNELS_ROWS = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
Me.TXT_CHANNELS_ROWS = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
||||||
Me.TXT_CHANNELS_COLUMNS = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
Me.TXT_CHANNELS_COLUMNS = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
||||||
Me.CH_DOWN_IMAGES_NATIVE = New System.Windows.Forms.CheckBox()
|
Me.CH_DOWN_IMAGES_NATIVE = New System.Windows.Forms.CheckBox()
|
||||||
@@ -151,6 +154,7 @@ Namespace Editors
|
|||||||
Me.CH_DOWN_OPEN_INFO = New System.Windows.Forms.CheckBox()
|
Me.CH_DOWN_OPEN_INFO = New System.Windows.Forms.CheckBox()
|
||||||
Me.CH_RECYCLE_DEL = New System.Windows.Forms.CheckBox()
|
Me.CH_RECYCLE_DEL = New System.Windows.Forms.CheckBox()
|
||||||
Me.CH_DOWN_OPEN_PROGRESS = New System.Windows.Forms.CheckBox()
|
Me.CH_DOWN_OPEN_PROGRESS = New System.Windows.Forms.CheckBox()
|
||||||
|
Me.CH_DOWN_ALL_F6_USE = New System.Windows.Forms.CheckBox()
|
||||||
Me.TXT_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
Me.TXT_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
||||||
Me.TXT_DOWN_COMPLETE_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
Me.TXT_DOWN_COMPLETE_SCRIPT = New PersonalUtilities.Forms.Controls.TextBoxExtended()
|
||||||
Me.CH_UNAME_UP = New System.Windows.Forms.CheckBox()
|
Me.CH_UNAME_UP = New System.Windows.Forms.CheckBox()
|
||||||
@@ -190,6 +194,7 @@ Namespace Editors
|
|||||||
Me.TAB_MAIN = New System.Windows.Forms.TabControl()
|
Me.TAB_MAIN = New System.Windows.Forms.TabControl()
|
||||||
Me.TAB_ENVIR = New System.Windows.Forms.TabPage()
|
Me.TAB_ENVIR = New System.Windows.Forms.TabPage()
|
||||||
Me.CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer()
|
Me.CONTAINER_MAIN = New System.Windows.Forms.ToolStripContainer()
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK = New System.Windows.Forms.CheckBox()
|
||||||
TP_BASIS = New System.Windows.Forms.TableLayoutPanel()
|
TP_BASIS = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TP_IMAGES = New System.Windows.Forms.TableLayoutPanel()
|
TP_IMAGES = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TP_FILE_NAME = New System.Windows.Forms.TableLayoutPanel()
|
TP_FILE_NAME = New System.Windows.Forms.TableLayoutPanel()
|
||||||
@@ -206,6 +211,7 @@ Namespace Editors
|
|||||||
TP_BEHAVIOR = New System.Windows.Forms.TableLayoutPanel()
|
TP_BEHAVIOR = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TP_OPEN_INFO = New System.Windows.Forms.TableLayoutPanel()
|
TP_OPEN_INFO = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TP_OPEN_PROGRESS = New System.Windows.Forms.TableLayoutPanel()
|
TP_OPEN_PROGRESS = New System.Windows.Forms.TableLayoutPanel()
|
||||||
|
TP_BEHAVIOR_F6 = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TAB_DOWN = New System.Windows.Forms.TabPage()
|
TAB_DOWN = New System.Windows.Forms.TabPage()
|
||||||
TP_DOWNLOADING = New System.Windows.Forms.TableLayoutPanel()
|
TP_DOWNLOADING = New System.Windows.Forms.TableLayoutPanel()
|
||||||
TP_MISSING_DATA = New System.Windows.Forms.TableLayoutPanel()
|
TP_MISSING_DATA = New System.Windows.Forms.TableLayoutPanel()
|
||||||
@@ -248,6 +254,7 @@ Namespace Editors
|
|||||||
CType(Me.TXT_CLOSE_SCRIPT, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.TXT_CLOSE_SCRIPT, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
TP_OPEN_INFO.SuspendLayout()
|
TP_OPEN_INFO.SuspendLayout()
|
||||||
TP_OPEN_PROGRESS.SuspendLayout()
|
TP_OPEN_PROGRESS.SuspendLayout()
|
||||||
|
TP_BEHAVIOR_F6.SuspendLayout()
|
||||||
TAB_DOWN.SuspendLayout()
|
TAB_DOWN.SuspendLayout()
|
||||||
TP_DOWNLOADING.SuspendLayout()
|
TP_DOWNLOADING.SuspendLayout()
|
||||||
CType(Me.TXT_SCRIPT, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.TXT_SCRIPT, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
@@ -1050,6 +1057,30 @@ Namespace Editors
|
|||||||
TT_MAIN.SetToolTip(Me.CH_FEED_UP_FILE_LOC_MOVE, "The file location will be updated in the session data and in the feeds data")
|
TT_MAIN.SetToolTip(Me.CH_FEED_UP_FILE_LOC_MOVE, "The file location will be updated in the session data and in the feeds data")
|
||||||
Me.CH_FEED_UP_FILE_LOC_MOVE.UseVisualStyleBackColor = True
|
Me.CH_FEED_UP_FILE_LOC_MOVE.UseVisualStyleBackColor = True
|
||||||
'
|
'
|
||||||
|
'CH_DOWN_ALL_F6_NOTIFY
|
||||||
|
'
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.AutoSize = True
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.Location = New System.Drawing.Point(210, 4)
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.Name = "CH_DOWN_ALL_F6_NOTIFY"
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.Size = New System.Drawing.Size(199, 17)
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.TabIndex = 1
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.Text = "'F6' confirmation"
|
||||||
|
TT_MAIN.SetToolTip(Me.CH_DOWN_ALL_F6_NOTIFY, "Request confirmation to download all users when pressing 'F6'")
|
||||||
|
Me.CH_DOWN_ALL_F6_NOTIFY.UseVisualStyleBackColor = True
|
||||||
|
'
|
||||||
|
'CH_DOWN_ALL_NOTIFY
|
||||||
|
'
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.AutoSize = True
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.Location = New System.Drawing.Point(416, 4)
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.Name = "CH_DOWN_ALL_NOTIFY"
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.Size = New System.Drawing.Size(199, 17)
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.TabIndex = 2
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.Text = "Confirmation of downloading all"
|
||||||
|
TT_MAIN.SetToolTip(Me.CH_DOWN_ALL_NOTIFY, "Request confirmation to download all users anyway")
|
||||||
|
Me.CH_DOWN_ALL_NOTIFY.UseVisualStyleBackColor = True
|
||||||
|
'
|
||||||
'TP_CHANNELS_IMGS
|
'TP_CHANNELS_IMGS
|
||||||
'
|
'
|
||||||
TP_CHANNELS_IMGS.ColumnCount = 2
|
TP_CHANNELS_IMGS.ColumnCount = 2
|
||||||
@@ -1171,15 +1202,17 @@ Namespace Editors
|
|||||||
TP_CHANNELS.Controls.Add(Me.CH_COPY_CHANNEL_USER_IMAGE, 0, 2)
|
TP_CHANNELS.Controls.Add(Me.CH_COPY_CHANNEL_USER_IMAGE, 0, 2)
|
||||||
TP_CHANNELS.Controls.Add(Me.CH_CHANNELS_USERS_TEMP, 0, 4)
|
TP_CHANNELS.Controls.Add(Me.CH_CHANNELS_USERS_TEMP, 0, 4)
|
||||||
TP_CHANNELS.Controls.Add(Me.CH_COPY_CHANNEL_USER_IMAGE_ALL, 0, 3)
|
TP_CHANNELS.Controls.Add(Me.CH_COPY_CHANNEL_USER_IMAGE_ALL, 0, 3)
|
||||||
|
TP_CHANNELS.Controls.Add(Me.CH_CHANNELS_USERS_READY_MARK, 0, 5)
|
||||||
TP_CHANNELS.Dock = System.Windows.Forms.DockStyle.Fill
|
TP_CHANNELS.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
TP_CHANNELS.Location = New System.Drawing.Point(3, 3)
|
TP_CHANNELS.Location = New System.Drawing.Point(3, 3)
|
||||||
TP_CHANNELS.Name = "TP_CHANNELS"
|
TP_CHANNELS.Name = "TP_CHANNELS"
|
||||||
TP_CHANNELS.RowCount = 6
|
TP_CHANNELS.RowCount = 7
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
TP_CHANNELS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
TP_CHANNELS.Size = New System.Drawing.Size(615, 393)
|
TP_CHANNELS.Size = New System.Drawing.Size(615, 393)
|
||||||
TP_CHANNELS.TabIndex = 0
|
TP_CHANNELS.TabIndex = 0
|
||||||
@@ -1226,10 +1259,11 @@ Namespace Editors
|
|||||||
TP_BEHAVIOR.Controls.Add(TP_OPEN_INFO, 0, 4)
|
TP_BEHAVIOR.Controls.Add(TP_OPEN_INFO, 0, 4)
|
||||||
TP_BEHAVIOR.Controls.Add(Me.CH_RECYCLE_DEL, 0, 3)
|
TP_BEHAVIOR.Controls.Add(Me.CH_RECYCLE_DEL, 0, 3)
|
||||||
TP_BEHAVIOR.Controls.Add(TP_OPEN_PROGRESS, 0, 5)
|
TP_BEHAVIOR.Controls.Add(TP_OPEN_PROGRESS, 0, 5)
|
||||||
|
TP_BEHAVIOR.Controls.Add(TP_BEHAVIOR_F6, 0, 8)
|
||||||
TP_BEHAVIOR.Dock = System.Windows.Forms.DockStyle.Fill
|
TP_BEHAVIOR.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
TP_BEHAVIOR.Location = New System.Drawing.Point(0, 0)
|
TP_BEHAVIOR.Location = New System.Drawing.Point(0, 0)
|
||||||
TP_BEHAVIOR.Name = "TP_BEHAVIOR"
|
TP_BEHAVIOR.Name = "TP_BEHAVIOR"
|
||||||
TP_BEHAVIOR.RowCount = 9
|
TP_BEHAVIOR.RowCount = 10
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
@@ -1238,8 +1272,10 @@ Namespace Editors
|
|||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
|
||||||
|
TP_BEHAVIOR.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
|
||||||
TP_BEHAVIOR.Size = New System.Drawing.Size(621, 399)
|
TP_BEHAVIOR.Size = New System.Drawing.Size(621, 399)
|
||||||
TP_BEHAVIOR.TabIndex = 0
|
TP_BEHAVIOR.TabIndex = 0
|
||||||
'
|
'
|
||||||
@@ -1376,6 +1412,36 @@ Namespace Editors
|
|||||||
Me.CH_DOWN_OPEN_PROGRESS.Text = "Open the 'Progress' form when the download starts"
|
Me.CH_DOWN_OPEN_PROGRESS.Text = "Open the 'Progress' form when the download starts"
|
||||||
Me.CH_DOWN_OPEN_PROGRESS.UseVisualStyleBackColor = True
|
Me.CH_DOWN_OPEN_PROGRESS.UseVisualStyleBackColor = True
|
||||||
'
|
'
|
||||||
|
'TP_BEHAVIOR_F6
|
||||||
|
'
|
||||||
|
TP_BEHAVIOR_F6.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.[Single]
|
||||||
|
TP_BEHAVIOR_F6.ColumnCount = 3
|
||||||
|
TP_BEHAVIOR_F6.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
|
TP_BEHAVIOR_F6.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
|
TP_BEHAVIOR_F6.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
|
||||||
|
TP_BEHAVIOR_F6.Controls.Add(Me.CH_DOWN_ALL_F6_USE, 0, 0)
|
||||||
|
TP_BEHAVIOR_F6.Controls.Add(Me.CH_DOWN_ALL_F6_NOTIFY, 1, 0)
|
||||||
|
TP_BEHAVIOR_F6.Controls.Add(Me.CH_DOWN_ALL_NOTIFY, 2, 0)
|
||||||
|
TP_BEHAVIOR_F6.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
TP_BEHAVIOR_F6.Location = New System.Drawing.Point(1, 215)
|
||||||
|
TP_BEHAVIOR_F6.Margin = New System.Windows.Forms.Padding(0)
|
||||||
|
TP_BEHAVIOR_F6.Name = "TP_BEHAVIOR_F6"
|
||||||
|
TP_BEHAVIOR_F6.RowCount = 1
|
||||||
|
TP_BEHAVIOR_F6.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
|
TP_BEHAVIOR_F6.Size = New System.Drawing.Size(619, 25)
|
||||||
|
TP_BEHAVIOR_F6.TabIndex = 8
|
||||||
|
'
|
||||||
|
'CH_DOWN_ALL_F6_USE
|
||||||
|
'
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.AutoSize = True
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.Location = New System.Drawing.Point(4, 4)
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.Name = "CH_DOWN_ALL_F6_USE"
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.Size = New System.Drawing.Size(199, 17)
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.TabIndex = 0
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.Text = "Use 'F6' to download all users"
|
||||||
|
Me.CH_DOWN_ALL_F6_USE.UseVisualStyleBackColor = True
|
||||||
|
'
|
||||||
'TAB_DOWN
|
'TAB_DOWN
|
||||||
'
|
'
|
||||||
TAB_DOWN.Controls.Add(TP_DOWNLOADING)
|
TAB_DOWN.Controls.Add(TP_DOWNLOADING)
|
||||||
@@ -2273,6 +2339,17 @@ Namespace Editors
|
|||||||
Me.CONTAINER_MAIN.TabIndex = 0
|
Me.CONTAINER_MAIN.TabIndex = 0
|
||||||
Me.CONTAINER_MAIN.TopToolStripPanelVisible = False
|
Me.CONTAINER_MAIN.TopToolStripPanelVisible = False
|
||||||
'
|
'
|
||||||
|
'CH_CHANNELS_USERS_READY_MARK
|
||||||
|
'
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.AutoSize = True
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.Location = New System.Drawing.Point(4, 140)
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.Name = "CH_CHANNELS_USERS_READY_MARK"
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.Size = New System.Drawing.Size(607, 19)
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.TabIndex = 5
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.Text = "Set the user's mark 'Ready for download' when add from channels"
|
||||||
|
Me.CH_CHANNELS_USERS_READY_MARK.UseVisualStyleBackColor = True
|
||||||
|
'
|
||||||
'GlobalSettingsForm
|
'GlobalSettingsForm
|
||||||
'
|
'
|
||||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||||
@@ -2325,6 +2402,8 @@ Namespace Editors
|
|||||||
TP_OPEN_INFO.PerformLayout()
|
TP_OPEN_INFO.PerformLayout()
|
||||||
TP_OPEN_PROGRESS.ResumeLayout(False)
|
TP_OPEN_PROGRESS.ResumeLayout(False)
|
||||||
TP_OPEN_PROGRESS.PerformLayout()
|
TP_OPEN_PROGRESS.PerformLayout()
|
||||||
|
TP_BEHAVIOR_F6.ResumeLayout(False)
|
||||||
|
TP_BEHAVIOR_F6.PerformLayout()
|
||||||
TAB_DOWN.ResumeLayout(False)
|
TAB_DOWN.ResumeLayout(False)
|
||||||
TP_DOWNLOADING.ResumeLayout(False)
|
TP_DOWNLOADING.ResumeLayout(False)
|
||||||
TP_DOWNLOADING.PerformLayout()
|
TP_DOWNLOADING.PerformLayout()
|
||||||
@@ -2475,5 +2554,9 @@ Namespace Editors
|
|||||||
Private WithEvents TXT_H_DEF_sec_ch_ua_full_version_list As PersonalUtilities.Forms.Controls.TextBoxExtended
|
Private WithEvents TXT_H_DEF_sec_ch_ua_full_version_list As PersonalUtilities.Forms.Controls.TextBoxExtended
|
||||||
Private WithEvents TXT_H_DEF_sec_ch_ua_platform As PersonalUtilities.Forms.Controls.TextBoxExtended
|
Private WithEvents TXT_H_DEF_sec_ch_ua_platform As PersonalUtilities.Forms.Controls.TextBoxExtended
|
||||||
Private WithEvents TXT_H_DEF_sec_ch_ua_platform_version As PersonalUtilities.Forms.Controls.TextBoxExtended
|
Private WithEvents TXT_H_DEF_sec_ch_ua_platform_version As PersonalUtilities.Forms.Controls.TextBoxExtended
|
||||||
|
Private WithEvents CH_DOWN_ALL_F6_USE As CheckBox
|
||||||
|
Private WithEvents CH_DOWN_ALL_F6_NOTIFY As CheckBox
|
||||||
|
Private WithEvents CH_DOWN_ALL_NOTIFY As CheckBox
|
||||||
|
Private WithEvents CH_CHANNELS_USERS_READY_MARK As CheckBox
|
||||||
End Class
|
End Class
|
||||||
End Namespace
|
End Namespace
|
||||||
@@ -291,6 +291,9 @@ You can find more detailed information about the missing posts in the form that
|
|||||||
<metadata name="TP_OPEN_PROGRESS.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="TP_OPEN_PROGRESS.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<metadata name="TP_BEHAVIOR_F6.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
|
<value>False</value>
|
||||||
|
</metadata>
|
||||||
<metadata name="TAB_DOWN.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="TAB_DOWN.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
|||||||
@@ -72,6 +72,9 @@ Namespace Editors
|
|||||||
TXT_FOLDER_CMD.Checked = .OpenFolderInOtherProgram.Attribute
|
TXT_FOLDER_CMD.Checked = .OpenFolderInOtherProgram.Attribute
|
||||||
TXT_CLOSE_SCRIPT.Text = .ClosingCommand
|
TXT_CLOSE_SCRIPT.Text = .ClosingCommand
|
||||||
TXT_CLOSE_SCRIPT.Checked = .ClosingCommand.Attribute
|
TXT_CLOSE_SCRIPT.Checked = .ClosingCommand.Attribute
|
||||||
|
CH_DOWN_ALL_F6_USE.Checked = .DownloadAll_UseF6
|
||||||
|
CH_DOWN_ALL_F6_NOTIFY.Checked = .DownloadAll_UseF6_Confirm
|
||||||
|
CH_DOWN_ALL_NOTIFY.Checked = .DownloadAll_Confirm
|
||||||
'Notifications
|
'Notifications
|
||||||
CH_NOTIFY_SILENT.Checked = .NotificationsSilentMode
|
CH_NOTIFY_SILENT.Checked = .NotificationsSilentMode
|
||||||
CH_NOTIFY_SHOW_BASE.Checked = .ShowNotifications
|
CH_NOTIFY_SHOW_BASE.Checked = .ShowNotifications
|
||||||
@@ -108,7 +111,7 @@ Namespace Editors
|
|||||||
CH_STD_YT_CREATE_URL.Checked = .STDownloader_CreateUrlFiles
|
CH_STD_YT_CREATE_URL.Checked = .STDownloader_CreateUrlFiles
|
||||||
'Downloading
|
'Downloading
|
||||||
CH_UDESCR_UP.Checked = .UpdateUserDescriptionEveryTime
|
CH_UDESCR_UP.Checked = .UpdateUserDescriptionEveryTime
|
||||||
CH_UNAME_UP.Checked = .UserSiteNameUpdateEveryTime
|
CH_UNAME_UP.Checked = .UpdateUserSiteNameEveryTime
|
||||||
CH_UICON_UP.Checked = .UpdateUserIconBannerEveryTime
|
CH_UICON_UP.Checked = .UpdateUserIconBannerEveryTime
|
||||||
TXT_SCRIPT.Checked = .ScriptData.Attribute
|
TXT_SCRIPT.Checked = .ScriptData.Attribute
|
||||||
TXT_SCRIPT.Text = .ScriptData.Value
|
TXT_SCRIPT.Text = .ScriptData.Value
|
||||||
@@ -135,6 +138,7 @@ Namespace Editors
|
|||||||
CH_COPY_CHANNEL_USER_IMAGE_ALL.Checked = .ChannelsAddUserImagesFromAllChannels
|
CH_COPY_CHANNEL_USER_IMAGE_ALL.Checked = .ChannelsAddUserImagesFromAllChannels
|
||||||
CH_COPY_CHANNEL_USER_IMAGE_ALL.Enabled = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
CH_COPY_CHANNEL_USER_IMAGE_ALL.Enabled = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
||||||
CH_CHANNELS_USERS_TEMP.Checked = .ChannelsDefaultTemporary
|
CH_CHANNELS_USERS_TEMP.Checked = .ChannelsDefaultTemporary
|
||||||
|
CH_CHANNELS_USERS_READY_MARK.Checked = .ChannelsDefaultReadyForDownload
|
||||||
'Feed
|
'Feed
|
||||||
TXT_FEED_ROWS.Value = .FeedDataRows.Value
|
TXT_FEED_ROWS.Value = .FeedDataRows.Value
|
||||||
TXT_FEED_COLUMNS.Value = .FeedDataColumns.Value
|
TXT_FEED_COLUMNS.Value = .FeedDataColumns.Value
|
||||||
@@ -256,6 +260,9 @@ Namespace Editors
|
|||||||
.OpenFolderInOtherProgram.Attribute.Value = TXT_FOLDER_CMD.Checked
|
.OpenFolderInOtherProgram.Attribute.Value = TXT_FOLDER_CMD.Checked
|
||||||
.ClosingCommand.Value = TXT_CLOSE_SCRIPT.Text
|
.ClosingCommand.Value = TXT_CLOSE_SCRIPT.Text
|
||||||
.ClosingCommand.Attribute.Value = TXT_CLOSE_SCRIPT.Checked
|
.ClosingCommand.Attribute.Value = TXT_CLOSE_SCRIPT.Checked
|
||||||
|
.DownloadAll_UseF6.Value = CH_DOWN_ALL_F6_USE.Checked
|
||||||
|
.DownloadAll_UseF6_Confirm.Value = CH_DOWN_ALL_F6_NOTIFY.Checked
|
||||||
|
.DownloadAll_Confirm.Value = CH_DOWN_ALL_NOTIFY.Checked
|
||||||
'Notifications
|
'Notifications
|
||||||
.NotificationsSilentMode = CH_NOTIFY_SILENT.Checked
|
.NotificationsSilentMode = CH_NOTIFY_SILENT.Checked
|
||||||
.ShowNotifications.Value = CH_NOTIFY_SHOW_BASE.Checked
|
.ShowNotifications.Value = CH_NOTIFY_SHOW_BASE.Checked
|
||||||
@@ -289,7 +296,7 @@ Namespace Editors
|
|||||||
.STDownloader_CreateUrlFiles.Value = CH_STD_YT_CREATE_URL.Checked
|
.STDownloader_CreateUrlFiles.Value = CH_STD_YT_CREATE_URL.Checked
|
||||||
'Downloading
|
'Downloading
|
||||||
.UpdateUserDescriptionEveryTime.Value = CH_UDESCR_UP.Checked
|
.UpdateUserDescriptionEveryTime.Value = CH_UDESCR_UP.Checked
|
||||||
.UserSiteNameUpdateEveryTime.Value = CH_UNAME_UP.Checked
|
.UpdateUserSiteNameEveryTime.Value = CH_UNAME_UP.Checked
|
||||||
.UpdateUserIconBannerEveryTime.Value = CH_UICON_UP.Checked
|
.UpdateUserIconBannerEveryTime.Value = CH_UICON_UP.Checked
|
||||||
.ScriptData.Value = TXT_SCRIPT.Text
|
.ScriptData.Value = TXT_SCRIPT.Text
|
||||||
.ScriptData.Attribute.Value = TXT_SCRIPT.Checked
|
.ScriptData.Attribute.Value = TXT_SCRIPT.Checked
|
||||||
@@ -320,6 +327,7 @@ Namespace Editors
|
|||||||
.FromChannelCopyImageToUser.Value = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
.FromChannelCopyImageToUser.Value = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
||||||
.ChannelsAddUserImagesFromAllChannels.Value = CH_COPY_CHANNEL_USER_IMAGE_ALL.Checked
|
.ChannelsAddUserImagesFromAllChannels.Value = CH_COPY_CHANNEL_USER_IMAGE_ALL.Checked
|
||||||
.ChannelsDefaultTemporary.Value = CH_CHANNELS_USERS_TEMP.Checked
|
.ChannelsDefaultTemporary.Value = CH_CHANNELS_USERS_TEMP.Checked
|
||||||
|
.ChannelsDefaultReadyForDownload.Value = CH_CHANNELS_USERS_READY_MARK.Checked
|
||||||
'Feed
|
'Feed
|
||||||
.FeedDataRows.Value = CInt(TXT_FEED_ROWS.Value)
|
.FeedDataRows.Value = CInt(TXT_FEED_ROWS.Value)
|
||||||
.FeedDataColumns.Value = CInt(TXT_FEED_COLUMNS.Value)
|
.FeedDataColumns.Value = CInt(TXT_FEED_COLUMNS.Value)
|
||||||
|
|||||||
@@ -22,19 +22,22 @@ Friend Class LabelsKeeper : Implements ICollection(Of String), IMyEnumerator(Of
|
|||||||
Return NewLabels.Count > 0
|
Return NewLabels.Count > 0
|
||||||
End Get
|
End Get
|
||||||
End Property
|
End Property
|
||||||
Friend ReadOnly Property Current As XMLValuesCollection(Of String)
|
'URGENT: remove these properties (2024.03)
|
||||||
Friend ReadOnly Property Excluded As XMLValuesCollection(Of String)
|
<Obsolete> Friend ReadOnly Property Current As XMLValuesCollection(Of String)
|
||||||
Friend ReadOnly Property ExcludedIgnore As XMLValue(Of Boolean)
|
<Obsolete> Friend ReadOnly Property Excluded As XMLValuesCollection(Of String)
|
||||||
|
<Obsolete> Friend ReadOnly Property ExcludedIgnore As XMLValue(Of Boolean)
|
||||||
Friend Sub New(ByRef x As XmlFile)
|
Friend Sub New(ByRef x As XmlFile)
|
||||||
LabelsList = New List(Of String)
|
LabelsList = New List(Of String)
|
||||||
NewLabels = New List(Of String)
|
NewLabels = New List(Of String)
|
||||||
If LabelsFile.Exists Then LabelsList.ListAddList(IO.File.ReadAllLines(LabelsFile), LAP.NotContainsOnly)
|
If LabelsFile.Exists Then LabelsList.ListAddList(IO.File.ReadAllLines(LabelsFile), LAP.NotContainsOnly)
|
||||||
|
#Disable Warning BC40008
|
||||||
Current = New XMLValuesCollection(Of String)(IXMLValuesCollection.Modes.String, "LatestSelectedLabels",, x) With {.ListAddParameters = LAP.NotContainsOnly}
|
Current = New XMLValuesCollection(Of String)(IXMLValuesCollection.Modes.String, "LatestSelectedLabels",, x) With {.ListAddParameters = LAP.NotContainsOnly}
|
||||||
Excluded = New XMLValuesCollection(Of String)(IXMLValuesCollection.Modes.String, "LatestExcludedLabels",, x) With {.ListAddParameters = LAP.NotContainsOnly}
|
Excluded = New XMLValuesCollection(Of String)(IXMLValuesCollection.Modes.String, "LatestExcludedLabels",, x) With {.ListAddParameters = LAP.NotContainsOnly}
|
||||||
ExcludedIgnore = New XMLValue(Of Boolean)("LatestExcludedLabelsIgnore", False, x)
|
ExcludedIgnore = New XMLValue(Of Boolean)("LatestExcludedLabelsIgnore", False, x)
|
||||||
Dim lp As New ListAddParams(LAP.NotContainsOnly + LAP.IgnoreICopier)
|
Dim lp As New ListAddParams(LAP.NotContainsOnly + LAP.IgnoreICopier)
|
||||||
If Current.Count > 0 Then LabelsList.ListAddList(Current, lp)
|
If Current.Count > 0 Then LabelsList.ListAddList(Current, lp)
|
||||||
If Excluded.Count > 0 Then LabelsList.ListAddList(Excluded, lp)
|
If Excluded.Count > 0 Then LabelsList.ListAddList(Excluded, lp)
|
||||||
|
#Enable Warning
|
||||||
End Sub
|
End Sub
|
||||||
Friend ReadOnly Property ToList As List(Of String)
|
Friend ReadOnly Property ToList As List(Of String)
|
||||||
Get
|
Get
|
||||||
@@ -109,7 +112,9 @@ Friend Class LabelsKeeper : Implements ICollection(Of String), IMyEnumerator(Of
|
|||||||
Private disposedValue As Boolean = False
|
Private disposedValue As Boolean = False
|
||||||
Protected Overridable Overloads Sub Dispose(ByVal disposing As Boolean)
|
Protected Overridable Overloads Sub Dispose(ByVal disposing As Boolean)
|
||||||
If Not disposedValue Then
|
If Not disposedValue Then
|
||||||
|
#Disable Warning BC40008
|
||||||
If disposing Then Clear() : Current.Dispose() : Excluded.Dispose()
|
If disposing Then Clear() : Current.Dispose() : Excluded.Dispose()
|
||||||
|
#Enable Warning
|
||||||
disposedValue = True
|
disposedValue = True
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|||||||
@@ -11,6 +11,14 @@ Imports SCrawler.API
|
|||||||
Imports SCrawler.API.Base
|
Imports SCrawler.API.Base
|
||||||
Friend Class ListImagesLoader
|
Friend Class ListImagesLoader
|
||||||
Private ReadOnly Property MyList As ListView
|
Private ReadOnly Property MyList As ListView
|
||||||
|
Private Class AdvDistinctComparer : Implements IEqualityComparer(Of IUserData)
|
||||||
|
Private Overloads Function Equals(ByVal x As IUserData, ByVal y As IUserData) As Boolean Implements IEqualityComparer(Of IUserData).Equals
|
||||||
|
Return DirectCast(x, UserDataBase).LVIKey.CompareTo(DirectCast(y, UserDataBase).LVIKey)
|
||||||
|
End Function
|
||||||
|
Private Overloads Function GetHashCode(ByVal Obj As IUserData) As Integer Implements IEqualityComparer(Of IUserData).GetHashCode
|
||||||
|
Return DirectCast(Obj, UserDataBase).GetHashCode
|
||||||
|
End Function
|
||||||
|
End Class
|
||||||
Private Structure UserOption : Implements IComparable(Of UserOption)
|
Private Structure UserOption : Implements IComparable(Of UserOption)
|
||||||
Friend ReadOnly User As IUserData
|
Friend ReadOnly User As IUserData
|
||||||
Friend ReadOnly LVI As ListViewItem
|
Friend ReadOnly LVI As ListViewItem
|
||||||
@@ -110,10 +118,10 @@ Friend Class ListImagesLoader
|
|||||||
If Settings.FastProfilesLoading Then
|
If Settings.FastProfilesLoading Then
|
||||||
Settings.Users.ListReindex
|
Settings.Users.ListReindex
|
||||||
|
|
||||||
If Settings.ShowingMode.Value = ShowingModes.AdvancedFilter Then
|
If Not Settings.ShowAllUsers Then
|
||||||
UserDataList = GetAdvancedFilteredUsers(Of UserOption)()
|
UserDataList = GetAdvancedFilteredUsers(Of UserOption)()
|
||||||
Else
|
Else
|
||||||
UserDataList = (From u As IUserData In Settings.Users Where u.FitToAddParams Select New UserOption(u, MyList)).ListIfNothing
|
UserDataList = Settings.Users.Select(Function(u) New UserOption(u, MyList)).ToList
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If UserDataList.ListExists Then UserDataList.Sort()
|
If UserDataList.ListExists Then UserDataList.Sort()
|
||||||
@@ -134,18 +142,16 @@ Friend Class ListImagesLoader
|
|||||||
Dim t As New List(Of Task)
|
Dim t As New List(Of Task)
|
||||||
Dim advUsers As List(Of IUserData) = Nothing
|
Dim advUsers As List(Of IUserData) = Nothing
|
||||||
Dim isAdv As Boolean = False
|
Dim isAdv As Boolean = False
|
||||||
If Settings.ShowingMode.Value = ShowingModes.AdvancedFilter Then
|
If Not Settings.ShowAllUsers Then
|
||||||
isAdv = True
|
isAdv = True
|
||||||
advUsers = GetAdvancedFilteredUsers(Of IUserData)()
|
advUsers = GetAdvancedFilteredUsers(Of IUserData)()
|
||||||
If Not advUsers.ListExists Then UpdateInProgress = False : MyList.EndUpdate() : Exit Sub
|
If Not advUsers.ListExists Then UpdateInProgress = False : MyList.EndUpdate() : Exit Sub
|
||||||
End If
|
End If
|
||||||
For Each User As IUserData In If(isAdv, advUsers, Settings.Users)
|
For Each User As IUserData In If(isAdv, advUsers, Settings.Users)
|
||||||
If User.FitToAddParams Then
|
If Settings.ViewModeIsPicture Then
|
||||||
If Settings.ViewModeIsPicture Then
|
t.Add(Task.Run(Sub() UpdateUser(User, True)))
|
||||||
t.Add(Task.Run(Sub() UpdateUser(User, True)))
|
Else
|
||||||
Else
|
UpdateUser(User, True)
|
||||||
UpdateUser(User, True)
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
If t.Count > 0 Then Task.WhenAll(t.ToArray) : t.Clear()
|
If t.Count > 0 Then Task.WhenAll(t.ToArray) : t.Clear()
|
||||||
@@ -168,7 +174,11 @@ Friend Class ListImagesLoader
|
|||||||
With Settings.AdvancedFilter.GetUsers
|
With Settings.AdvancedFilter.GetUsers
|
||||||
If .ListExists Then
|
If .ListExists Then
|
||||||
With ListAddList(Nothing, .Select(Function(u) Settings.GetUser(u, True)), LAP.NotContainsOnly, LAP.IgnoreICopier)
|
With ListAddList(Nothing, .Select(Function(u) Settings.GetUser(u, True)), LAP.NotContainsOnly, LAP.IgnoreICopier)
|
||||||
If .ListExists Then Return If(GetType(T) Is GetType(UserOption), .Select(Function(u) New UserOption(u, MyList)).ToList, .Self)
|
If .ListExists Then
|
||||||
|
With .Distinct(New AdvDistinctComparer)
|
||||||
|
Return If(GetType(T) Is GetType(UserOption), .Select(Function(u) New UserOption(u, MyList)).ToList, .Self.ToList)
|
||||||
|
End With
|
||||||
|
End If
|
||||||
End With
|
End With
|
||||||
End If
|
End If
|
||||||
End With
|
End With
|
||||||
|
|||||||
286
SCrawler/MainFrame.Designer.vb
generated
286
SCrawler/MainFrame.Designer.vb
generated
@@ -33,8 +33,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Dim CONTEXT_SEP_5 As System.Windows.Forms.ToolStripSeparator
|
Dim CONTEXT_SEP_5 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim SEP_4 As System.Windows.Forms.ToolStripSeparator
|
Dim SEP_4 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim MENU_VIEW_SEP_2 As System.Windows.Forms.ToolStripSeparator
|
Dim MENU_VIEW_SEP_2 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim MENU_VIEW_SEP_4 As System.Windows.Forms.ToolStripSeparator
|
|
||||||
Dim MENU_VIEW_SEP_3 As System.Windows.Forms.ToolStripSeparator
|
|
||||||
Dim TRAY_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
Dim TRAY_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim MENU_DOWN_ALL_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
Dim MENU_DOWN_ALL_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim TRAY_SEP_2 As System.Windows.Forms.ToolStripSeparator
|
Dim TRAY_SEP_2 As System.Windows.Forms.ToolStripSeparator
|
||||||
@@ -43,7 +41,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Dim MENU_DOWN_ALL_SEP_4 As System.Windows.Forms.ToolStripSeparator
|
Dim MENU_DOWN_ALL_SEP_4 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim MENU_INFO As System.Windows.Forms.ToolStripDropDownButton
|
Dim MENU_INFO As System.Windows.Forms.ToolStripDropDownButton
|
||||||
Dim MENU_VIEW_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
Dim MENU_VIEW_SEP_1 As System.Windows.Forms.ToolStripSeparator
|
||||||
Dim MENU_VIEW_SEP_5 As System.Windows.Forms.ToolStripSeparator
|
|
||||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainFrame))
|
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainFrame))
|
||||||
Me.MENU_INFO_SHOW_INFO = New System.Windows.Forms.ToolStripMenuItem()
|
Me.MENU_INFO_SHOW_INFO = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.MENU_INFO_SHOW_QUEUE = New System.Windows.Forms.ToolStripMenuItem()
|
Me.MENU_INFO_SHOW_QUEUE = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
@@ -61,16 +58,8 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Me.BTT_DOWN_SAVED = New System.Windows.Forms.ToolStripButton()
|
Me.BTT_DOWN_SAVED = New System.Windows.Forms.ToolStripButton()
|
||||||
Me.MENU_DOWN_ALL = New System.Windows.Forms.ToolStripDropDownButton()
|
Me.MENU_DOWN_ALL = New System.Windows.Forms.ToolStripDropDownButton()
|
||||||
Me.BTT_DOWN_SELECTED = New SCrawler.ToolStripKeyMenuItem()
|
Me.BTT_DOWN_SELECTED = New SCrawler.ToolStripKeyMenuItem()
|
||||||
Me.MENU_D_DOWN_ALL = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_DOWN_ALL = New SCrawler.ToolStripKeyMenuItem()
|
Me.BTT_DOWN_ALL = New SCrawler.ToolStripKeyMenuItem()
|
||||||
Me.BTT_DOWN_ALL_SUBSCR = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.BTT_DOWN_SITE = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_DOWN_ALL_FULL = New SCrawler.ToolStripKeyMenuItem()
|
Me.BTT_DOWN_ALL_FULL = New SCrawler.ToolStripKeyMenuItem()
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.BTT_DOWN_SITE_FULL = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR = New SCrawler.ToolStripKeyMenuItem()
|
|
||||||
Me.BTT_DOWN_SPEC = New SCrawler.ToolStripKeyMenuItem()
|
Me.BTT_DOWN_SPEC = New SCrawler.ToolStripKeyMenuItem()
|
||||||
Me.BTT_DOWN_VIDEO = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_DOWN_VIDEO = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_ADD_NEW_GROUP = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_ADD_NEW_GROUP = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
@@ -83,26 +72,12 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Me.BTT_VIEW_SMALL = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_VIEW_SMALL = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_VIEW_LIST = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_VIEW_LIST = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_VIEW_DETAILS = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_VIEW_DETAILS = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_MODE_SHOW_USERS = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_MODE_SHOW_SUBSCRIPTIONS = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SITE_ALL = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SITE_SPECIFIC = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_ALL = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_SHOW_ALL = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_SHOW_REGULAR = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_TEMP = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_FAV = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_DELETED = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_SUSPENDED = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_LABELS = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_NO_LABELS = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_SHOW_GROUPS = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_SHOW_SHOW_GROUPS = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_SHOW_GROUP_USERS = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_SHOW_GROUP_USERS = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_SHOW_FILTER_ADV = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_SHOW_FILTER_ADV = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN = New System.Windows.Forms.ToolStripMenuItem()
|
|
||||||
Me.BTT_VIEW_FILTER_SAVE = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_VIEW_FILTER_SAVE = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
|
Me.BTT_VIEW_FILTER_SAVE_AS_GROUP = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_VIEW_FILTER_LOAD = New System.Windows.Forms.ToolStripMenuItem()
|
Me.BTT_VIEW_FILTER_LOAD = New System.Windows.Forms.ToolStripMenuItem()
|
||||||
Me.BTT_LOG = New System.Windows.Forms.ToolStripButton()
|
Me.BTT_LOG = New System.Windows.Forms.ToolStripButton()
|
||||||
Me.BTT_VERSION_INFO = New System.Windows.Forms.ToolStripButton()
|
Me.BTT_VERSION_INFO = New System.Windows.Forms.ToolStripButton()
|
||||||
@@ -158,8 +133,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
CONTEXT_SEP_5 = New System.Windows.Forms.ToolStripSeparator()
|
CONTEXT_SEP_5 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
SEP_4 = New System.Windows.Forms.ToolStripSeparator()
|
SEP_4 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
MENU_VIEW_SEP_2 = New System.Windows.Forms.ToolStripSeparator()
|
MENU_VIEW_SEP_2 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
MENU_VIEW_SEP_4 = New System.Windows.Forms.ToolStripSeparator()
|
|
||||||
MENU_VIEW_SEP_3 = New System.Windows.Forms.ToolStripSeparator()
|
|
||||||
TRAY_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
TRAY_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
MENU_DOWN_ALL_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
MENU_DOWN_ALL_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
TRAY_SEP_2 = New System.Windows.Forms.ToolStripSeparator()
|
TRAY_SEP_2 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
@@ -168,7 +141,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
MENU_DOWN_ALL_SEP_4 = New System.Windows.Forms.ToolStripSeparator()
|
MENU_DOWN_ALL_SEP_4 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
MENU_INFO = New System.Windows.Forms.ToolStripDropDownButton()
|
MENU_INFO = New System.Windows.Forms.ToolStripDropDownButton()
|
||||||
MENU_VIEW_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
MENU_VIEW_SEP_1 = New System.Windows.Forms.ToolStripSeparator()
|
||||||
MENU_VIEW_SEP_5 = New System.Windows.Forms.ToolStripSeparator()
|
|
||||||
Me.Toolbar_TOP.SuspendLayout()
|
Me.Toolbar_TOP.SuspendLayout()
|
||||||
Me.Toolbar_BOTTOM.SuspendLayout()
|
Me.Toolbar_BOTTOM.SuspendLayout()
|
||||||
Me.USER_CONTEXT.SuspendLayout()
|
Me.USER_CONTEXT.SuspendLayout()
|
||||||
@@ -228,17 +200,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'MENU_VIEW_SEP_2
|
'MENU_VIEW_SEP_2
|
||||||
'
|
'
|
||||||
MENU_VIEW_SEP_2.Name = "MENU_VIEW_SEP_2"
|
MENU_VIEW_SEP_2.Name = "MENU_VIEW_SEP_2"
|
||||||
MENU_VIEW_SEP_2.Size = New System.Drawing.Size(228, 6)
|
MENU_VIEW_SEP_2.Size = New System.Drawing.Size(268, 6)
|
||||||
'
|
|
||||||
'MENU_VIEW_SEP_4
|
|
||||||
'
|
|
||||||
MENU_VIEW_SEP_4.Name = "MENU_VIEW_SEP_4"
|
|
||||||
MENU_VIEW_SEP_4.Size = New System.Drawing.Size(228, 6)
|
|
||||||
'
|
|
||||||
'MENU_VIEW_SEP_3
|
|
||||||
'
|
|
||||||
MENU_VIEW_SEP_3.Name = "MENU_VIEW_SEP_3"
|
|
||||||
MENU_VIEW_SEP_3.Size = New System.Drawing.Size(228, 6)
|
|
||||||
'
|
'
|
||||||
'TRAY_SEP_1
|
'TRAY_SEP_1
|
||||||
'
|
'
|
||||||
@@ -319,12 +281,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'MENU_VIEW_SEP_1
|
'MENU_VIEW_SEP_1
|
||||||
'
|
'
|
||||||
MENU_VIEW_SEP_1.Name = "MENU_VIEW_SEP_1"
|
MENU_VIEW_SEP_1.Name = "MENU_VIEW_SEP_1"
|
||||||
MENU_VIEW_SEP_1.Size = New System.Drawing.Size(228, 6)
|
MENU_VIEW_SEP_1.Size = New System.Drawing.Size(268, 6)
|
||||||
'
|
|
||||||
'MENU_VIEW_SEP_5
|
|
||||||
'
|
|
||||||
MENU_VIEW_SEP_5.Name = "MENU_VIEW_SEP_5"
|
|
||||||
MENU_VIEW_SEP_5.Size = New System.Drawing.Size(228, 6)
|
|
||||||
'
|
'
|
||||||
'MENU_SETTINGS
|
'MENU_SETTINGS
|
||||||
'
|
'
|
||||||
@@ -419,7 +376,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'MENU_DOWN_ALL
|
'MENU_DOWN_ALL
|
||||||
'
|
'
|
||||||
Me.MENU_DOWN_ALL.AutoToolTip = False
|
Me.MENU_DOWN_ALL.AutoToolTip = False
|
||||||
Me.MENU_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_SELECTED, Me.MENU_D_DOWN_ALL, Me.MENU_D_DOWN_ALL_SITE, Me.BTT_DOWN_SPEC, MENU_DOWN_ALL_SEP_1, Me.BTT_DOWN_VIDEO, MENU_DOWN_ALL_SEP_2, Me.BTT_ADD_NEW_GROUP, MENU_DOWN_ALL_SEP_3, Me.BTT_SILENT_MODE, MENU_DOWN_ALL_SEP_4, Me.BTT_DOWN_AUTOMATION, Me.BTT_DOWN_AUTOMATION_PAUSE})
|
Me.MENU_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_SELECTED, Me.BTT_DOWN_ALL, Me.BTT_DOWN_ALL_FULL, Me.BTT_DOWN_SPEC, MENU_DOWN_ALL_SEP_1, Me.BTT_DOWN_VIDEO, MENU_DOWN_ALL_SEP_2, Me.BTT_ADD_NEW_GROUP, MENU_DOWN_ALL_SEP_3, Me.BTT_SILENT_MODE, MENU_DOWN_ALL_SEP_4, Me.BTT_DOWN_AUTOMATION, Me.BTT_DOWN_AUTOMATION_PAUSE})
|
||||||
Me.MENU_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
Me.MENU_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
||||||
Me.MENU_DOWN_ALL.ImageTransparentColor = System.Drawing.Color.Magenta
|
Me.MENU_DOWN_ALL.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||||
Me.MENU_DOWN_ALL.Name = "MENU_DOWN_ALL"
|
Me.MENU_DOWN_ALL.Name = "MENU_DOWN_ALL"
|
||||||
@@ -436,96 +393,25 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Me.BTT_DOWN_SELECTED.Text = "Download selected (F5)"
|
Me.BTT_DOWN_SELECTED.Text = "Download selected (F5)"
|
||||||
Me.BTT_DOWN_SELECTED.ToolTipText = "Download selected user." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F5: download, include in the feed."
|
Me.BTT_DOWN_SELECTED.ToolTipText = "Download selected user." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F5: download, include in the feed."
|
||||||
'
|
'
|
||||||
'MENU_D_DOWN_ALL
|
|
||||||
'
|
|
||||||
Me.MENU_D_DOWN_ALL.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_ALL, Me.BTT_DOWN_ALL_SUBSCR, Me.BTT_DOWN_SITE, Me.BTT_DOWN_SITE_SUBSCR})
|
|
||||||
Me.MENU_D_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.MENU_D_DOWN_ALL.Name = "MENU_D_DOWN_ALL"
|
|
||||||
Me.MENU_D_DOWN_ALL.Size = New System.Drawing.Size(221, 22)
|
|
||||||
Me.MENU_D_DOWN_ALL.Text = "Download all (F6)"
|
|
||||||
'
|
|
||||||
'BTT_DOWN_ALL
|
'BTT_DOWN_ALL
|
||||||
'
|
'
|
||||||
Me.BTT_DOWN_ALL.AutoToolTip = True
|
Me.BTT_DOWN_ALL.AutoToolTip = True
|
||||||
Me.BTT_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
Me.BTT_DOWN_ALL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
||||||
Me.BTT_DOWN_ALL.Name = "BTT_DOWN_ALL"
|
Me.BTT_DOWN_ALL.Name = "BTT_DOWN_ALL"
|
||||||
Me.BTT_DOWN_ALL.Size = New System.Drawing.Size(237, 22)
|
Me.BTT_DOWN_ALL.Size = New System.Drawing.Size(221, 22)
|
||||||
Me.BTT_DOWN_ALL.Text = "Download all (F6)"
|
Me.BTT_DOWN_ALL.Text = "Download all (F6)"
|
||||||
Me.BTT_DOWN_ALL.ToolTipText = "Download all users marked 'Ready for download' from all sites." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F6: download, inc" &
|
Me.BTT_DOWN_ALL.ToolTipText = "Download all users marked 'Ready for download' from all sites." & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "F6: download, inc" &
|
||||||
"lude in the feed."
|
"lude in the feed."
|
||||||
'
|
|
||||||
'BTT_DOWN_ALL_SUBSCR
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.Name = "BTT_DOWN_ALL_SUBSCR"
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.Size = New System.Drawing.Size(237, 22)
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.Text = "Download all subscriptions"
|
|
||||||
Me.BTT_DOWN_ALL_SUBSCR.ToolTipText = "Download all subscriptions marked 'Ready for download' from all sites."
|
|
||||||
'
|
|
||||||
'BTT_DOWN_SITE
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_SITE.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_SITE.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_SITE.Name = "BTT_DOWN_SITE"
|
|
||||||
Me.BTT_DOWN_SITE.Size = New System.Drawing.Size(237, 22)
|
|
||||||
Me.BTT_DOWN_SITE.Text = "Download all site users"
|
|
||||||
Me.BTT_DOWN_SITE.ToolTipText = "Download all users marked 'Ready for download' from specific sites."
|
|
||||||
'
|
|
||||||
'BTT_DOWN_SITE_SUBSCR
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.Name = "BTT_DOWN_SITE_SUBSCR"
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.Size = New System.Drawing.Size(237, 22)
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.Text = "Download all site subscriptions"
|
|
||||||
Me.BTT_DOWN_SITE_SUBSCR.ToolTipText = "Download all subscriptions marked 'Ready for download' from specific sites."
|
|
||||||
'
|
|
||||||
'MENU_D_DOWN_ALL_SITE
|
|
||||||
'
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_DOWN_ALL_FULL, Me.BTT_DOWN_ALL_FULL_SUBSCR, Me.BTT_DOWN_SITE_FULL, Me.BTT_DOWN_SITE_FULL_SUBSCR})
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE.Name = "MENU_D_DOWN_ALL_SITE"
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE.Size = New System.Drawing.Size(221, 22)
|
|
||||||
Me.MENU_D_DOWN_ALL_SITE.Text = "Download all [FULL]"
|
|
||||||
'
|
'
|
||||||
'BTT_DOWN_ALL_FULL
|
'BTT_DOWN_ALL_FULL
|
||||||
'
|
'
|
||||||
Me.BTT_DOWN_ALL_FULL.AutoToolTip = True
|
Me.BTT_DOWN_ALL_FULL.AutoToolTip = True
|
||||||
Me.BTT_DOWN_ALL_FULL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
Me.BTT_DOWN_ALL_FULL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
||||||
Me.BTT_DOWN_ALL_FULL.Name = "BTT_DOWN_ALL_FULL"
|
Me.BTT_DOWN_ALL_FULL.Name = "BTT_DOWN_ALL_FULL"
|
||||||
Me.BTT_DOWN_ALL_FULL.Size = New System.Drawing.Size(274, 22)
|
Me.BTT_DOWN_ALL_FULL.Size = New System.Drawing.Size(221, 22)
|
||||||
Me.BTT_DOWN_ALL_FULL.Text = "Download all [FULL]"
|
Me.BTT_DOWN_ALL_FULL.Text = "Download all [FULL]"
|
||||||
Me.BTT_DOWN_ALL_FULL.ToolTipText = "Download all users from all sites. The 'Ready for download' option will be ignore" &
|
Me.BTT_DOWN_ALL_FULL.ToolTipText = "Download all users from all sites. The 'Ready for download' option will be ignore" &
|
||||||
"d."
|
"d."
|
||||||
'
|
|
||||||
'BTT_DOWN_ALL_FULL_SUBSCR
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.Name = "BTT_DOWN_ALL_FULL_SUBSCR"
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.Size = New System.Drawing.Size(274, 22)
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.Text = "Download all subscriptions [FULL]"
|
|
||||||
Me.BTT_DOWN_ALL_FULL_SUBSCR.ToolTipText = "Download all subscriptions from all sites. The 'Ready for download' option will b" &
|
|
||||||
"e ignored."
|
|
||||||
'
|
|
||||||
'BTT_DOWN_SITE_FULL
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_SITE_FULL.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_SITE_FULL.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_SITE_FULL.Name = "BTT_DOWN_SITE_FULL"
|
|
||||||
Me.BTT_DOWN_SITE_FULL.Size = New System.Drawing.Size(274, 22)
|
|
||||||
Me.BTT_DOWN_SITE_FULL.Text = "Download all site users [FULL]"
|
|
||||||
Me.BTT_DOWN_SITE_FULL.ToolTipText = resources.GetString("BTT_DOWN_SITE_FULL.ToolTipText")
|
|
||||||
'
|
|
||||||
'BTT_DOWN_SITE_FULL_SUBSCR
|
|
||||||
'
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.AutoToolTip = True
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.Image = Global.SCrawler.My.Resources.Resources.StartPic_Green_16
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.Name = "BTT_DOWN_SITE_FULL_SUBSCR"
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.Size = New System.Drawing.Size(274, 22)
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.Text = "Download all site subscriptions [FULL]"
|
|
||||||
Me.BTT_DOWN_SITE_FULL_SUBSCR.ToolTipText = resources.GetString("BTT_DOWN_SITE_FULL_SUBSCR.ToolTipText")
|
|
||||||
'
|
'
|
||||||
'BTT_DOWN_SPEC
|
'BTT_DOWN_SPEC
|
||||||
'
|
'
|
||||||
@@ -592,7 +478,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'MENU_VIEW
|
'MENU_VIEW
|
||||||
'
|
'
|
||||||
Me.MENU_VIEW.AutoToolTip = False
|
Me.MENU_VIEW.AutoToolTip = False
|
||||||
Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_VIEW_LARGE, Me.BTT_VIEW_SMALL, Me.BTT_VIEW_LIST, Me.BTT_VIEW_DETAILS, MENU_VIEW_SEP_1, Me.BTT_MODE_SHOW_USERS, Me.BTT_MODE_SHOW_SUBSCRIPTIONS, MENU_VIEW_SEP_2, Me.BTT_SITE_ALL, Me.BTT_SITE_SPECIFIC, MENU_VIEW_SEP_3, Me.BTT_SHOW_ALL, Me.BTT_SHOW_REGULAR, Me.BTT_SHOW_TEMP, Me.BTT_SHOW_FAV, Me.BTT_SHOW_DELETED, Me.BTT_SHOW_SUSPENDED, Me.BTT_SHOW_LABELS, Me.BTT_SHOW_NO_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS, Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE, Me.BTT_SHOW_SHOW_GROUPS, Me.BTT_SHOW_GROUP_USERS, Me.BTT_SHOW_FILTER_ADV, MENU_VIEW_SEP_4, Me.BTT_SHOW_LIMIT_DATES_NOT, Me.BTT_SHOW_LIMIT_DATES_IN, MENU_VIEW_SEP_5, Me.BTT_VIEW_FILTER_SAVE, Me.BTT_VIEW_FILTER_LOAD})
|
Me.MENU_VIEW.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_VIEW_LARGE, Me.BTT_VIEW_SMALL, Me.BTT_VIEW_LIST, Me.BTT_VIEW_DETAILS, MENU_VIEW_SEP_1, Me.BTT_SHOW_ALL, Me.BTT_SHOW_SHOW_GROUPS, Me.BTT_SHOW_GROUP_USERS, Me.BTT_SHOW_FILTER_ADV, MENU_VIEW_SEP_2, Me.BTT_VIEW_FILTER_SAVE, Me.BTT_VIEW_FILTER_SAVE_AS_GROUP, Me.BTT_VIEW_FILTER_LOAD})
|
||||||
Me.MENU_VIEW.Image = CType(resources.GetObject("MENU_VIEW.Image"), System.Drawing.Image)
|
Me.MENU_VIEW.Image = CType(resources.GetObject("MENU_VIEW.Image"), System.Drawing.Image)
|
||||||
Me.MENU_VIEW.ImageTransparentColor = System.Drawing.Color.Magenta
|
Me.MENU_VIEW.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||||
Me.MENU_VIEW.Name = "MENU_VIEW"
|
Me.MENU_VIEW.Name = "MENU_VIEW"
|
||||||
@@ -602,128 +488,44 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'BTT_VIEW_LARGE
|
'BTT_VIEW_LARGE
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_LARGE.Name = "BTT_VIEW_LARGE"
|
Me.BTT_VIEW_LARGE.Name = "BTT_VIEW_LARGE"
|
||||||
Me.BTT_VIEW_LARGE.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_LARGE.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_LARGE.Text = "Large images"
|
Me.BTT_VIEW_LARGE.Text = "Large images"
|
||||||
'
|
'
|
||||||
'BTT_VIEW_SMALL
|
'BTT_VIEW_SMALL
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_SMALL.Name = "BTT_VIEW_SMALL"
|
Me.BTT_VIEW_SMALL.Name = "BTT_VIEW_SMALL"
|
||||||
Me.BTT_VIEW_SMALL.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_SMALL.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_SMALL.Text = "Small images"
|
Me.BTT_VIEW_SMALL.Text = "Small images"
|
||||||
'
|
'
|
||||||
'BTT_VIEW_LIST
|
'BTT_VIEW_LIST
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_LIST.Name = "BTT_VIEW_LIST"
|
Me.BTT_VIEW_LIST.Name = "BTT_VIEW_LIST"
|
||||||
Me.BTT_VIEW_LIST.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_LIST.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_LIST.Text = "List"
|
Me.BTT_VIEW_LIST.Text = "List"
|
||||||
'
|
'
|
||||||
'BTT_VIEW_DETAILS
|
'BTT_VIEW_DETAILS
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_DETAILS.Name = "BTT_VIEW_DETAILS"
|
Me.BTT_VIEW_DETAILS.Name = "BTT_VIEW_DETAILS"
|
||||||
Me.BTT_VIEW_DETAILS.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_DETAILS.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_DETAILS.Text = "Details"
|
Me.BTT_VIEW_DETAILS.Text = "Details"
|
||||||
'
|
'
|
||||||
'BTT_MODE_SHOW_USERS
|
|
||||||
'
|
|
||||||
Me.BTT_MODE_SHOW_USERS.CheckOnClick = True
|
|
||||||
Me.BTT_MODE_SHOW_USERS.Name = "BTT_MODE_SHOW_USERS"
|
|
||||||
Me.BTT_MODE_SHOW_USERS.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_MODE_SHOW_USERS.Text = "Show users"
|
|
||||||
'
|
|
||||||
'BTT_MODE_SHOW_SUBSCRIPTIONS
|
|
||||||
'
|
|
||||||
Me.BTT_MODE_SHOW_SUBSCRIPTIONS.CheckOnClick = True
|
|
||||||
Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Name = "BTT_MODE_SHOW_SUBSCRIPTIONS"
|
|
||||||
Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_MODE_SHOW_SUBSCRIPTIONS.Text = "Show subscriptions"
|
|
||||||
'
|
|
||||||
'BTT_SITE_ALL
|
|
||||||
'
|
|
||||||
Me.BTT_SITE_ALL.Name = "BTT_SITE_ALL"
|
|
||||||
Me.BTT_SITE_ALL.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SITE_ALL.Text = "All"
|
|
||||||
'
|
|
||||||
'BTT_SITE_SPECIFIC
|
|
||||||
'
|
|
||||||
Me.BTT_SITE_SPECIFIC.Name = "BTT_SITE_SPECIFIC"
|
|
||||||
Me.BTT_SITE_SPECIFIC.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SITE_SPECIFIC.Text = "Specific sites"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_ALL
|
'BTT_SHOW_ALL
|
||||||
'
|
'
|
||||||
Me.BTT_SHOW_ALL.Name = "BTT_SHOW_ALL"
|
Me.BTT_SHOW_ALL.Name = "BTT_SHOW_ALL"
|
||||||
Me.BTT_SHOW_ALL.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_SHOW_ALL.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_SHOW_ALL.Text = "All"
|
Me.BTT_SHOW_ALL.Text = "All"
|
||||||
'
|
'
|
||||||
'BTT_SHOW_REGULAR
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_REGULAR.Name = "BTT_SHOW_REGULAR"
|
|
||||||
Me.BTT_SHOW_REGULAR.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_REGULAR.Text = "Regular"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_TEMP
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_TEMP.Name = "BTT_SHOW_TEMP"
|
|
||||||
Me.BTT_SHOW_TEMP.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_TEMP.Text = "Temporary"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_FAV
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_FAV.Name = "BTT_SHOW_FAV"
|
|
||||||
Me.BTT_SHOW_FAV.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_FAV.Text = "Favorites"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_DELETED
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_DELETED.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(192, Byte), Integer), CType(CType(192, Byte), Integer))
|
|
||||||
Me.BTT_SHOW_DELETED.ForeColor = System.Drawing.Color.Maroon
|
|
||||||
Me.BTT_SHOW_DELETED.Name = "BTT_SHOW_DELETED"
|
|
||||||
Me.BTT_SHOW_DELETED.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_DELETED.Text = "Deleted"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_SUSPENDED
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_SUSPENDED.BackColor = System.Drawing.Color.PapayaWhip
|
|
||||||
Me.BTT_SHOW_SUSPENDED.ForeColor = System.Drawing.Color.SaddleBrown
|
|
||||||
Me.BTT_SHOW_SUSPENDED.Name = "BTT_SHOW_SUSPENDED"
|
|
||||||
Me.BTT_SHOW_SUSPENDED.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_SUSPENDED.Text = "Suspended"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_LABELS
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_LABELS.Name = "BTT_SHOW_LABELS"
|
|
||||||
Me.BTT_SHOW_LABELS.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_LABELS.Text = "Labels"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_NO_LABELS
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_NO_LABELS.Name = "BTT_SHOW_NO_LABELS"
|
|
||||||
Me.BTT_SHOW_NO_LABELS.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_NO_LABELS.Text = "No labels"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_EXCLUDED_LABELS
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS.Name = "BTT_SHOW_EXCLUDED_LABELS"
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS.Text = "Excluded labels"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_EXCLUDED_LABELS_IGNORE
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE.Name = "BTT_SHOW_EXCLUDED_LABELS_IGNORE"
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_EXCLUDED_LABELS_IGNORE.Text = "Ignore excluded labels"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_SHOW_GROUPS
|
'BTT_SHOW_SHOW_GROUPS
|
||||||
'
|
'
|
||||||
Me.BTT_SHOW_SHOW_GROUPS.Name = "BTT_SHOW_SHOW_GROUPS"
|
Me.BTT_SHOW_SHOW_GROUPS.Name = "BTT_SHOW_SHOW_GROUPS"
|
||||||
Me.BTT_SHOW_SHOW_GROUPS.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_SHOW_SHOW_GROUPS.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_SHOW_SHOW_GROUPS.Text = "Show groups instead of labels"
|
Me.BTT_SHOW_SHOW_GROUPS.Text = "Show groups instead of labels"
|
||||||
'
|
'
|
||||||
'BTT_SHOW_GROUP_USERS
|
'BTT_SHOW_GROUP_USERS
|
||||||
'
|
'
|
||||||
Me.BTT_SHOW_GROUP_USERS.AutoToolTip = True
|
Me.BTT_SHOW_GROUP_USERS.AutoToolTip = True
|
||||||
Me.BTT_SHOW_GROUP_USERS.Name = "BTT_SHOW_GROUP_USERS"
|
Me.BTT_SHOW_GROUP_USERS.Name = "BTT_SHOW_GROUP_USERS"
|
||||||
Me.BTT_SHOW_GROUP_USERS.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_SHOW_GROUP_USERS.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_SHOW_GROUP_USERS.Text = "Group users"
|
Me.BTT_SHOW_GROUP_USERS.Text = "Group users"
|
||||||
Me.BTT_SHOW_GROUP_USERS.ToolTipText = "Group users by site or labels"
|
Me.BTT_SHOW_GROUP_USERS.ToolTipText = "Group users by site or labels"
|
||||||
'
|
'
|
||||||
@@ -731,37 +533,27 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'
|
'
|
||||||
Me.BTT_SHOW_FILTER_ADV.AutoToolTip = True
|
Me.BTT_SHOW_FILTER_ADV.AutoToolTip = True
|
||||||
Me.BTT_SHOW_FILTER_ADV.Name = "BTT_SHOW_FILTER_ADV"
|
Me.BTT_SHOW_FILTER_ADV.Name = "BTT_SHOW_FILTER_ADV"
|
||||||
Me.BTT_SHOW_FILTER_ADV.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_SHOW_FILTER_ADV.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_SHOW_FILTER_ADV.Text = "Advanced filter"
|
Me.BTT_SHOW_FILTER_ADV.Text = "Filter"
|
||||||
Me.BTT_SHOW_FILTER_ADV.ToolTipText = "Advanced filter of users you want to display"
|
Me.BTT_SHOW_FILTER_ADV.ToolTipText = "Filter of users you want to display"
|
||||||
'
|
|
||||||
'BTT_SHOW_LIMIT_DATES_NOT
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT.AutoToolTip = True
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT.Name = "BTT_SHOW_LIMIT_DATES_NOT"
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT.Text = "Limit dates (not in range)"
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_NOT.ToolTipText = "Filter users whose last download date is not in the selected date range"
|
|
||||||
'
|
|
||||||
'BTT_SHOW_LIMIT_DATES_IN
|
|
||||||
'
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN.AutoToolTip = True
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN.Name = "BTT_SHOW_LIMIT_DATES_IN"
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN.Size = New System.Drawing.Size(231, 22)
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN.Text = "Limit dates (in range)"
|
|
||||||
Me.BTT_SHOW_LIMIT_DATES_IN.ToolTipText = "Filter users whose last download date is in the selected date range"
|
|
||||||
'
|
'
|
||||||
'BTT_VIEW_FILTER_SAVE
|
'BTT_VIEW_FILTER_SAVE
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_FILTER_SAVE.Name = "BTT_VIEW_FILTER_SAVE"
|
Me.BTT_VIEW_FILTER_SAVE.Name = "BTT_VIEW_FILTER_SAVE"
|
||||||
Me.BTT_VIEW_FILTER_SAVE.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_FILTER_SAVE.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_FILTER_SAVE.Text = "Save current view"
|
Me.BTT_VIEW_FILTER_SAVE.Text = "Save current view"
|
||||||
'
|
'
|
||||||
|
'BTT_VIEW_FILTER_SAVE_AS_GROUP
|
||||||
|
'
|
||||||
|
Me.BTT_VIEW_FILTER_SAVE_AS_GROUP.Name = "BTT_VIEW_FILTER_SAVE_AS_GROUP"
|
||||||
|
Me.BTT_VIEW_FILTER_SAVE_AS_GROUP.Size = New System.Drawing.Size(271, 22)
|
||||||
|
Me.BTT_VIEW_FILTER_SAVE_AS_GROUP.Text = "Save current view as download group"
|
||||||
|
'
|
||||||
'BTT_VIEW_FILTER_LOAD
|
'BTT_VIEW_FILTER_LOAD
|
||||||
'
|
'
|
||||||
Me.BTT_VIEW_FILTER_LOAD.AutoToolTip = True
|
Me.BTT_VIEW_FILTER_LOAD.AutoToolTip = True
|
||||||
Me.BTT_VIEW_FILTER_LOAD.Name = "BTT_VIEW_FILTER_LOAD"
|
Me.BTT_VIEW_FILTER_LOAD.Name = "BTT_VIEW_FILTER_LOAD"
|
||||||
Me.BTT_VIEW_FILTER_LOAD.Size = New System.Drawing.Size(231, 22)
|
Me.BTT_VIEW_FILTER_LOAD.Size = New System.Drawing.Size(271, 22)
|
||||||
Me.BTT_VIEW_FILTER_LOAD.Text = "Load view (from saved)"
|
Me.BTT_VIEW_FILTER_LOAD.Text = "Load view (from saved)"
|
||||||
Me.BTT_VIEW_FILTER_LOAD.ToolTipText = "Load one of your previously saved views"
|
Me.BTT_VIEW_FILTER_LOAD.ToolTipText = "Load one of your previously saved views"
|
||||||
'
|
'
|
||||||
@@ -1154,39 +946,23 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Private WithEvents BTT_CONTEXT_ADD_TO_COL As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_ADD_TO_COL As ToolStripMenuItem
|
||||||
Private WithEvents BTT_REFRESH As ToolStripButton
|
Private WithEvents BTT_REFRESH As ToolStripButton
|
||||||
Private WithEvents BTT_SHOW_ALL As ToolStripMenuItem
|
Private WithEvents BTT_SHOW_ALL As ToolStripMenuItem
|
||||||
Private WithEvents BTT_SHOW_REGULAR As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_TEMP As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_FAV As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_LABELS As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_NO_LABELS As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_EDIT_USER As ToolStripButton
|
Private WithEvents BTT_EDIT_USER As ToolStripButton
|
||||||
Private WithEvents BTT_CONTEXT_GROUPS As PersonalUtilities.Forms.Controls.KeyClick.ToolStripMenuItemKeyClick
|
Private WithEvents BTT_CONTEXT_GROUPS As PersonalUtilities.Forms.Controls.KeyClick.ToolStripMenuItemKeyClick
|
||||||
Private WithEvents BTT_VERSION_INFO As ToolStripButton
|
Private WithEvents BTT_VERSION_INFO As ToolStripButton
|
||||||
Private WithEvents BTT_CONTEXT_DOWN_LIMITED As ToolStripKeyMenuItem
|
Private WithEvents BTT_CONTEXT_DOWN_LIMITED As ToolStripKeyMenuItem
|
||||||
Private WithEvents BTT_CONTEXT_READY As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_READY As ToolStripMenuItem
|
||||||
Private WithEvents BTT_SITE_ALL As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SITE_SPECIFIC As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_CONTEXT_CHANGE_FOLDER As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_CHANGE_FOLDER As ToolStripMenuItem
|
||||||
Private WithEvents BTT_DOWN_SAVED As ToolStripButton
|
Private WithEvents BTT_DOWN_SAVED As ToolStripButton
|
||||||
Friend WithEvents TrayIcon As NotifyIcon
|
Friend WithEvents TrayIcon As NotifyIcon
|
||||||
Private WithEvents BTT_TRAY_SHOW_HIDE As ToolStripMenuItem
|
Private WithEvents BTT_TRAY_SHOW_HIDE As ToolStripMenuItem
|
||||||
Private WithEvents BTT_TRAY_CLOSE As ToolStripMenuItem
|
Private WithEvents BTT_TRAY_CLOSE As ToolStripMenuItem
|
||||||
Private WithEvents BTT_DONATE As ToolStripButton
|
Private WithEvents BTT_DONATE As ToolStripButton
|
||||||
Private WithEvents BTT_SHOW_DELETED As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_SUSPENDED As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_LIMIT_DATES_NOT As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_VIEW_DETAILS As ToolStripMenuItem
|
Private WithEvents BTT_VIEW_DETAILS As ToolStripMenuItem
|
||||||
Private WithEvents COL_DEF As ColumnHeader
|
Private WithEvents COL_DEF As ColumnHeader
|
||||||
Private WithEvents MENU_SETTINGS As ToolStripDropDownButton
|
Private WithEvents MENU_SETTINGS As ToolStripDropDownButton
|
||||||
Private WithEvents BTT_PR_INFO As ToolStripStatusLabel
|
Private WithEvents BTT_PR_INFO As ToolStripStatusLabel
|
||||||
Private WithEvents BTT_CONTEXT_DOWN_DATE_LIMIT As ToolStripKeyMenuItem
|
Private WithEvents BTT_CONTEXT_DOWN_DATE_LIMIT As ToolStripKeyMenuItem
|
||||||
Private WithEvents BTT_DOWN_ALL As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_SITE As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_ALL_FULL As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_SITE_FULL As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_CONTEXT_SCRIPT As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_SCRIPT As ToolStripMenuItem
|
||||||
Private WithEvents BTT_SHOW_EXCLUDED_LABELS As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_EXCLUDED_LABELS_IGNORE As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_SHOW_SHOW_GROUPS As ToolStripMenuItem
|
Private WithEvents BTT_SHOW_SHOW_GROUPS As ToolStripMenuItem
|
||||||
Private WithEvents BTT_ADD_NEW_GROUP As ToolStripMenuItem
|
Private WithEvents BTT_ADD_NEW_GROUP As ToolStripMenuItem
|
||||||
Friend WithEvents BTT_TRAY_CLOSE_NO_SCRIPT As ToolStripMenuItem
|
Friend WithEvents BTT_TRAY_CLOSE_NO_SCRIPT As ToolStripMenuItem
|
||||||
@@ -1195,7 +971,6 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Friend WithEvents BTT_LOG As ToolStripButton
|
Friend WithEvents BTT_LOG As ToolStripButton
|
||||||
Friend WithEvents Toolbar_TOP As ToolStrip
|
Friend WithEvents Toolbar_TOP As ToolStrip
|
||||||
Private WithEvents BTT_FEED As ToolStripButton
|
Private WithEvents BTT_FEED As ToolStripButton
|
||||||
Private WithEvents BTT_SHOW_LIMIT_DATES_IN As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_CONTEXT_COPY_TO_FOLDER As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_COPY_TO_FOLDER As ToolStripMenuItem
|
||||||
Private WithEvents BTT_TRAY_SILENT_MODE As ToolStripMenuItem
|
Private WithEvents BTT_TRAY_SILENT_MODE As ToolStripMenuItem
|
||||||
Friend WithEvents BTT_TRAY_PAUSE_AUTOMATION As ToolStripMenuItem
|
Friend WithEvents BTT_TRAY_PAUSE_AUTOMATION As ToolStripMenuItem
|
||||||
@@ -1209,14 +984,8 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Private WithEvents BTT_CONTEXT_ERASE As ToolStripMenuItem
|
Private WithEvents BTT_CONTEXT_ERASE As ToolStripMenuItem
|
||||||
Private WithEvents MENU_INFO_SHOW_MISSING As ToolStripMenuItem
|
Private WithEvents MENU_INFO_SHOW_MISSING As ToolStripMenuItem
|
||||||
Private WithEvents MENU_INFO_SHOW_USER_METRICS As ToolStripMenuItem
|
Private WithEvents MENU_INFO_SHOW_USER_METRICS As ToolStripMenuItem
|
||||||
Private WithEvents BTT_MODE_SHOW_USERS As ToolStripMenuItem
|
Private WithEvents BTT_DOWN_ALL As ToolStripKeyMenuItem
|
||||||
Private WithEvents BTT_MODE_SHOW_SUBSCRIPTIONS As ToolStripMenuItem
|
Private WithEvents BTT_DOWN_ALL_FULL As ToolStripKeyMenuItem
|
||||||
Private WithEvents MENU_D_DOWN_ALL As ToolStripMenuItem
|
|
||||||
Private WithEvents MENU_D_DOWN_ALL_SITE As ToolStripMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_ALL_SUBSCR As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_SITE_SUBSCR As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_ALL_FULL_SUBSCR As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_DOWN_SITE_FULL_SUBSCR As ToolStripKeyMenuItem
|
|
||||||
Private WithEvents BTT_BUG_REPORT As ToolStripButton
|
Private WithEvents BTT_BUG_REPORT As ToolStripButton
|
||||||
Private WithEvents MENU_INFO_SHOW_QUEUE As ToolStripMenuItem
|
Private WithEvents MENU_INFO_SHOW_QUEUE As ToolStripMenuItem
|
||||||
Private WithEvents BTT_DOWN_SPEC As ToolStripKeyMenuItem
|
Private WithEvents BTT_DOWN_SPEC As ToolStripKeyMenuItem
|
||||||
@@ -1225,4 +994,5 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Private WithEvents BTT_SHOW_GROUP_USERS As ToolStripMenuItem
|
Private WithEvents BTT_SHOW_GROUP_USERS As ToolStripMenuItem
|
||||||
Private WithEvents BTT_VIEW_FILTER_SAVE As ToolStripMenuItem
|
Private WithEvents BTT_VIEW_FILTER_SAVE As ToolStripMenuItem
|
||||||
Private WithEvents BTT_VIEW_FILTER_LOAD As ToolStripMenuItem
|
Private WithEvents BTT_VIEW_FILTER_LOAD As ToolStripMenuItem
|
||||||
|
Private WithEvents BTT_VIEW_FILTER_SAVE_AS_GROUP As ToolStripMenuItem
|
||||||
End Class
|
End Class
|
||||||
@@ -150,12 +150,6 @@
|
|||||||
<metadata name="MENU_VIEW_SEP_2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="MENU_VIEW_SEP_2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="MENU_VIEW_SEP_4.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
|
||||||
<value>False</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="MENU_VIEW_SEP_3.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
|
||||||
<value>False</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="TRAY_SEP_1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="TRAY_SEP_1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
@@ -180,9 +174,6 @@
|
|||||||
<metadata name="MENU_VIEW_SEP_1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="MENU_VIEW_SEP_1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>False</value>
|
<value>False</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="MENU_VIEW_SEP_5.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
|
||||||
<value>False</value>
|
|
||||||
</metadata>
|
|
||||||
<metadata name="Toolbar_TOP.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="Toolbar_TOP.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>132, 17</value>
|
<value>132, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
@@ -221,16 +212,6 @@
|
|||||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||||
</value>
|
</value>
|
||||||
</data>
|
|
||||||
<data name="BTT_DOWN_SITE_FULL.ToolTipText" xml:space="preserve">
|
|
||||||
<value>Download all users from specific sites. The 'Ready for download' option will be ignored.
|
|
||||||
Shift+Click to download, including non-existent users.
|
|
||||||
Ctrl+Shift+Click to download, excluding from the feed, including non-existent users.</value>
|
|
||||||
</data>
|
|
||||||
<data name="BTT_DOWN_SITE_FULL_SUBSCR.ToolTipText" xml:space="preserve">
|
|
||||||
<value>Download all subscriptions from specific sites. The 'Ready for download' option will be ignored.
|
|
||||||
Shift+Click to download, including non-existent users.
|
|
||||||
Ctrl+Shift+Click to download, excluding from the feed, including non-existent users.</value>
|
|
||||||
</data>
|
</data>
|
||||||
<metadata name="Toolbar_BOTTOM.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="Toolbar_BOTTOM.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>239, 17</value>
|
<value>239, 17</value>
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ Imports SCrawler.API
|
|||||||
Imports SCrawler.API.Base
|
Imports SCrawler.API.Base
|
||||||
Imports SCrawler.Editors
|
Imports SCrawler.Editors
|
||||||
Imports SCrawler.DownloadObjects
|
Imports SCrawler.DownloadObjects
|
||||||
|
Imports SCrawler.DownloadObjects.Groups
|
||||||
Imports SCrawler.Plugin.Hosts
|
Imports SCrawler.Plugin.Hosts
|
||||||
Imports PauseModes = SCrawler.DownloadObjects.AutoDownloader.PauseModes
|
Imports PauseModes = SCrawler.DownloadObjects.AutoDownloader.PauseModes
|
||||||
Public Class MainFrame
|
Public Class MainFrame
|
||||||
@@ -23,6 +24,9 @@ Public Class MainFrame
|
|||||||
Private WithEvents MyActivator As FormActivator
|
Private WithEvents MyActivator As FormActivator
|
||||||
Private WithEvents BTT_IMPORT_USERS As ToolStripMenuItem
|
Private WithEvents BTT_IMPORT_USERS As ToolStripMenuItem
|
||||||
Private WithEvents BTT_NEW_PROFILE As ToolStripMenuItem
|
Private WithEvents BTT_NEW_PROFILE As ToolStripMenuItem
|
||||||
|
Private BTT_SHOW_ALL_GROUPS_ADDED As Boolean = False
|
||||||
|
Private WithEvents BTT_SHOW_ALL_GROUPS As ToolStripMenuItem
|
||||||
|
Private WithEvents BTT_GROUPS_OTHER As ToolStripMenuItem
|
||||||
Friend MyChannels As ChannelViewForm
|
Friend MyChannels As ChannelViewForm
|
||||||
Friend MySavedPosts As DownloadSavedPostsForm
|
Friend MySavedPosts As DownloadSavedPostsForm
|
||||||
Private MyMissingPosts As MissingPostsForm
|
Private MyMissingPosts As MissingPostsForm
|
||||||
@@ -50,6 +54,8 @@ Public Class MainFrame
|
|||||||
MENU_SETTINGS.DropDownItems.Insert(MENU_SETTINGS.DropDownItems.Count - 2, BTT_NEW_PROFILE)
|
MENU_SETTINGS.DropDownItems.Insert(MENU_SETTINGS.DropDownItems.Count - 2, BTT_NEW_PROFILE)
|
||||||
MENU_SETTINGS.DropDownItems.AddRange({New ToolStripSeparator, BTT_IMPORT_USERS})
|
MENU_SETTINGS.DropDownItems.AddRange({New ToolStripSeparator, BTT_IMPORT_USERS})
|
||||||
BTT_BUG_REPORT.Image = My.Resources.MailPic_16
|
BTT_BUG_REPORT.Image = My.Resources.MailPic_16
|
||||||
|
BTT_GROUPS_OTHER = New ToolStripMenuItem("Other groups", DownloadGroup.GroupImage)
|
||||||
|
BTT_SHOW_ALL_GROUPS = New ToolStripMenuItem("Show all groups", DownloadGroup.GroupImage)
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Form handlers"
|
#Region "Form handlers"
|
||||||
@@ -105,15 +111,15 @@ Public Class MainFrame
|
|||||||
UserListLoader = New ListImagesLoader(LIST_PROFILES)
|
UserListLoader = New ListImagesLoader(LIST_PROFILES)
|
||||||
RefillList()
|
RefillList()
|
||||||
UpdateLabelsGroups()
|
UpdateLabelsGroups()
|
||||||
SetShowButtonsCheckers(.ShowingMode.Value)
|
SetShowButtonsCheckers(.ShowAllUsers)
|
||||||
CheckVersion(False)
|
CheckVersion(False)
|
||||||
ApplyView_Users_Sites_Dates()
|
UpdateUserGroupControls()
|
||||||
With .Groups
|
With .Groups
|
||||||
AddHandler .Added, AddressOf GROUPS_Added
|
AddHandler .Added, AddressOf GROUPS_Added
|
||||||
AddHandler .Deleted, AddressOf GROUPS_Deleted
|
AddHandler .Deleted, AddressOf GROUPS_Deleted
|
||||||
AddHandler .Updated, AddressOf GROUPS_Updated
|
AddHandler .Updated, AddressOf GROUPS_Updated
|
||||||
If .Count > 0 Then
|
If .Count > 0 Then
|
||||||
For Each ugroup As Groups.DownloadGroup In Settings.Groups : GROUPS_Added(ugroup) : Next
|
For Each ugroup As DownloadGroup In Settings.Groups : GROUPS_Added(ugroup) : Next
|
||||||
End If
|
End If
|
||||||
End With
|
End With
|
||||||
.Automation = New Scheduler
|
.Automation = New Scheduler
|
||||||
@@ -229,7 +235,7 @@ CloseResume:
|
|||||||
Case Keys.F1 : BTT_VERSION_INFO.PerformClick()
|
Case Keys.F1 : BTT_VERSION_INFO.PerformClick()
|
||||||
Case Keys.F3 : EditSelectedUser()
|
Case Keys.F3 : EditSelectedUser()
|
||||||
Case Keys.F5 : DownloadSelectedUser(DownUserLimits.None, New MyKeyEventArgs(e).IncludeInTheFeed)
|
Case Keys.F5 : DownloadSelectedUser(DownUserLimits.None, New MyKeyEventArgs(e).IncludeInTheFeed)
|
||||||
Case Keys.F6 : BTT_DOWN_ALL_FULL_KeyClick(Nothing, New MyKeyEventArgs(e))
|
Case Keys.F6 : BTT_DOWN_ALL_KeyClick(Nothing, New MyKeyEventArgs(e))
|
||||||
Case Else : b = NumGroup(e)
|
Case Else : b = NumGroup(e)
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
@@ -502,77 +508,122 @@ CloseResume:
|
|||||||
Private Sub BTT_DOWN_SELECTED_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SELECTED.KeyClick
|
Private Sub BTT_DOWN_SELECTED_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SELECTED.KeyClick
|
||||||
DownloadSelectedUser(DownUserLimits.None, e.IncludeInTheFeed)
|
DownloadSelectedUser(DownUserLimits.None, e.IncludeInTheFeed)
|
||||||
End Sub
|
End Sub
|
||||||
#Region "Down all"
|
|
||||||
Private Sub BTT_DOWN_ALL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL.KeyClick
|
Private Sub BTT_DOWN_ALL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL.KeyClick
|
||||||
Downloader.AddRange(Settings.GetUsers(Function(u) u.ReadyForDownload And UserExistsNonSubscriptionsPredicate.Invoke(u)), e.IncludeInTheFeed)
|
Dim ask As Boolean = False
|
||||||
|
With Settings
|
||||||
|
If e.KeyCode = Keys.F6 Then
|
||||||
|
If .DownloadAll_UseF6 Then
|
||||||
|
ask = .DownloadAll_UseF6_Confirm
|
||||||
|
Else
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
ask = .DownloadAll_Confirm
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
If ask AndAlso MsgBoxE({"Are you sure you want to download all users?", "Download ALL"}, vbExclamation,,, {"Process", "Cancel"}) = 1 Then Exit Sub
|
||||||
|
Using group As New DownloadGroup(False) With {.DownloadSubscriptions = e.IncludeInTheFeed} : group.ProcessDownloadUsers(e.IncludeInTheFeed, False) : End Using
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_DOWN_ALL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_SUBSCR.KeyClick
|
|
||||||
Downloader.AddRange(Settings.GetUsers(Function(u) u.ReadyForDownload And UserExistsSubscriptionsPredicate.Invoke(u)), e.IncludeInTheFeed)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_DOWN_SITE_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE.KeyClick
|
|
||||||
DownloadSiteFull(True, e.IncludeInTheFeed, False)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_DOWN_SITE_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_SUBSCR.KeyClick
|
|
||||||
DownloadSiteFull(True, e.IncludeInTheFeed, True)
|
|
||||||
End Sub
|
|
||||||
#End Region
|
|
||||||
#Region "Down full"
|
|
||||||
Private Sub BTT_DOWN_ALL_FULL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL.KeyClick
|
Private Sub BTT_DOWN_ALL_FULL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL.KeyClick
|
||||||
Downloader.AddRange(Settings.GetUsers(UserExistsNonSubscriptionsPredicate), e.IncludeInTheFeed)
|
Using group As New DownloadGroup(False) With {.DownloadSubscriptions = e.IncludeInTheFeed, .ReadyForDownloadIgnore = True} : group.ProcessDownloadUsers(e.IncludeInTheFeed, False) : End Using
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_DOWN_ALL_FULL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_ALL_FULL_SUBSCR.KeyClick
|
|
||||||
Downloader.AddRange(Settings.GetUsers(UserExistsSubscriptionsPredicate), e.IncludeInTheFeed)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_DOWN_SITE_FULL_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_FULL.KeyClick
|
|
||||||
DownloadSiteFull(False, e.IncludeInTheFeed, False, e.Shift)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_DOWN_SITE_FULL_SUBSCR_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SITE_FULL_SUBSCR.KeyClick
|
|
||||||
DownloadSiteFull(False, e.IncludeInTheFeed, True, e.Shift)
|
|
||||||
End Sub
|
|
||||||
#End Region
|
|
||||||
Private Sub BTT_DOWN_SPEC_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SPEC.KeyClick
|
Private Sub BTT_DOWN_SPEC_KeyClick(ByVal Sender As Object, ByVal e As MyKeyEventArgs) Handles BTT_DOWN_SPEC.KeyClick
|
||||||
Dim group As Groups.DownloadGroup = Nothing
|
Dim group As DownloadGroup = Nothing
|
||||||
Using f As New Groups.GroupEditorForm(Nothing) With {.DownloadMode = True}
|
Using f As New GroupEditorForm(Nothing) With {.DownloadMode = True}
|
||||||
f.ShowDialog()
|
f.ShowDialog()
|
||||||
If f.DialogResult = DialogResult.OK AndAlso Not f.MyGroup Is Nothing Then group = f.MyGroup
|
If f.DialogResult = DialogResult.OK AndAlso Not f.MyGroup Is Nothing Then group = f.MyGroup
|
||||||
End Using
|
End Using
|
||||||
If Not group Is Nothing Then group.DownloadUsers(e.IncludeInTheFeed,, e.Shift) : group.Dispose()
|
If Not group Is Nothing Then group.ProcessDownloadUsers(e.IncludeInTheFeed, False) : group.Dispose()
|
||||||
End Sub
|
|
||||||
Private Sub DownloadSiteFull(ByVal ReadyForDownloadOnly As Boolean, ByVal IncludeInTheFeed As Boolean,
|
|
||||||
ByVal Subscription As Boolean, Optional ByVal IgnoreExists As Boolean = False)
|
|
||||||
Using f As New SiteSelectionForm(Settings.LatestDownloadedSites.ValuesList)
|
|
||||||
f.ShowDialog()
|
|
||||||
If f.DialogResult = DialogResult.OK AndAlso f.SelectedSites.Count > 0 Then
|
|
||||||
Settings.LatestDownloadedSites.Clear()
|
|
||||||
Settings.LatestDownloadedSites.AddRange(f.SelectedSites)
|
|
||||||
Settings.LatestDownloadedSites.Update()
|
|
||||||
Using g As New Groups.DownloadGroup
|
|
||||||
g.Sites.AddRange(f.SelectedSites)
|
|
||||||
g.ReadyForDownload = True
|
|
||||||
g.ReadyForDownloadIgnore = Not ReadyForDownloadOnly
|
|
||||||
If Subscription Then
|
|
||||||
g.Subscriptions = True
|
|
||||||
g.SubscriptionsOnly = True
|
|
||||||
End If
|
|
||||||
g.DownloadUsers(IncludeInTheFeed, ReadyForDownloadOnly, IgnoreExists)
|
|
||||||
End Using
|
|
||||||
End If
|
|
||||||
End Using
|
|
||||||
End Sub
|
End Sub
|
||||||
#Region "Download groups"
|
#Region "Download groups"
|
||||||
|
Private Sub GROUPS_AddRemoveAllGroupsButton(Optional ByVal DValue As Integer = 0)
|
||||||
|
Try
|
||||||
|
If Settings.Groups.LongCount(Function(g) Not g.IsViewFilter) - DValue > 0 Then
|
||||||
|
If Not BTT_SHOW_ALL_GROUPS_ADDED Then
|
||||||
|
Dim i% = GetGroupIndex()
|
||||||
|
If i >= 0 Then
|
||||||
|
BTT_SHOW_ALL_GROUPS_ADDED = True
|
||||||
|
ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems.Insert(i, BTT_SHOW_ALL_GROUPS))
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
ElseIf BTT_SHOW_ALL_GROUPS_ADDED Then
|
||||||
|
ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems.Remove(BTT_SHOW_ALL_GROUPS))
|
||||||
|
BTT_SHOW_ALL_GROUPS_ADDED = False
|
||||||
|
End If
|
||||||
|
Catch
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private Function GetGroupIndex() As Integer
|
||||||
|
If BTT_SHOW_ALL_GROUPS_ADDED Then
|
||||||
|
Return MENU_DOWN_ALL.DropDownItems.IndexOf(BTT_SHOW_ALL_GROUPS)
|
||||||
|
Else
|
||||||
|
Return MENU_DOWN_ALL.DropDownItems.IndexOf(BTT_ADD_NEW_GROUP)
|
||||||
|
End If
|
||||||
|
End Function
|
||||||
Private Sub BTT_ADD_NEW_GROUP_Click(sender As Object, e As EventArgs) Handles BTT_ADD_NEW_GROUP.Click
|
Private Sub BTT_ADD_NEW_GROUP_Click(sender As Object, e As EventArgs) Handles BTT_ADD_NEW_GROUP.Click
|
||||||
Settings.Groups.Add()
|
Settings.Groups.Add()
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub GROUPS_Added(ByVal Sender As Groups.DownloadGroup)
|
Private Sub GROUPS_Added(ByVal Sender As DownloadGroup)
|
||||||
Dim i% = MENU_DOWN_ALL.DropDownItems.IndexOf(BTT_ADD_NEW_GROUP)
|
If Not Sender.IsViewFilter Then
|
||||||
ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems.Insert(i, Sender.GetControl))
|
Dim i%
|
||||||
|
If Sender.Index > 8 Then
|
||||||
|
If MENU_DOWN_ALL.DropDownItems.IndexOf(BTT_GROUPS_OTHER) = -1 Then
|
||||||
|
i = GetGroupIndex()
|
||||||
|
If i >= 0 Then MENU_DOWN_ALL.DropDownItems.Insert(i, BTT_GROUPS_OTHER)
|
||||||
|
End If
|
||||||
|
ControlInvoke(Toolbar_TOP, BTT_GROUPS_OTHER, Sub() BTT_GROUPS_OTHER.DropDownItems.Add(Sender.GetControl))
|
||||||
|
Else
|
||||||
|
i = GetGroupIndex()
|
||||||
|
ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems.Insert(i, Sender.GetControl))
|
||||||
|
End If
|
||||||
|
GROUPS_AddRemoveAllGroupsButton()
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub GROUPS_Updated(ByVal Sender As Groups.DownloadGroup)
|
Private Sub GROUPS_Updated(ByVal Sender As DownloadGroup)
|
||||||
Dim i% = MENU_DOWN_ALL.DropDownItems.IndexOf(Sender.GetControl)
|
If Not Sender.IsViewFilter Then
|
||||||
If i >= 0 Then ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems(i).Text = Sender.ToString)
|
Dim i% = BTT_GROUPS_OTHER.DropDownItems.IndexOf(Sender.GetControl)
|
||||||
|
If i >= 0 Then
|
||||||
|
ControlInvoke(Toolbar_TOP, BTT_GROUPS_OTHER, Sub() BTT_GROUPS_OTHER.DropDownItems(i).Text = Sender.ToString)
|
||||||
|
Else
|
||||||
|
i = MENU_DOWN_ALL.DropDownItems.IndexOf(Sender.GetControl)
|
||||||
|
If i >= 0 Then ControlInvoke(Toolbar_TOP, MENU_DOWN_ALL, Sub() MENU_DOWN_ALL.DropDownItems(i).Text = Sender.ToString)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub GROUPS_Deleted(ByVal Sender As Groups.DownloadGroup)
|
Private Sub GROUPS_Deleted(ByVal Sender As DownloadGroup)
|
||||||
MENU_DOWN_ALL.DropDownItems.Remove(Sender.GetControl)
|
If Not Sender.IsViewFilter Then
|
||||||
|
MENU_DOWN_ALL.DropDownItems.Remove(Sender.GetControl)
|
||||||
|
BTT_GROUPS_OTHER.DropDownItems.Remove(Sender.GetControl)
|
||||||
|
If BTT_GROUPS_OTHER.DropDownItems.Count = 0 Then MENU_DOWN_ALL.DropDownItems.Remove(BTT_GROUPS_OTHER)
|
||||||
|
GROUPS_AddRemoveAllGroupsButton(1)
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
Private Sub BTT_SHOW_ALL_GROUPS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_ALL_GROUPS.Click
|
||||||
|
Try
|
||||||
|
Using f As New GroupListForm(False)
|
||||||
|
f.ShowDialog()
|
||||||
|
Dim g As DownloadGroup
|
||||||
|
With Settings.Groups
|
||||||
|
If .Count > 0 Then
|
||||||
|
If f.GroupsUpdated Then
|
||||||
|
For Each g In .Self
|
||||||
|
If Not g.IsViewFilter Then GROUPS_Deleted(g)
|
||||||
|
Next
|
||||||
|
For Each g In .Self
|
||||||
|
If Not g.IsViewFilter Then GROUPS_Added(g)
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
If Not f.GroupToDownload.IsEmptyString Then
|
||||||
|
Dim i% = .IndexOf(f.GroupToDownload)
|
||||||
|
If i >= 0 Then .Item(i).ProcessDownloadUsers(f.GroupToDownloadIncludeInTheFeed)
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
End Using
|
||||||
|
Catch ex As Exception
|
||||||
|
ErrorsDescriber.Execute(EDP.SendToLog, ex, "[MainFrame.ShowGroups]")
|
||||||
|
MainFrameObj.UpdateLogButton()
|
||||||
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
Private Sub BTT_SILENT_MODE_Click(sender As Object, e As EventArgs) Handles BTT_SILENT_MODE.Click, BTT_TRAY_SILENT_MODE.Click
|
Private Sub BTT_SILENT_MODE_Click(sender As Object, e As EventArgs) Handles BTT_SILENT_MODE.Click, BTT_TRAY_SILENT_MODE.Click
|
||||||
@@ -654,125 +705,30 @@ CloseResume:
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "2 - view mode users"
|
#Region "2 - view filters"
|
||||||
Private Sub BTT_MODE_SHOW_USERS_Click(sender As Object, e As EventArgs) Handles BTT_MODE_SHOW_USERS.Click
|
|
||||||
Settings.MainFrameUsersShowDefaults.Value = BTT_MODE_SHOW_USERS.Checked
|
|
||||||
RefillList()
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_MODE_SHOW_SUBSCRIPTIONS_Click(sender As Object, e As EventArgs) Handles BTT_MODE_SHOW_SUBSCRIPTIONS.Click
|
|
||||||
Settings.MainFrameUsersShowSubscriptions.Value = BTT_MODE_SHOW_SUBSCRIPTIONS.Checked
|
|
||||||
RefillList()
|
|
||||||
End Sub
|
|
||||||
#End Region
|
|
||||||
#Region "3 - view site"
|
|
||||||
Private Sub BTT_SITE_ALL_Click(sender As Object, e As EventArgs) Handles BTT_SITE_ALL.Click
|
|
||||||
Settings.SelectedSites.Clear()
|
|
||||||
Settings.SelectedSites.Update()
|
|
||||||
If Not BTT_SITE_ALL.Checked Then RefillList()
|
|
||||||
BTT_SITE_ALL.Checked = True
|
|
||||||
BTT_SITE_SPECIFIC.Checked = False
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SITE_SPECIFIC_Click(sender As Object, e As EventArgs) Handles BTT_SITE_SPECIFIC.Click
|
|
||||||
Using f As New SiteSelectionForm(Settings.SelectedSites.ValuesList)
|
|
||||||
f.ShowDialog()
|
|
||||||
If f.DialogResult = DialogResult.OK Then
|
|
||||||
Settings.SelectedSites.Clear()
|
|
||||||
Settings.SelectedSites.AddRange(f.SelectedSites)
|
|
||||||
Settings.SelectedSites.Update()
|
|
||||||
BTT_SITE_SPECIFIC.Checked = Settings.SelectedSites.Count > 0
|
|
||||||
BTT_SITE_ALL.Checked = Settings.SelectedSites.Count = 0
|
|
||||||
RefillList()
|
|
||||||
End If
|
|
||||||
End Using
|
|
||||||
End Sub
|
|
||||||
#End Region
|
|
||||||
#Region "4 - view filters"
|
|
||||||
Private Sub BTT_SHOW_ALL_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_ALL.Click
|
Private Sub BTT_SHOW_ALL_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_ALL.Click
|
||||||
SetShowButtonsCheckers(ShowingModes.All)
|
SetShowButtonsCheckers(True)
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_REGULAR_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_REGULAR.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.Regular)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_TEMP_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_TEMP.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.Temporary)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_FAV_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_FAV.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.Favorite)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_DELETED_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_DELETED.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.Deleted)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_SUSPENDED_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_SUSPENDED.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.Suspended)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_LABELS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_LABELS.Click
|
|
||||||
Dim b As Boolean = OpenLabelsForm(Settings.Labels.Current)
|
|
||||||
Dim m As ShowingModes
|
|
||||||
If Settings.Labels.Current.Count = 0 Then
|
|
||||||
m = Settings.ShowingMode.Value
|
|
||||||
If m = ShowingModes.Labels Then m = ShowingModes.All
|
|
||||||
Else
|
|
||||||
m = ShowingModes.Labels
|
|
||||||
End If
|
|
||||||
SetShowButtonsCheckers(m, Settings.ShowingMode.Value = ShowingModes.Labels And m = ShowingModes.Labels And b)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_NO_LABELS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_NO_LABELS.Click
|
|
||||||
SetShowButtonsCheckers(ShowingModes.NoLabels)
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_EXCLUDED_LABELS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_EXCLUDED_LABELS.Click
|
|
||||||
Dim b As Boolean = OpenLabelsForm(Settings.Labels.Excluded)
|
|
||||||
SetExcludedButtonChecker()
|
|
||||||
If b Then RefillList()
|
|
||||||
End Sub
|
|
||||||
Private Sub BTT_SHOW_EXCLUDED_LABELS_IGNORE_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_EXCLUDED_LABELS_IGNORE.Click
|
|
||||||
Settings.Labels.ExcludedIgnore.Value = Not Settings.Labels.ExcludedIgnore.Value
|
|
||||||
If Settings.Labels.Excluded.Count > 0 Then RefillList()
|
|
||||||
SetExcludedButtonChecker()
|
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_SHOW_SHOW_GROUPS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_SHOW_GROUPS.Click
|
Private Sub BTT_SHOW_SHOW_GROUPS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_SHOW_GROUPS.Click
|
||||||
Settings.ShowGroupsInsteadLabels.Value = Not Settings.ShowGroupsInsteadLabels.Value
|
Settings.ShowGroupsInsteadLabels.Value = Not Settings.ShowGroupsInsteadLabels.Value
|
||||||
If Settings.ShowingMode.Value = ShowingModes.Labels Then RefillList()
|
SetShowButtonsCheckers(Settings.ShowAllUsers,, True)
|
||||||
SetShowButtonsCheckers(Settings.ShowingMode.Value)
|
RefillList()
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub SetShowButtonsCheckers(ByVal m As ShowingModes, Optional ByVal ForceRefill As Boolean = False, Optional ByVal OnlyButtons As Boolean = False)
|
Private Sub SetShowButtonsCheckers(ByVal ShowAll As Boolean, Optional ByVal ForceRefill As Boolean = False, Optional ByVal OnlyButtons As Boolean = False)
|
||||||
BTT_SHOW_ALL.Checked = m = ShowingModes.All
|
BTT_SHOW_ALL.Checked = ShowAll
|
||||||
BTT_SHOW_REGULAR.Checked = m = ShowingModes.Regular
|
|
||||||
BTT_SHOW_TEMP.Checked = m = ShowingModes.Temporary
|
|
||||||
BTT_SHOW_FAV.Checked = m = ShowingModes.Favorite
|
|
||||||
BTT_SHOW_DELETED.Checked = m = ShowingModes.Deleted
|
|
||||||
BTT_SHOW_SUSPENDED.Checked = m = ShowingModes.Suspended
|
|
||||||
BTT_SHOW_LABELS.Checked = m = ShowingModes.Labels
|
|
||||||
BTT_SHOW_NO_LABELS.Checked = m = ShowingModes.NoLabels
|
|
||||||
BTT_SHOW_SHOW_GROUPS.Checked = Settings.ShowGroupsInsteadLabels
|
BTT_SHOW_SHOW_GROUPS.Checked = Settings.ShowGroupsInsteadLabels
|
||||||
BTT_SHOW_FILTER_ADV.Checked = m = ShowingModes.AdvancedFilter
|
BTT_SHOW_FILTER_ADV.Checked = Not ShowAll
|
||||||
SetExcludedButtonChecker()
|
|
||||||
If Not OnlyButtons Then
|
If Not OnlyButtons Then
|
||||||
With Settings
|
With Settings
|
||||||
If Not m = ShowingModes.Labels Then .Labels.Current.Clear() : .Labels.Current.Update()
|
If Not .ShowAllUsers = ShowAll Or ForceRefill Then
|
||||||
If Not .ShowingMode.Value = m Or ForceRefill Then
|
.ShowAllUsers.Value = ShowAll
|
||||||
.ShowingMode.Value = m
|
|
||||||
RefillList()
|
RefillList()
|
||||||
Else
|
Else
|
||||||
.ShowingMode.Value = m
|
.ShowAllUsers.Value = ShowAll
|
||||||
End If
|
End If
|
||||||
End With
|
End With
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub SetExcludedButtonChecker()
|
|
||||||
BTT_SHOW_EXCLUDED_LABELS.Checked = Settings.Labels.Excluded.Count > 0
|
|
||||||
BTT_SHOW_EXCLUDED_LABELS_IGNORE.Checked = Settings.Labels.ExcludedIgnore
|
|
||||||
End Sub
|
|
||||||
Private Function OpenLabelsForm(ByRef ll As XML.Objects.XMLValuesCollection(Of String)) As Boolean
|
|
||||||
Using f As New LabelsForm(ll) With {.WithDeleteButton = True}
|
|
||||||
f.ShowDialog()
|
|
||||||
If f.DialogResult = DialogResult.OK Then
|
|
||||||
With ll : .Clear() : .AddRange(f.LabelsList) : .Update() : End With
|
|
||||||
Return True
|
|
||||||
Else
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
End Using
|
|
||||||
End Function
|
|
||||||
Private Sub BTT_SHOW_GROUP_USERS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_GROUP_USERS.Click
|
Private Sub BTT_SHOW_GROUP_USERS_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_GROUP_USERS.Click
|
||||||
With Settings.GroupUsers
|
With Settings.GroupUsers
|
||||||
.Value = Not .Value
|
.Value = Not .Value
|
||||||
@@ -783,11 +739,11 @@ CloseResume:
|
|||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_SHOW_FILTER_ADV_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_FILTER_ADV.Click
|
Private Sub BTT_SHOW_FILTER_ADV_Click(sender As Object, e As EventArgs) Handles BTT_SHOW_FILTER_ADV.Click
|
||||||
Try
|
Try
|
||||||
Using g As New Groups.GroupEditorForm(Settings.AdvancedFilter) With {.FilterMode = True}
|
Using g As New GroupEditorForm(Settings.AdvancedFilter) With {.FilterMode = True}
|
||||||
g.ShowDialog()
|
g.ShowDialog()
|
||||||
If g.DialogResult = DialogResult.OK Then
|
If g.DialogResult = DialogResult.OK Then
|
||||||
Settings.AdvancedFilter.UpdateFile()
|
Settings.AdvancedFilter.UpdateFile()
|
||||||
SetShowButtonsCheckers(ShowingModes.AdvancedFilter, True)
|
SetShowButtonsCheckers(False, True)
|
||||||
End If
|
End If
|
||||||
End Using
|
End Using
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -795,57 +751,17 @@ CloseResume:
|
|||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
#Region "5 - view dates"
|
#Region "3 - saved filters"
|
||||||
Private Sub BTT_SHOW_LIMIT_DATES_NOT_IN_Click(ByVal Sender As ToolStripMenuItem, ByVal e As EventArgs) Handles BTT_SHOW_LIMIT_DATES_NOT.Click,
|
Private Sub BTT_VIEW_FILTER_SAVE_Click(sender As Object, e As EventArgs) Handles BTT_VIEW_FILTER_SAVE.Click, BTT_VIEW_FILTER_SAVE_AS_GROUP.Click
|
||||||
BTT_SHOW_LIMIT_DATES_IN.Click
|
|
||||||
Dim r As Boolean = False
|
|
||||||
Dim UpSettings As Action(Of Date?, Date?, ShowingDates) = Sub(ByVal _from As Date?, ByVal _to As Date?, ByVal Mode As ShowingDates)
|
|
||||||
With Settings
|
|
||||||
.BeginUpdate()
|
|
||||||
If Not .ViewDateMode.Value = CInt(Mode) Then r = True
|
|
||||||
.ViewDateMode.Value = CInt(Mode)
|
|
||||||
If Not Mode = ShowingDates.Off Then
|
|
||||||
If .ViewDateFrom.HasValue And _from.HasValue Then
|
|
||||||
If Not .ViewDateFrom.Value.Date = _from.Value.Date Then r = True
|
|
||||||
Else
|
|
||||||
r = True
|
|
||||||
End If
|
|
||||||
.ViewDateFrom = _from
|
|
||||||
If .ViewDateTo.HasValue And _to.HasValue Then
|
|
||||||
If Not .ViewDateTo.Value.Date = _to.Value.Date Then r = True
|
|
||||||
Else
|
|
||||||
r = True
|
|
||||||
End If
|
|
||||||
.ViewDateTo = _to
|
|
||||||
End If
|
|
||||||
.EndUpdate()
|
|
||||||
End With
|
|
||||||
End Sub
|
|
||||||
Using f As New DateTimeSelectionForm(DateTimeSelectionForm.ModesAllDate, Settings.Design) With {
|
|
||||||
.MyDateStart = Settings.ViewDateFrom,
|
|
||||||
.MyDateEnd = Settings.ViewDateTo,
|
|
||||||
.UseDeleteButton = True
|
|
||||||
}
|
|
||||||
f.ShowDialog()
|
|
||||||
Select Case f.DialogResult
|
|
||||||
Case DialogResult.Abort : UpSettings(f.MyDateStart, f.MyDateEnd, ShowingDates.Off)
|
|
||||||
Case DialogResult.OK : UpSettings(f.MyDateStart, f.MyDateEnd, Sender.Tag)
|
|
||||||
End Select
|
|
||||||
End Using
|
|
||||||
BTT_SHOW_LIMIT_DATES_NOT.Checked = Settings.ViewDateMode.Value = ShowingDates.Not
|
|
||||||
BTT_SHOW_LIMIT_DATES_IN.Checked = Settings.ViewDateMode.Value = ShowingDates.In
|
|
||||||
If r Then RefillList()
|
|
||||||
End Sub
|
|
||||||
#End Region
|
|
||||||
#Region "6 - saved filters"
|
|
||||||
Private Sub BTT_VIEW_FILTER_SAVE_Click(sender As Object, e As EventArgs) Handles BTT_VIEW_FILTER_SAVE.Click
|
|
||||||
Dim fName$ = String.Empty
|
Dim fName$ = String.Empty
|
||||||
|
Dim isFilter As Boolean = sender Is BTT_VIEW_FILTER_SAVE
|
||||||
Dim __process As Boolean = False
|
Dim __process As Boolean = False
|
||||||
Do
|
Do
|
||||||
fName = InputBoxE("Enter a new name for the view:", "Filter name", fName)
|
fName = InputBoxE($"Enter a new name for the {IIf(isFilter, "view", "group")}:", $"{IIf(isFilter, "Filter", "Group")} name", fName)
|
||||||
If Not fName.IsEmptyString Then
|
If Not fName.IsEmptyString Then
|
||||||
If Settings.SavedFilters.IndexOf(fName) >= 0 Then
|
If Settings.Groups.IndexOf(fName, isFilter) >= 0 Then
|
||||||
Select Case MsgBoxE({$"The '{fName}' filter already exists!", "Save filter"}, vbExclamation,,, {"Try again", "Replace", "Cancel"}).Index
|
Select Case MsgBoxE({$"The '{fName}' {IIf(isFilter, "filter", "group")} already exists!", $"Save {IIf(isFilter, "filter", "group")}"},
|
||||||
|
vbExclamation,,, {"Try again", "Replace", "Cancel"}).Index
|
||||||
Case 1 : __process = True
|
Case 1 : __process = True
|
||||||
Case 2 : Exit Sub
|
Case 2 : Exit Sub
|
||||||
End Select
|
End Select
|
||||||
@@ -857,49 +773,76 @@ CloseResume:
|
|||||||
End If
|
End If
|
||||||
Loop While Not __process
|
Loop While Not __process
|
||||||
If __process Then
|
If __process Then
|
||||||
Settings.SavedFilters.Add(ViewFilter.FromCurrent(fName))
|
Dim f As New DownloadGroup(Not isFilter)
|
||||||
MsgBoxE({$"The '{fName}' filter has been saved", "Save filter"})
|
f.Copy(Settings.AdvancedFilter)
|
||||||
|
f.IsViewFilter = isFilter
|
||||||
|
f.FilterViewMode = Settings.ViewMode
|
||||||
|
f.FilterGroupUsers = Settings.GroupUsers
|
||||||
|
f.FilterShowGroupsInsteadLabels = Settings.ShowGroupsInsteadLabels
|
||||||
|
f.Name = fName
|
||||||
|
Settings.Groups.Add(f, isFilter, True)
|
||||||
|
MsgBoxE({$"The '{fName}' {IIf(isFilter, "filter", "group")} has been saved", $"Save {IIf(isFilter, "filter", "group")}"})
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BTT_VIEW_FILTER_LOAD_Click(sender As Object, e As EventArgs) Handles BTT_VIEW_FILTER_LOAD.Click
|
Private Sub BTT_VIEW_FILTER_LOAD_Click(sender As Object, e As EventArgs) Handles BTT_VIEW_FILTER_LOAD.Click
|
||||||
|
Const msgTitle$ = "Load filter"
|
||||||
Try
|
Try
|
||||||
If Settings.SavedFilters.Count = 0 Then
|
If Settings.Groups.Count + Settings.Automation.Count = 0 Then
|
||||||
MsgBoxE({"There are no saved filters", "Load filter"}, vbExclamation)
|
MsgBoxE({"There are no saved filters", "Load filter"}, vbExclamation)
|
||||||
Else
|
Else
|
||||||
Using f As New SimpleListForm(Of ViewFilter)(Settings.SavedFilters, Settings.Design) With {
|
Using f As New GroupListForm(True)
|
||||||
.DesignXMLNodeName = "SavedFiletrsForm",
|
f.ShowDialog()
|
||||||
.FormText = "Filters",
|
If f.DialogResult = DialogResult.OK Then
|
||||||
.Mode = SimpleListFormModes.SelectedItems,
|
Dim filter As GroupParameters = f.FilterSelected
|
||||||
.MultiSelect = False
|
If Not filter Is Nothing AndAlso TypeOf filter Is AutoDownloader Then
|
||||||
}
|
With DirectCast(filter, AutoDownloader)
|
||||||
If f.ShowDialog = DialogResult.OK Then
|
If .Mode = AutoDownloader.Modes.Groups Then
|
||||||
Dim filter As ViewFilter = f.DataResult.FirstOrDefault
|
If .Groups.Count = 0 Then
|
||||||
If Not filter.Name.IsEmptyString Then
|
MsgBoxE({"The scheduler plan you select doesn't contain any group!", msgTitle}, vbCritical)
|
||||||
filter.Populate()
|
Exit Sub
|
||||||
ApplyViewPattern(Settings.ViewMode.Value, True)
|
ElseIf .Groups.Count > 1 Then
|
||||||
SetShowButtonsCheckers(Settings.ShowingMode.Value,, True)
|
MsgBoxE({"The scheduler plan you select contains more than one group." & vbCr &
|
||||||
ApplyView_Users_Sites_Dates()
|
"You need to choose a plan with one group or without groups!", msgTitle}, vbCritical)
|
||||||
|
Exit Sub
|
||||||
|
Else
|
||||||
|
Dim i% = Settings.Groups.IndexOf(.Groups(0))
|
||||||
|
If i >= 0 Then
|
||||||
|
filter = Settings.Groups(i).Copy
|
||||||
|
Else
|
||||||
|
MsgBoxE({$"A group named '{ .Groups(0)}' cannot be found in existing groups.", msgTitle}, vbCritical)
|
||||||
|
filter = Nothing
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End With
|
||||||
|
End If
|
||||||
|
If Not filter Is Nothing Then
|
||||||
|
If filter.IsViewFilter Then
|
||||||
|
With DirectCast(filter, DownloadGroup)
|
||||||
|
Settings.ViewMode.Value = .FilterViewMode
|
||||||
|
Settings.GroupUsers.Value = .FilterGroupUsers
|
||||||
|
Settings.ShowGroupsInsteadLabels.Value = .FilterShowGroupsInsteadLabels
|
||||||
|
End With
|
||||||
|
ApplyViewPattern(Settings.ViewMode.Value, True)
|
||||||
|
End If
|
||||||
|
Settings.AdvancedFilter.Copy(filter)
|
||||||
|
Settings.AdvancedFilter.UpdateFile()
|
||||||
|
SetShowButtonsCheckers(Settings.ShowAllUsers,, True)
|
||||||
|
UpdateUserGroupControls()
|
||||||
RefillList()
|
RefillList()
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End Using
|
End Using
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
ErrorsDescriber.Execute(EDP.LogMessageValue, ex, "Load filter")
|
ErrorsDescriber.Execute(EDP.LogMessageValue, ex, msgTitle)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub ApplyView_Users_Sites_Dates()
|
Private Sub UpdateUserGroupControls()
|
||||||
With Settings
|
With Settings
|
||||||
BTT_SHOW_GROUP_USERS.Checked = Settings.GroupUsers
|
BTT_SHOW_GROUP_USERS.Checked = Settings.GroupUsers
|
||||||
LIST_PROFILES.ShowGroups = Settings.GroupUsers
|
LIST_PROFILES.ShowGroups = Settings.GroupUsers
|
||||||
BTT_MODE_SHOW_USERS.Checked = .MainFrameUsersShowDefaults
|
|
||||||
BTT_MODE_SHOW_SUBSCRIPTIONS.Checked = .MainFrameUsersShowSubscriptions
|
|
||||||
BTT_SITE_ALL.Checked = .SelectedSites.Count = 0
|
|
||||||
BTT_SITE_SPECIFIC.Checked = .SelectedSites.Count > 0
|
|
||||||
BTT_SHOW_LIMIT_DATES_NOT.Tag = ShowingDates.Not
|
|
||||||
BTT_SHOW_LIMIT_DATES_NOT.Checked = .ViewDateMode.Value = ShowingDates.Not
|
|
||||||
BTT_SHOW_LIMIT_DATES_IN.Tag = ShowingDates.In
|
|
||||||
BTT_SHOW_LIMIT_DATES_IN.Checked = .ViewDateMode.Value = ShowingDates.In
|
|
||||||
End With
|
End With
|
||||||
End Sub
|
End Sub
|
||||||
#End Region
|
#End Region
|
||||||
|
|||||||
@@ -124,7 +124,11 @@ Friend Class MainFrameObjects : Implements INotificator
|
|||||||
#Region "LOG events support"
|
#Region "LOG events support"
|
||||||
Private _LogNotificationsEnabled As Boolean = True
|
Private _LogNotificationsEnabled As Boolean = True
|
||||||
Private Sub ProgramLog_TextAdded(ByVal Sender As Object, ByVal e As EventArgs)
|
Private Sub ProgramLog_TextAdded(ByVal Sender As Object, ByVal e As EventArgs)
|
||||||
If _LogNotificationsEnabled Then _LogNotificationsEnabled = False : ShowNotification(NotifyObj.LOG, "There is new data in the log")
|
If _LogNotificationsEnabled Then
|
||||||
|
_LogNotificationsEnabled = False
|
||||||
|
ShowNotification(NotifyObj.LOG, "There is new data in the log")
|
||||||
|
Try : ControlInvokeFast(MF.Toolbar_TOP, MF.BTT_LOG, AddressOf UpdateLogButton, EDP.None) : Catch : End Try
|
||||||
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub ProgramLog_TextCleared(ByVal Sender As Object, ByVal e As EventArgs)
|
Private Sub ProgramLog_TextCleared(ByVal Sender As Object, ByVal e As EventArgs)
|
||||||
_LogNotificationsEnabled = True
|
_LogNotificationsEnabled = True
|
||||||
|
|||||||
@@ -46,17 +46,6 @@ Friend Module MainMod
|
|||||||
List = View.Tile
|
List = View.Tile
|
||||||
Details = View.Details
|
Details = View.Details
|
||||||
End Enum
|
End Enum
|
||||||
Friend Enum ShowingModes As Integer
|
|
||||||
All = 0
|
|
||||||
Regular = 20
|
|
||||||
Temporary = 50
|
|
||||||
Favorite = 100
|
|
||||||
Labels = 500
|
|
||||||
NoLabels = 1000
|
|
||||||
Deleted = 10000
|
|
||||||
Suspended = 12000
|
|
||||||
AdvancedFilter = 100000
|
|
||||||
End Enum
|
|
||||||
Friend Enum ShowingDates As Integer
|
Friend Enum ShowingDates As Integer
|
||||||
[Off] = 0
|
[Off] = 0
|
||||||
[Not] = 1
|
[Not] = 1
|
||||||
@@ -88,9 +77,6 @@ Friend Module MainMod
|
|||||||
Friend ReadOnly DateTimeDefaultProvider As New ADateTime(ADateTime.Formats.BaseDateTime)
|
Friend ReadOnly DateTimeDefaultProvider As New ADateTime(ADateTime.Formats.BaseDateTime)
|
||||||
Friend ReadOnly SessionDateTimeProvider As New ADateTime("yyyyMMdd_HHmmss")
|
Friend ReadOnly SessionDateTimeProvider As New ADateTime("yyyyMMdd_HHmmss")
|
||||||
Friend ReadOnly FeedVideoLengthProvider As New ADateTime("hh\:mm\:ss") With {.TimeParseMode = ADateTime.TimeModes.TimeSpan}
|
Friend ReadOnly FeedVideoLengthProvider As New ADateTime("hh\:mm\:ss") With {.TimeParseMode = ADateTime.TimeModes.TimeSpan}
|
||||||
Friend ReadOnly UserExistsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists)
|
|
||||||
Friend ReadOnly UserExistsSubscriptionsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists And u.IsSubscription)
|
|
||||||
Friend ReadOnly UserExistsNonSubscriptionsPredicate As New FPredicate(Of IUserData)(Function(u) u.Exists And Not u.IsSubscription)
|
|
||||||
Friend ReadOnly LogConnector As New LogHost
|
Friend ReadOnly LogConnector As New LogHost
|
||||||
Friend DefaultUserAgent As String = String.Empty
|
Friend DefaultUserAgent As String = String.Empty
|
||||||
#Region "NonExistingUsersLog"
|
#Region "NonExistingUsersLog"
|
||||||
|
|||||||
@@ -301,6 +301,12 @@
|
|||||||
<Compile Include="Download\Groups\GroupEditorForm.vb">
|
<Compile Include="Download\Groups\GroupEditorForm.vb">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
<Compile Include="Download\Groups\GroupListForm.Designer.vb">
|
||||||
|
<DependentUpon>GroupListForm.vb</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Download\Groups\GroupListForm.vb">
|
||||||
|
<SubType>Form</SubType>
|
||||||
|
</Compile>
|
||||||
<Compile Include="Download\Groups\GroupParameters.vb" />
|
<Compile Include="Download\Groups\GroupParameters.vb" />
|
||||||
<Compile Include="Download\MissingPostsForm.Designer.vb">
|
<Compile Include="Download\MissingPostsForm.Designer.vb">
|
||||||
<DependentUpon>MissingPostsForm.vb</DependentUpon>
|
<DependentUpon>MissingPostsForm.vb</DependentUpon>
|
||||||
@@ -505,7 +511,6 @@
|
|||||||
<Compile Include="UserSearchForm.vb">
|
<Compile Include="UserSearchForm.vb">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ViewFilter.vb" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<EmbeddedResource Include="API\BaseObjects\InternalSettingsForm.resx">
|
<EmbeddedResource Include="API\BaseObjects\InternalSettingsForm.resx">
|
||||||
@@ -552,6 +557,9 @@
|
|||||||
<EmbeddedResource Include="Download\Groups\GroupEditorForm.resx">
|
<EmbeddedResource Include="Download\Groups\GroupEditorForm.resx">
|
||||||
<DependentUpon>GroupEditorForm.vb</DependentUpon>
|
<DependentUpon>GroupEditorForm.vb</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Download\Groups\GroupListForm.resx">
|
||||||
|
<DependentUpon>GroupListForm.vb</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Download\MissingPostsForm.resx">
|
<EmbeddedResource Include="Download\MissingPostsForm.resx">
|
||||||
<DependentUpon>MissingPostsForm.vb</DependentUpon>
|
<DependentUpon>MissingPostsForm.vb</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,263 +0,0 @@
|
|||||||
' Copyright (C) Andy https://github.com/AAndyProgram
|
|
||||||
' This program is free software: you can redistribute it and/or modify
|
|
||||||
' it under the terms of the GNU General Public License as published by
|
|
||||||
' the Free Software Foundation, either version 3 of the License, or
|
|
||||||
' (at your option) any later version.
|
|
||||||
'
|
|
||||||
' This program is distributed in the hope that it will be useful,
|
|
||||||
' but WITHOUT ANY WARRANTY
|
|
||||||
Imports PersonalUtilities.Tools
|
|
||||||
Imports PersonalUtilities.Functions.XML
|
|
||||||
Imports PersonalUtilities.Functions.XML.Base
|
|
||||||
Friend Structure ViewFilter : Implements IEContainerProvider, IComparable(Of ViewFilter)
|
|
||||||
#Region "Names"
|
|
||||||
Private Const Name_Name As String = "Name"
|
|
||||||
Private Const Name_ViewMode As String = "ViewMode"
|
|
||||||
Private Const Name_GroupUsers As String = "GroupUsers"
|
|
||||||
Private Const Name_ShowUsers As String = "ShowUsers"
|
|
||||||
Private Const Name_ShowSubscriptions As String = "ShowSubscriptions"
|
|
||||||
Private Const Name_Sites As String = "Sites"
|
|
||||||
Private Const Name_ShowingMode As String = "ShowingMode"
|
|
||||||
Private Const Name_Labels As String = "Labels"
|
|
||||||
Private Const Name_ExcludedLabels As String = "ExcludedLabels"
|
|
||||||
Private Const Name_IgnoreExcludedLabels As String = "IgnoreExcludedLabels"
|
|
||||||
Private Const Name_ShowGroupsInsteadLabels As String = "ShowGroupsInsteadLabels"
|
|
||||||
Private Const Name_FilterADV As String = "FilterADV"
|
|
||||||
Private Const Name_DateFrom As String = "DateFrom"
|
|
||||||
Private Const Name_DateTo As String = "DateTo"
|
|
||||||
Private Const Name_DateMode As String = "DateMode"
|
|
||||||
#End Region
|
|
||||||
#Region "Declarations"
|
|
||||||
Friend Name As String
|
|
||||||
|
|
||||||
Friend ViewMode As ViewModes
|
|
||||||
|
|
||||||
Friend GroupUsers As Boolean
|
|
||||||
|
|
||||||
Friend ShowUsers As Boolean
|
|
||||||
Friend ShowSubscriptions As Boolean
|
|
||||||
|
|
||||||
Friend Sites As IEnumerable(Of String)
|
|
||||||
|
|
||||||
Friend ShowingMode As ShowingModes
|
|
||||||
|
|
||||||
Friend Labels As IEnumerable(Of String)
|
|
||||||
|
|
||||||
Friend ExcludedLabels As IEnumerable(Of String)
|
|
||||||
Friend IgnoreExcludedLabels As Boolean
|
|
||||||
Friend ShowGroupsInsteadLabels As Boolean
|
|
||||||
|
|
||||||
Friend FilterADV As DownloadObjects.Groups.DownloadGroup
|
|
||||||
|
|
||||||
Friend DateFrom As Date?
|
|
||||||
Friend DateTo As Date?
|
|
||||||
Friend DateMode As ShowingDates
|
|
||||||
Friend ReadOnly Property LimitDates As Boolean
|
|
||||||
Get
|
|
||||||
Return (DateFrom.HasValue Or DateTo.HasValue) And Not DateMode = ShowingDates.Off
|
|
||||||
End Get
|
|
||||||
End Property
|
|
||||||
Friend Function GetAllLabels() As IEnumerable(Of String)
|
|
||||||
Return ListAddList(Nothing, Labels).ListAddList(ExcludedLabels).ListAddList({FilterADV}.GetGroupsLabels).ListIfNothing
|
|
||||||
End Function
|
|
||||||
#End Region
|
|
||||||
#Region "Initializers"
|
|
||||||
Friend Sub New(ByVal e As EContainer)
|
|
||||||
With e
|
|
||||||
Name = .Value(Name_Name)
|
|
||||||
ViewMode = .Value(Name_ViewMode).FromXML(Of Integer)(ViewModes.IconLarge)
|
|
||||||
GroupUsers = .Value(Name_GroupUsers).FromXML(Of Boolean)(True)
|
|
||||||
ShowUsers = .Value(Name_ShowUsers).FromXML(Of Boolean)(True)
|
|
||||||
ShowSubscriptions = .Value(Name_ShowSubscriptions).FromXML(Of Boolean)(True)
|
|
||||||
Sites = .Value(Name_Sites).StringToList(Of String)("|")
|
|
||||||
ShowingMode = .Value(Name_ShowingMode).FromXML(Of Integer)(ShowingModes.All)
|
|
||||||
Labels = .Value(Name_Labels).StringToList(Of String)("|")
|
|
||||||
ExcludedLabels = .Value(Name_ExcludedLabels).StringToList(Of String)("|")
|
|
||||||
IgnoreExcludedLabels = .Value(Name_IgnoreExcludedLabels).FromXML(Of Boolean)(False)
|
|
||||||
ShowGroupsInsteadLabels = .Value(Name_ShowGroupsInsteadLabels).FromXML(Of Boolean)(True)
|
|
||||||
With .Item(Name_FilterADV)
|
|
||||||
If If(?.Count, 0) > 0 Then
|
|
||||||
FilterADV = New DownloadObjects.Groups.DownloadGroup(.Item(0))
|
|
||||||
Else
|
|
||||||
FilterADV = New DownloadObjects.Groups.DownloadGroup
|
|
||||||
End If
|
|
||||||
End With
|
|
||||||
DateFrom = AConvert(Of Date)(.Value(Name_DateFrom), DateTimeDefaultProvider, Nothing)
|
|
||||||
DateTo = AConvert(Of Date)(.Value(Name_DateTo), DateTimeDefaultProvider, Nothing)
|
|
||||||
DateMode = .Value(Name_DateMode).FromXML(Of Integer)(ShowingDates.Off)
|
|
||||||
End With
|
|
||||||
End Sub
|
|
||||||
Friend Shared Function FromCurrent(Optional ByVal Name As String = "") As ViewFilter
|
|
||||||
Dim f As New ViewFilter
|
|
||||||
With Settings
|
|
||||||
f.Name = Name
|
|
||||||
|
|
||||||
f.ViewMode = .ViewMode
|
|
||||||
|
|
||||||
f.GroupUsers = .GroupUsers
|
|
||||||
|
|
||||||
f.ShowUsers = .MainFrameUsersShowDefaults
|
|
||||||
f.ShowSubscriptions = .MainFrameUsersShowSubscriptions
|
|
||||||
|
|
||||||
If .SelectedSites.Count > 0 Then f.Sites = .SelectedSites
|
|
||||||
|
|
||||||
f.ShowingMode = .ShowingMode
|
|
||||||
|
|
||||||
If .Labels.Current.Count > 0 Then f.Labels = .Labels.Current
|
|
||||||
|
|
||||||
If .Labels.Excluded.Count > 0 Then f.ExcludedLabels = .Labels.Excluded
|
|
||||||
f.IgnoreExcludedLabels = .Labels.ExcludedIgnore
|
|
||||||
f.ShowGroupsInsteadLabels = .ShowGroupsInsteadLabels
|
|
||||||
|
|
||||||
f.FilterADV = .AdvancedFilter.Copy
|
|
||||||
|
|
||||||
f.DateFrom = .ViewDateFrom
|
|
||||||
f.DateTo = .ViewDateTo
|
|
||||||
f.DateMode = .ViewDateMode
|
|
||||||
End With
|
|
||||||
Return f
|
|
||||||
End Function
|
|
||||||
#End Region
|
|
||||||
Friend Sub Populate()
|
|
||||||
With Settings
|
|
||||||
.BeginUpdate()
|
|
||||||
|
|
||||||
.ViewMode.Value = ViewMode
|
|
||||||
|
|
||||||
.GroupUsers.Value = GroupUsers
|
|
||||||
|
|
||||||
.MainFrameUsersShowDefaults.Value = ShowUsers
|
|
||||||
.MainFrameUsersShowSubscriptions.Value = ShowSubscriptions
|
|
||||||
|
|
||||||
With .SelectedSites
|
|
||||||
.Clear()
|
|
||||||
If Sites.ListExists Then .AddRange(Sites)
|
|
||||||
.Update()
|
|
||||||
End With
|
|
||||||
|
|
||||||
.ShowingMode.Value = ShowingMode
|
|
||||||
With .Labels
|
|
||||||
With .Current
|
|
||||||
.Clear()
|
|
||||||
If Labels.ListExists Then .AddRange(Labels)
|
|
||||||
.Update()
|
|
||||||
End With
|
|
||||||
|
|
||||||
With .Excluded
|
|
||||||
.Clear()
|
|
||||||
If ExcludedLabels.ListExists Then .AddRange(ExcludedLabels)
|
|
||||||
.Update()
|
|
||||||
End With
|
|
||||||
|
|
||||||
.ExcludedIgnore.Value = IgnoreExcludedLabels
|
|
||||||
End With
|
|
||||||
.ShowGroupsInsteadLabels.Value = ShowGroupsInsteadLabels
|
|
||||||
|
|
||||||
.AdvancedFilter.Copy(FilterADV)
|
|
||||||
.AdvancedFilter.UpdateFile()
|
|
||||||
|
|
||||||
.ViewDateFrom = DateFrom
|
|
||||||
.ViewDateTo = DateTo
|
|
||||||
.ViewDateMode.Value = DateMode
|
|
||||||
|
|
||||||
.EndUpdate()
|
|
||||||
End With
|
|
||||||
End Sub
|
|
||||||
Public Overrides Function ToString() As String
|
|
||||||
Return Name
|
|
||||||
End Function
|
|
||||||
Public Overrides Function Equals(ByVal Obj As Object) As Boolean
|
|
||||||
Return Name.StringToLower = DirectCast(Obj, ViewFilter).Name
|
|
||||||
End Function
|
|
||||||
Private Function CompareTo(ByVal Other As ViewFilter) As Integer Implements IComparable(Of ViewFilter).CompareTo
|
|
||||||
Return Name.CompareTo(Other.Name)
|
|
||||||
End Function
|
|
||||||
Friend Function ToEContainer(Optional ByVal e As ErrorsDescriber = Nothing) As EContainer Implements IEContainerProvider.ToEContainer
|
|
||||||
Return New EContainer("Filter") From {
|
|
||||||
New EContainer(Name_Name, Name),
|
|
||||||
New EContainer(Name_ViewMode, CInt(ViewMode)),
|
|
||||||
New EContainer(Name_GroupUsers, GroupUsers.BoolToInteger),
|
|
||||||
New EContainer(Name_ShowUsers, ShowUsers.BoolToInteger),
|
|
||||||
New EContainer(Name_ShowSubscriptions, ShowSubscriptions.BoolToInteger),
|
|
||||||
New EContainer(Name_Sites, Sites.ListToString("|")),
|
|
||||||
New EContainer(Name_ShowingMode, CInt(ShowingMode)),
|
|
||||||
New EContainer(Name_Labels, Labels.ListToString("|")),
|
|
||||||
New EContainer(Name_ExcludedLabels, ExcludedLabels.ListToString("|")),
|
|
||||||
New EContainer(Name_IgnoreExcludedLabels, IgnoreExcludedLabels.BoolToInteger),
|
|
||||||
New EContainer(Name_ShowGroupsInsteadLabels, ShowGroupsInsteadLabels.BoolToInteger),
|
|
||||||
New EContainer(Name_FilterADV) From {FilterADV.ToEContainer},
|
|
||||||
New EContainer(Name_DateFrom, AConvert(Of String)(DateFrom, DateTimeDefaultProvider, String.Empty)),
|
|
||||||
New EContainer(Name_DateTo, AConvert(Of String)(DateTo, DateTimeDefaultProvider, String.Empty)),
|
|
||||||
New EContainer(Name_DateMode, CInt(DateMode))
|
|
||||||
}
|
|
||||||
End Function
|
|
||||||
End Structure
|
|
||||||
Friend Class ViewFilterCollection : Implements IEnumerable(Of ViewFilter), IMyEnumerator(Of ViewFilter)
|
|
||||||
Private ReadOnly Filters As List(Of ViewFilter)
|
|
||||||
Private ReadOnly File As SFile = $"{SettingsFolderName}\SavedFilters.xml"
|
|
||||||
Friend Sub New()
|
|
||||||
Filters = New List(Of ViewFilter)
|
|
||||||
If File.Exists Then
|
|
||||||
Using x As New XmlFile(File, Protector.Modes.All, False) With {.AllowSameNames = True}
|
|
||||||
x.LoadData()
|
|
||||||
If x.Count > 0 Then Filters.ListAddList(x, LAP.IgnoreICopier)
|
|
||||||
End Using
|
|
||||||
End If
|
|
||||||
If Filters.Count > 0 Then Filters.Sort()
|
|
||||||
End Sub
|
|
||||||
Default Friend ReadOnly Property Item(ByVal Index As Integer) As ViewFilter Implements IMyEnumerator(Of ViewFilter).MyEnumeratorObject
|
|
||||||
Get
|
|
||||||
Return Filters(Index)
|
|
||||||
End Get
|
|
||||||
End Property
|
|
||||||
Friend ReadOnly Property Count As Integer Implements IMyEnumerator(Of ViewFilter).MyEnumeratorCount
|
|
||||||
Get
|
|
||||||
Return Filters.Count
|
|
||||||
End Get
|
|
||||||
End Property
|
|
||||||
Friend Function GetAllLabels() As IEnumerable(Of String)
|
|
||||||
If Count = 0 Then
|
|
||||||
Return New String() {}
|
|
||||||
Else
|
|
||||||
Return ListAddList(Nothing, Filters.SelectMany(Function(f) f.GetAllLabels), LAP.NotContainsOnly)
|
|
||||||
End If
|
|
||||||
End Function
|
|
||||||
Friend Sub Update()
|
|
||||||
If Count > 0 Then
|
|
||||||
Filters.Sort()
|
|
||||||
Using x As New XmlFile With {.AllowSameNames = True}
|
|
||||||
x.AddRange(Filters)
|
|
||||||
x.Name = "Filters"
|
|
||||||
x.Save(File, EDP.LogMessageValue)
|
|
||||||
End Using
|
|
||||||
Else
|
|
||||||
If File.Exists Then File.Delete()
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
Friend Sub Add(ByVal Item As ViewFilter, Optional ByVal AutoUpdate As Boolean = True)
|
|
||||||
Dim i% = IndexOf(Item)
|
|
||||||
If i >= 0 Then
|
|
||||||
Filters(i) = Item
|
|
||||||
Else
|
|
||||||
Filters.Add(Item)
|
|
||||||
End If
|
|
||||||
Filters.Sort()
|
|
||||||
If AutoUpdate Then Update()
|
|
||||||
End Sub
|
|
||||||
Friend Overloads Function IndexOf(ByVal Item As ViewFilter) As Integer
|
|
||||||
If Count > 0 Then
|
|
||||||
Return Filters.IndexOf(Item)
|
|
||||||
Else
|
|
||||||
Return -1
|
|
||||||
End If
|
|
||||||
End Function
|
|
||||||
Friend Overloads Function IndexOf(ByVal Name As String) As Integer
|
|
||||||
Return IndexOf(New ViewFilter With {.Name = Name})
|
|
||||||
End Function
|
|
||||||
Private Function GetEnumerator() As IEnumerator(Of ViewFilter) Implements IEnumerable(Of ViewFilter).GetEnumerator
|
|
||||||
Return New MyEnumerator(Of ViewFilter)(Me)
|
|
||||||
End Function
|
|
||||||
Private Function IEnumerable_GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
|
|
||||||
Return GetEnumerator()
|
|
||||||
End Function
|
|
||||||
End Class
|
|
||||||
Reference in New Issue
Block a user