aboutsummaryrefslogtreecommitdiffstats
path: root/data/defscript
diff options
context:
space:
mode:
authorGravatar un1versal2016-09-19 10:26:06 +0100
committerGravatar Static2016-10-02 15:03:33 -0400
commit1d336d6629137b48d81a029b2dfce743495c22f7 (patch)
treecaf2ecf46a470bf4bc2e0d8cee8dae94fbe03f07 /data/defscript
parentKviSelectors: Allow for alternate locale numbers in a KviUIntSelector (diff)
downloadKVIrc-1d336d6629137b48d81a029b2dfce743495c22f7.tar.gz
KVIrc-1d336d6629137b48d81a029b2dfce743495c22f7.tar.bz2
KVIrc-1d336d6629137b48d81a029b2dfce743495c22f7.zip
popups: move user control prologue and options to own popup
This separates the channel popup prologue at https://github.com/kvirc/KVIrc/blob/master/data/defscript/popups.kvs#L1614-L1661 and the control popup at https://github.com/kvirc/KVIrc/blob/master/data/defscript/popups.kvs#L1702-L1808 into a its own usercontrol popup. this allows: 1) Calling the usercontrol as a external menu instead from existing channel popup 2) Allows extending user control in future easily and reusing by calling as externalpopup and avoid duplicating code.
Diffstat (limited to 'data/defscript')
-rw-r--r--data/defscript/popups.kvs310
1 files changed, 156 insertions, 154 deletions
diff --git a/data/defscript/popups.kvs b/data/defscript/popups.kvs
index a1eb81fe2..61d31b0ba 100644
--- a/data/defscript/popups.kvs
+++ b/data/defscript/popups.kvs
@@ -1050,6 +1050,161 @@ defpopup(dcc)
}
}
+defpopup(usercontrol)
+{
+ prologue
+ {
+ # we use the extended scope variables: they are visible in the entire defpopup scope
+ # %:visible is the string that we will "show to the user" in the popup widget
+ # for multiple users the string might become long so we are going to change it in "multiple users"
+ %:visible = $0
+ # %:multiple is an internal flag: set to 1 if the parameter passed to the popup contains a list
+ # of multiple nicknames rather than a single nick
+ %:multiple = 0
+ # finally , set these variables
+ %:itemBanName = $tr("Ban")
+ if($str.findfirst(%:visible,",") != -1)
+ {
+ # found a comma in the $0 parameter...we have multiple nicknames
+ %:visible = "("$tr("Multiple Users","defscript")")"
+ %:multiple = 1
+ %:itemBanMask = "*!user@*.host.tld"
+ %:itemBanNick = "nick"
+ }
+ else
+ {
+ %:itemBanMask = $mask(%:visible,$option(uintDefaultBanType))
+ if("%:itemBanMask" == "*!*@*")
+ %:itemBanName = $tr("&Ban")
+ %:itemBanNick = %:visible
+ }
+ # speed it up
+
+ %:isMeHalfOp = $chan.isMeHalfOp()
+ %:isMeOp = $chan.isMeOp()
+ %:isMeOwner = $chan.isMeOwner()
+ %:isMeAdmin = $chan.isMeAdmin()
+ %:bCanKB = 0;
+
+ if(%:isMeHalfOp)
+ {
+ foreach(%nick,$str.split(",",$0))
+ {
+ if($chan.usermodelevel(%nick) <= $chan.usermodelevel($me))
+ {
+ %:bCanKB = 1;
+ break;
+ }
+ }
+ }
+ }
+
+ label($usermodename($me()))
+
+ item($tr("O&wner","defscript") %:visible,$icon("chanowner")) (%:isMeOwner)
+ {
+ chanowner $0
+ }
+
+ item($tr("&Deowner","defscript") %:visible,$icon("chanunowner")) (%:isMeOwner)
+ {
+ dechanowner $0
+ }
+
+ item($tr("&Administrator","defscript") %:visible,$icon("chanadmin")) (%:isMeAdmin)
+ {
+ chanadmin $0
+ }
+
+ item($tr("&Deadministrator","defscript") %:visible,$icon("chanunadmin")) (%:isMeAdmin)
+ {
+ dechanadmin $0
+ }
+
+ item($tr("&Op","defscript") %:visible,$icon("op")) (%:isMeOp)
+ {
+ op $0
+ }
+
+ item($tr("&Deop","defscript") %:visible,$icon("deop")) (%:isMeOp)
+ {
+ deop $0
+ }
+
+ item($tr("&Halfop","defscript") %:visible,$icon("halfop")) (%:isMeOp)
+ {
+ halfop $0
+ }
+
+ item($tr("&Dehalfop","defscript") %:visible,$icon("halfdeop")) (%:isMeOp)
+ {
+ dehalfop $0
+ }
+
+ item($tr("&Voice","defscript") %:visible,$icon("voice")) (%:isMeHalfOp)
+ {
+ voice $0
+ }
+
+ item($tr("D&evoice","defscript") %:visible,$icon("devoice")) (%:isMeHalfOp)
+ {
+ devoice $0
+ }
+
+ separator
+
+ item($tr("&Kick","defscript") %:visible,$icon("kick")) (%:bCanKB)
+ {
+ foreach(%i,$str.split(",",$0))
+ kick %i
+ }
+
+ item($tr("K&ick","defscript") %:visible $tr("With...","defscript"),$icon("kick")) (%:bCanKB)
+ {
+ dialog.textinput -d="$me" -i=110 ($tr("Kick Reason","defscript"),$tr("Enter a kick reason","defscript"),$tr("&Kick","defscript"),$tr("Cancel","defscript"),,$0)
+ {
+ if($0 == 0)
+ {
+ foreach(%i,$str.split(",",$2))
+ kick %i $1
+ }
+ }
+ }
+
+ item($tr("&Ban","defscript") %:visible "("%:itemBanMask")",$icon("kick")) (("%:itemBanMask" != "*!*@*") && %:bCanKB)
+ {
+ ban $mask($0,$option(uintDefaultBanType))
+ }
+
+ item(%:itemBanName %:visible "("%:itemBanNick!*@*")",$icon("kick")) (%:bCanKB)
+ {
+ ban $0
+ }
+
+ item($tr("Kick/Ban","defscript") %:visible,$icon("kick")) (%:bCanKB)
+ {
+ kb $0
+ }
+
+ item($tr("Kick/Ban","defscript") %:visible $tr("with...","defscript"),$icon("kick")) (%:bCanKB)
+ {
+ dialog.textinput -d="$me" -i=110 ($tr("Kick/Ban Reason","defscript"),$tr("Enter a kick/ban reason","defscript"),$tr("&Kick/Ban","defscript"),$tr("Cancel","defscript"),,$0)
+ {
+ if($0 == 0)
+ {
+ kb $2 $1
+ }
+ }
+ }
+
+ separator
+
+ item($tr("Configure Ban Mask...","defscript"),$icon("options"))
+ {
+ options.edit OptionsWidget_channelAdvanced
+ }
+}
+
defpopup(channeltextview)
{
label($tr("You're not connected to a server","defscript")) (!$server)
@@ -1613,53 +1768,6 @@ defpopup(registration)
defpopup(channel)
{
- prologue
- {
- # we use the extended scope variables: they are visible in the entire defpopup scope
- # %:visible is the string that we will "show to the user" in the popup widget
- # for multiple users the string might become long so we are going to change it in "multiple users"
- %:visible = $0
- # %:multiple is an internal flag: set to 1 if the parameter passed to the popup contains a list
- # of multiple nicknames rather than a single nick
- %:multiple = 0
- # finally , set these variables
- %:itemBanName = $tr("Ban")
- if($str.findfirst(%:visible,",") != -1)
- {
- # found a comma in the $0 parameter...we have multiple nicknames
- %:visible = "("$tr("Multiple Users","defscript")")"
- %:multiple = 1
- %:itemBanMask = "*!user@*.host.tld"
- %:itemBanNick = "nick"
- }
- else
- {
- %:itemBanMask = $mask(%:visible,$option(uintDefaultBanType))
- if("%:itemBanMask" == "*!*@*")
- %:itemBanName = $tr("&Ban")
- %:itemBanNick = %:visible
- }
- # speed it up
-
- %:isMeHalfOp = $chan.isMeHalfOp()
- %:isMeOp = $chan.isMeOp()
- %:isMeOwner = $chan.isMeOwner()
- %:isMeAdmin = $chan.isMeAdmin()
- %:bCanKB = 0;
-
- if(%:isMeHalfOp)
- {
- foreach(%nick,$str.split(",",$0))
- {
- if($chan.usermodelevel(%nick) <= $chan.usermodelevel($me))
- {
- %:bCanKB = 1;
- break;
- }
- }
- }
- }
-
item($str.printf($tr("/WHOIS ?s (idle time)","defscript"),%:visible),$icon("whoisuser")) (!%:multiple && $server)
{
foreach(%i,$str.split(",",$0))
@@ -1699,113 +1807,7 @@ defpopup(channel)
}
}
- popup($tr("&Control","defscript"),$icon("options")) (%:isMeHalfOp)
- {
- label($usermodename($me()))
-
- item($tr("O&wner","defscript") %:visible,$icon("chanowner")) (%:isMeOwner)
- {
- chanowner $0
- }
-
- item($tr("&Deowner","defscript") %:visible,$icon("chanunowner")) (%:isMeOwner)
- {
- dechanowner $0
- }
-
- item($tr("&Administrator","defscript") %:visible,$icon("chanadmin")) (%:isMeAdmin)
- {
- chanadmin $0
- }
-
- item($tr("&Deadministrator","defscript") %:visible,$icon("chanunadmin")) (%:isMeAdmin)
- {
- dechanadmin $0
- }
-
- item($tr("&Op","defscript") %:visible,$icon("op")) (%:isMeOp)
- {
- op $0
- }
-
- item($tr("&Deop","defscript") %:visible,$icon("deop")) (%:isMeOp)
- {
- deop $0
- }
-
- item($tr("&Halfop","defscript") %:visible,$icon("halfop")) (%:isMeOp)
- {
- halfop $0
- }
-
- item($tr("&Dehalfop","defscript") %:visible,$icon("halfdeop")) (%:isMeOp)
- {
- dehalfop $0
- }
-
- item($tr("&Voice","defscript") %:visible,$icon("voice")) (%:isMeHalfOp)
- {
- voice $0
- }
-
- item($tr("D&evoice","defscript") %:visible,$icon("devoice")) (%:isMeHalfOp)
- {
- devoice $0
- }
-
- separator
-
- item($tr("&Kick","defscript") %:visible,$icon("kick")) (%:bCanKB)
- {
- foreach(%i,$str.split(",",$0))
- kick %i
- }
-
- item($tr("K&ick","defscript") %:visible $tr("With...","defscript"),$icon("kick")) (%:bCanKB)
- {
- dialog.textinput -d="$me" -i=110 ($tr("Kick Reason","defscript"),$tr("Enter a kick reason","defscript"),$tr("&Kick","defscript"),$tr("Cancel","defscript"),,$0)
- {
- if($0 == 0)
- {
- foreach(%i,$str.split(",",$2))
- kick %i $1
- }
- }
- }
-
- item($tr("&Ban","defscript") %:visible "("%:itemBanMask")",$icon("kick")) (("%:itemBanMask" != "*!*@*") && %:bCanKB)
- {
- ban $mask($0,$option(uintDefaultBanType))
- }
-
- item(%:itemBanName %:visible "("%:itemBanNick!*@*")",$icon("kick")) (%:bCanKB)
- {
- ban $0
- }
-
- item($tr("Kick/Ban","defscript") %:visible,$icon("kick")) (%:bCanKB)
- {
- kb $0
- }
-
- item($tr("Kick/Ban","defscript") %:visible $tr("with...","defscript"),$icon("kick")) (%:bCanKB)
- {
- dialog.textinput -d="$me" -i=110 ($tr("Kick/Ban Reason","defscript"),$tr("Enter a kick/ban reason","defscript"),$tr("&Kick/Ban","defscript"),$tr("Cancel","defscript"),,$0)
- {
- if($0 == 0)
- {
- kb $2 $1
- }
- }
- }
-
- separator
-
- item($tr("Configure Ban Mask...","defscript"),$icon("options"))
- {
- options.edit OptionsWidget_channelAdvanced
- }
- }
+ extpopup($tr("&User Control","defscript"),usercontrol,$icon("options"))
separator