aboutsummaryrefslogtreecommitdiffstats
path: root/data/defscript
diff options
context:
space:
mode:
authorGravatar un1versal2016-07-23 12:56:15 +0100
committerGravatar un1versal2016-07-30 11:28:55 +0100
commit361b5a9e381f8095306a98ca762b4701e4fa22be (patch)
tree3ae4bb98bd22d9dcfeb6eed251758fbd42c80473 /data/defscript
parentKviDefaultScript: actions.kvs allow restoring and loading by default (diff)
downloadKVIrc-361b5a9e381f8095306a98ca762b4701e4fa22be.tar.gz
KVIrc-361b5a9e381f8095306a98ca762b4701e4fa22be.tar.bz2
KVIrc-361b5a9e381f8095306a98ca762b4701e4fa22be.zip
actions: add default action to trigger the option control dialog
this works much better and without glitches rather then using popups to call a non popup dialog.
Diffstat (limited to 'data/defscript')
-rw-r--r--data/defscript/actions.kvs392
1 files changed, 392 insertions, 0 deletions
diff --git a/data/defscript/actions.kvs b/data/defscript/actions.kvs
new file mode 100644
index 000000000..3dc9f169f
--- /dev/null
+++ b/data/defscript/actions.kvs
@@ -0,0 +1,392 @@
+# Default actions file
+#
+# Coding style/curly brackets: Allman style
+
+action.create -w=xcqd -t=tools ("optionctrlr",$tr("Option controller"),$tr("Opens a control dialog for easy CTCP ignore and joins/parts/quits management."),"kvi_bigicon_settings.png",$icon(options))
+{
+ #################################################################
+ # #
+ # File : actions.kvs (optionctrlr) v4.1.1.6810 #
+ # Creation date : Fri Jul 22 16:57:41 2016 UTC by un1versal #
+ # #
+ #################################################################
+
+ # Prevent dialog from opening multiple times
+ if(%PDisplay)
+ halt;
+ else
+ %PDisplay = $true;
+
+ # This prologue houses the variables for the option controller dialog
+ # Add CTCP Protection Variables
+ %ProtectPing = $option(boolIgnoreCTCPPing)
+ %ProtectFinger = $option(boolIgnoreCTCPFinger)
+ %ProtectVersion = $option(boolIgnoreCTCPVersion)
+ %ProtectUserinfo = $option(boolIgnoreCTCPUserinfo)
+ %ProtectClientinfo = $option(boolIgnoreCTCPClientinfo)
+ %ProtectSource = $option(boolIgnoreCTCPSource)
+ %ProtectTime = $option(boolIgnoreCTCPTime)
+ %ProtectPage = $option(boolIgnoreCTCPPage)
+ %ProtectAvatar = $option(boolIgnoreCTCPAvatar)
+ %ProtectDCC = $option(boolIgnoreCTCPDCC)
+
+ # Add Join Suppression Variables
+ %IsJoinEnabled = $isEventEnabled(OnJoin, suppressJoinMsgs)
+ %IsPartEnabled = $isEventEnabled(OnPart, suppressPartMsgs)
+ %IsQuitEnabled = $isEventEnabled(OnQuit, suppressQuitMsgs)
+
+ # Create the main widget as a dialog
+ %widget = $new(dialog)
+ %layout = $new(layout,%widget)
+ %widget->$setWindowTitle($tr("Option Controllers - KVIrc"))
+
+ # Add dialog geometry restrictions.
+ # Prevent dialog from looking nasty when resized!
+ # Maximum width accounts for translations
+ %widget->$setWFlags(dialog)
+ %widget->$setMinimumHeight(450)
+ %widget->$setMaximumHeight(450)
+ %widget->$setMinimumWidth(330)
+ %widget->$setMaximumWidth(555)
+ %widget->$resize(330,450)
+ # Make sure dialog is ontop and can be navigated by keyboard
+ %widget->$raise()
+ %widget->$setfocus()
+
+ # Create the CTCP controlled groupbox
+ %groupbox = $new(groupbox,%widget)
+ %groupbox->$setTitle($tr("CTCP Ignore Controllers"))
+ %groupbox->$setAlignment("left")
+
+ # Add groupbox to main layout
+ %layout->$addWidget(%groupbox,0,0)
+
+ # Create checkboxes + labels
+ %vbox = $new(vbox,%groupbox)
+
+ %checkboxping = $new(checkbox,%vbox)
+ %checkboxping->$setText($tr("Enable ignore for CTCP PING"))
+ %checkboxping->$setToolTip($tr("When checked, all CTCP PING requests are ignored."))
+ %checkboxping->$setchecked(%ProtectPing)
+
+ # Here comes the magic
+ privateimpl(%checkboxping,checkbox)
+ {
+ if(%ProtectPing)
+ {
+ option boolIgnoreCTCPPing 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP PING")
+ }
+ else
+ {
+ option boolIgnoreCTCPPing 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP PING")
+ }
+ %ProtectPing = $option(boolIgnoreCTCPPing)
+ }
+ objects.connect %checkboxping clicked %checkboxping checkbox
+
+ %checkboxfinger = $new(checkbox,%vbox)
+ %checkboxfinger->$setText($tr("Enable ignore for CTCP FINGER"))
+ %checkboxfinger->$setToolTip($tr("When checked, all CTCP FINGER requests are ignored."))
+ %checkboxfinger->$setchecked(%ProtectFinger)
+
+ # Here comes the magic
+ privateimpl(%checkboxfinger,checkbox)
+ {
+ if(%ProtectFinger)
+ {
+ option boolIgnoreCTCPFinger 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP FINGER")
+ }
+ else
+ {
+ option boolIgnoreCTCPFinger 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP FINGER")
+ }
+ %ProtectFinger = $option(boolIgnoreCTCPFinger)
+ }
+ objects.connect %checkboxfinger clicked %checkboxfinger checkbox
+
+ %checkboxversion = $new(checkbox,%vbox)
+ %checkboxversion->$setText($tr("Enable ignore for CTCP VERSION"))
+ %checkboxversion->$setToolTip($tr("When checked, all CTCP VERSION requests are ignored."))
+ %checkboxversion->$setchecked(%ProtectVersion)
+
+ # Here comes the magic
+ privateimpl(%checkboxversion,checkbox)
+ {
+ if(%ProtectVersion)
+ {
+ option boolIgnoreCTCPVersion 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP VERSION")
+ }
+ else
+ {
+ option boolIgnoreCTCPVersion 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP VERSION")
+ }
+ %ProtectVersion = $option(boolIgnoreCTCPVersion)
+ }
+ objects.connect %checkboxversion clicked %checkboxversion checkbox
+
+ %checkboxuserinfo = $new(checkbox,%vbox)
+ %checkboxuserinfo->$setText($tr("Enable ignore for CTCP USERINFO"))
+ %checkboxuserinfo->$setToolTip($tr("When checked, all CTCP USERINFO requests are ignored."))
+ %checkboxuserinfo->$setchecked(%ProtectUserinfo)
+
+ # Here comes the magic
+ privateimpl(%checkboxuserinfo,checkbox)
+ {
+ if(%ProtectUserinfo)
+ {
+ option boolIgnoreCTCPUserinfo 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP USERINFO")
+ }
+ else
+ {
+ option boolIgnoreCTCPUserinfo 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP USERINFO")
+ }
+ %ProtectUserinfo = $option(boolIgnoreCTCPUserinfo)
+ }
+ objects.connect %checkboxuserinfo clicked %checkboxuserinfo checkbox
+
+ %checkboxclientinfo = $new(checkbox,%vbox)
+ %checkboxclientinfo->$setText($tr("Enable ignore for CTCP CLIENTINFO"))
+ %checkboxclientinfo->$setToolTip($tr("When checked, all CTCP CLIENTINFO requests are ignored."))
+ %checkboxclientinfo->$setchecked(%ProtectClientInfo)
+
+ # Here comes the magic
+ privateimpl(%checkboxclientinfo,checkbox)
+ {
+ if(%ProtectClientInfo)
+ {
+ option boolIgnoreCTCPClientinfo 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP CLIENTINFO")
+ }
+ else
+ {
+ option boolIgnoreCTCPClientinfo 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP CLIENTINFO")
+ }
+ %ProtectClientInfo = $option(boolIgnoreCTCPClientinfo)
+ }
+ objects.connect %checkboxclientinfo clicked %checkboxclientinfo checkbox
+
+ %checkboxsource = $new(checkbox,%vbox)
+ %checkboxsource->$setText($tr("Enable ignore for CTCP SOURCE"))
+ %checkboxsource->$setToolTip($tr("When checked, all CTCP SOURCE requests are ignored."))
+ %checkboxsource->$setchecked(%ProtectSource)
+
+ # Here comes the magic
+ privateimpl(%checkboxsource,checkbox)
+ {
+ if(%ProtectSource)
+ {
+ option boolIgnoreCTCPSource 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP SOURCE")
+ }
+ else
+ {
+ option boolIgnoreCTCPSource 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP SOURCE")
+ }
+ %ProtectSource = $option(boolIgnoreCTCPSource)
+ }
+ objects.connect %checkboxsource clicked %checkboxsource checkbox
+
+ %checkboxtime = $new(checkbox,%vbox)
+ %checkboxtime->$setText($tr("Enable ignore for CTCP TIME"))
+ %checkboxtime->$setToolTip($tr("When checked, all CTCP TIME requests are ignored."))
+ %checkboxtime->$setchecked(%ProtectTime)
+
+ # Here comes the magic
+ privateimpl(%checkboxtime,checkbox)
+ {
+ if(%ProtectTime)
+ {
+ option boolIgnoreCTCPTime 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP TIME")
+ }
+ else
+ {
+ option boolIgnoreCTCPTime 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP TIME")
+ }
+ %ProtectTime = $option(boolIgnoreCTCPTime)
+ }
+ objects.connect %checkboxtime clicked %checkboxtime checkbox
+
+ %checkboxpage = $new(checkbox,%vbox)
+ %checkboxpage->$setText($tr("Enable ignore for CTCP PAGE"))
+ %checkboxpage->$setToolTip($tr("When checked, all CTCP PAGE requests are ignored."))
+ %checkboxpage->$setchecked(%ProtectPage)
+
+ # Here comes the magic
+ privateimpl(%checkboxpage,checkbox)
+ {
+ if(%ProtectPage)
+ {
+ option boolIgnoreCTCPPage 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP PAGE")
+ }
+ else
+ {
+ option boolIgnoreCTCPPage 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP PAGE")
+ }
+ %ProtectPage = $option(boolIgnoreCTCPPage)
+ }
+ objects.connect %checkboxpage clicked %checkboxpage checkbox
+
+ %checkboxavatar = $new(checkbox,%vbox)
+ %checkboxavatar->$setText($tr("Enable ignore for CTCP AVATAR"))
+ %checkboxavatar->$setToolTip($tr("When checked, all CTCP AVATAR requests are ignored."))
+ %checkboxavatar->$setchecked(%ProtectAvatar)
+
+ # Here comes the magic
+ privateimpl(%checkboxavatar,checkbox)
+ {
+ if(%ProtectAvatar)
+ {
+ option boolIgnoreCTCPAvatar 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP AVATAR")
+ }
+ else
+ {
+ option boolIgnoreCTCPAvatar 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP AVATAR")
+ }
+ %ProtectAvatar = $option(boolIgnoreCTCPAvatar)
+ }
+ objects.connect %checkboxavatar clicked %checkboxavatar checkbox
+
+ %checkboxdcc = $new(checkbox,%vbox)
+ %checkboxdcc->$setText($tr("Enable ignore for CTCP DCC"))
+ %checkboxdcc->$setToolTip($tr("When checked, all CTCP DCC requests are ignored."))
+ %checkboxdcc->$setchecked(%ProtectDCC)
+
+ # Here comes the magic
+ privateimpl(%checkboxdcc,checkbox)
+ {
+ if(%ProtectDCC)
+ {
+ option boolIgnoreCTCPDCC 0
+ echo -i = $msgtype(GenericStatus) $tr("Disabled ignore for CTCP DCC")
+ }
+ else
+ {
+ option boolIgnoreCTCPDCC 1
+ echo -i = $msgtype(GenericStatus) $tr("Enabled ignore for CTCP DCC")
+ }
+ %ProtectDCC = $option(boolIgnoreCTCPDCC)
+ }
+ objects.connect %checkboxdcc clicked %checkboxdcc checkbox
+
+ # Then the groupbox
+ %groupbox = $new(groupbox,%widget)
+ %groupbox->$setTitle($tr("Message Suppression Controllers"))
+ %groupbox->$setAlignment("left")
+
+ # Add the groupbox to the main layout
+ %layout->$addWidget(%groupbox,1,0)
+
+ # Now we create checkboxes + labels
+ %vbox = $new(vbox,%groupbox)
+
+ %checkboxjoin = $new(checkbox,%vbox)
+ %checkboxjoin->$setText($tr("Enable join message suppression"))
+ %checkboxjoin->$setToolTip($tr("When checked, all join messages are hidden."))
+ %checkboxjoin->$setchecked(%IsJoinEnabled)
+
+ # Here comes the magic
+ privateimpl(%checkboxjoin,checkbox)
+ {
+ if($isEventEnabled(OnJoin, suppressJoinMsgs))
+ {
+ eventctl -d OnJoin suppressJoinMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Disabled join message suppression")
+ }
+ else
+ {
+ eventctl -e OnJoin suppressJoinMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Enabled join message suppression")
+ }
+ %IsJoinEnabled = $isEventEnabled(OnJoin, suppressJoinMsgs)
+ }
+ objects.connect %checkboxjoin clicked %checkboxjoin checkbox
+
+ # Here comes the magic
+ %checkboxpart = $new(checkbox,%vbox)
+ %checkboxpart->$setText($tr("Enable part message suppression"))
+ %checkboxpart->$setToolTip($tr("When checked, all part messages are hidden."))
+ %checkboxpart->$setchecked(%IsPartEnabled)
+
+ privateimpl(%checkboxpart,checkbox)
+ {
+ if($isEventEnabled(OnPart, suppressPartMsgs))
+ {
+ eventctl -d OnPart suppressPartMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Disabled part message suppression")
+ }
+ else
+ {
+ eventctl -e OnPart suppressPartMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Enabled part message suppression")
+ }
+ %IsPartEnabled = $isEventEnabled(OnPart, suppressPartMsgs)
+ }
+ objects.connect %checkboxpart clicked %checkboxpart checkbox
+
+ %checkboxquit = $new(checkbox,%vbox)
+ %checkboxquit->$setText($tr("Enable quit message suppression"))
+ %checkboxquit->$setToolTip($tr("When checked, all part messages are hidden."))
+ %checkboxquit->$setchecked(%IsQuitEnabled)
+
+ # Here comes the magic
+ privateimpl(%checkboxquit,checkbox)
+ {
+ if($isEventEnabled(OnQuit, suppressQuitMsgs))
+ {
+ eventctl -d OnQuit suppressQuitMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Disabled quit message suppression")
+ }
+ else
+ {
+ eventctl -e OnQuit suppressQuitMsgs
+ echo -i = $msgtype(GenericStatus) $tr("Enabled quit message suppression")
+ }
+ %IsQuitEnabled = $isEventEnabled(OnQuit, suppressQuitMsgs)
+ }
+ objects.connect %checkboxquit clicked %checkboxquit checkbox
+
+ # Now add the Close button
+ %grouphbox = $new(groupbox,%widget)
+ %hrzbox = $new(hbox,%grouphbox)
+ %layout->$addWidget(%grouphbox,2,0)
+
+ %closebutton = $new(button,%hrzbox)
+ %closebutton->$settext($tr("Close"))
+
+ %grouphbox->$isFlat($true)
+ %grouphbox->$setInsideMargin(0)
+ %grouphbox->$setAlignment(right)
+
+ # Here comes the magic
+ privateimpl(%widget,closeEvent)
+ {
+ ## And kill dialog on close
+ delete -q $$
+
+ # Unset all the variables: after delete so %Pdisplay is definitely unset
+ unset %PDisplay, %ProtectPing, %ProtectFinger, %ProtectVersion, %ProtectUserinfo \
+ %ProtectClientinfo, %ProtectSource, %ProtectTime, %ProtectPage, %ProtectAvatar \
+ %ProtectDCC, %IsJoinEnabled, %IsPartEnabled, %IsQuitEnabled
+ }
+ objects.connect %closebutton clicked %widget closeEvent
+
+ # Let's show this sexy dialog
+ %widget->$show()
+}
+