Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Intellij Community
Commits
70b0e51c
Commit
70b0e51c
authored
6 years ago
by
Julia Beliaeva
1
Browse files
Options
Download
Email Patches
Plain Diff
[vcs-log] add usages triggers for setting filters
parent
3f67db66
Branches unavailable
Tags unavailable
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
platform/vcs-log/impl/src/com/intellij/vcs/log/ui/filter/FilterModel.java
+32
-0
.../impl/src/com/intellij/vcs/log/ui/filter/FilterModel.java
with
32 additions
and
0 deletions
+32
-0
platform/vcs-log/impl/src/com/intellij/vcs/log/ui/filter/FilterModel.java
+
32
-
0
View file @
70b0e51c
...
...
@@ -2,17 +2,21 @@
package
com.intellij.vcs.log.ui.filter
;
import
com.intellij.openapi.util.Computable
;
import
com.intellij.openapi.util.text.StringUtil
;
import
com.intellij.util.containers.ContainerUtil
;
import
com.intellij.vcs.log.VcsLogDataPack
;
import
com.intellij.vcs.log.VcsLogFilter
;
import
com.intellij.vcs.log.VcsLogFilterCollection
;
import
com.intellij.vcs.log.impl.MainVcsLogUiProperties
;
import
com.intellij.vcs.log.statistics.VcsLogUsageTriggerCollector
;
import
com.intellij.vcs.log.visible.filters.FilterPair
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.annotations.Nullable
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.function.Function
;
abstract
class
FilterModel
<
Filter
>
{
@NotNull
protected
final
MainVcsLogUiProperties
myUiProperties
;
...
...
@@ -61,6 +65,10 @@ abstract class FilterModel<Filter> {
mySetFilterListeners
.
add
(
runnable
);
}
protected
static
void
triggerFilterSet
(
@NotNull
String
name
)
{
VcsLogUsageTriggerCollector
.
triggerUsage
(
StringUtil
.
capitalize
(
name
)
+
"FilterSet"
,
false
);
}
public
static
abstract
class
SingleFilterModel
<
Filter
extends
VcsLogFilter
>
extends
FilterModel
<
Filter
>
{
@NotNull
private
final
VcsLogFilterCollection
.
FilterKey
<?
extends
Filter
>
myFilterKey
;
...
...
@@ -76,6 +84,13 @@ abstract class FilterModel<Filter> {
}
}
@Override
void
setFilter
(
@Nullable
Filter
filter
)
{
super
.
setFilter
(
filter
);
if
(
filter
!=
null
)
triggerFilterSet
(
myFilterKey
.
getName
());
}
@Nullable
protected
abstract
Filter
createFilter
(
@NotNull
List
<
String
>
values
);
...
...
@@ -120,6 +135,23 @@ abstract class FilterModel<Filter> {
}
}
@Override
void
setFilter
(
@Nullable
FilterPair
<
Filter1
,
Filter2
>
filter
)
{
triggerFilterSet
(
filter
,
FilterPair:
:
getFilter1
,
myFilterKey1
.
getName
());
triggerFilterSet
(
filter
,
FilterPair:
:
getFilter2
,
myFilterKey2
.
getName
());
super
.
setFilter
(
filter
);
}
private
<
F
>
void
triggerFilterSet
(
@Nullable
FilterPair
<
Filter1
,
Filter2
>
filter
,
@NotNull
Function
<
FilterPair
<
Filter1
,
Filter2
>,
F
>
getter
,
@NotNull
String
name
)
{
F
oldFilter
=
myFilter
==
null
?
null
:
getter
.
apply
(
myFilter
);
F
newFilter
=
filter
==
null
?
null
:
getter
.
apply
(
filter
);
if
(!
ObjectUtils
.
equals
(
oldFilter
,
newFilter
)
&&
newFilter
!=
null
)
{
triggerFilterSet
(
name
);
}
}
@Override
protected
void
saveFilterToProperties
(
@Nullable
FilterPair
<
Filter1
,
Filter2
>
filter
)
{
if
(
filter
==
null
||
filter
.
getFilter1
()
==
null
)
{
...
...
This diff is collapsed.
Click to expand it.
小 白蛋
@baidan
mentioned in commit
daa0783f
·
2 years ago
mentioned in commit
daa0783f
mentioned in commit daa0783f865f2229edf102cbca9f482233f8417a
Toggle commit list
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help