aboutsummaryrefslogtreecommitdiffstats
path: root/data/defscript
diff options
context:
space:
mode:
Diffstat (limited to 'data/defscript')
-rw-r--r--data/defscript/default.kvc4
-rw-r--r--data/defscript/popups.kvs117
2 files changed, 109 insertions, 12 deletions
diff --git a/data/defscript/default.kvc b/data/defscript/default.kvc
index c31adc40f..9ea89ba62 100644
--- a/data/defscript/default.kvc
+++ b/data/defscript/default.kvc
@@ -1,12 +1,12 @@
# KVIrc configuration file
[KVIrc]
Version=4.1.1
-Date=2010-12-22
+Date=2010-12-25
ActionVersion=4.1.1
AddonVersion=4.1.1
AliasVersion=4.1.1.5184
EventVersion=4.1.1.5219
-PopupVersion=4.1.1
+PopupVersion=4.1.1.5223
ClassVersion=4.1.1
RawVersion=4.1.1
PopupVersion=4.1.1.5159
diff --git a/data/defscript/popups.kvs b/data/defscript/popups.kvs
index a6d883964..e2c924ff7 100644
--- a/data/defscript/popups.kvs
+++ b/data/defscript/popups.kvs
@@ -1329,6 +1329,55 @@ file.addimagepath %mypath/pics/
defpopup(windowpopup)
{
+ prologue
+ {
+ %:bIsConnectedConsole = $(($window.type == "console") && ($context.state == "connected"));
+
+ if($window.type == "channel")
+ {
+ %:bIsChannel = $true;
+ %:szNetwork = $context.serverdbNetworkName()
+ %:szServer = $context.serverdbServerHostName()
+ %:bIsAutoJoinedOnNetwork = $false;
+ %:bIsAutoJoinedOnServer = $false;
+
+ if($serverdb.networkExists(%:szNetwork))
+ {
+ foreach(%szChanAndPass,$serverdb.networkJoinChannels(%:szNetwork))
+ {
+ %aChanAndPass = $str.split(":",%szChanAndPass)
+
+ if(%aChanAndPass[0] == $chan.name)
+ {
+ %:bIsAutoJoinedOnNetwork = $true;
+ break;
+ }
+ }
+ if($serverdb.serverExists(%:szServer,%:szNetwork))
+ {
+ foreach(%szChanAndPass,$serverdb.serverJoinChannels(%:szNetwork,%:szServer))
+ {
+ %aChanAndPass = $str.split(":",%szChanAndPass)
+
+ if(%aChanAndPass[0] == $chan.name)
+ {
+ %:bIsAutoJoinedOnServer = $true;
+ break;
+ }
+ }
+ } else {
+ %:szServer = ""
+ }
+ } else {
+ %:szNetwork = ""
+ }
+ %:bIsAutoJoined = $(%:bIsAutoJoinedOnNetwork || %:bIsAutoJoinedOnServer)
+ } else {
+ %:bIsChannel = $false;
+ }
+ }
+
+
item($tr("Dock","defscript"), 6) (!$window.isDocked()) window.dock
item($tr("Undock","defscript"), 7) ($window.isDocked()) window.undock
@@ -1348,49 +1397,97 @@ defpopup(windowpopup)
item($tr("Set window props as default","defscript"), 10) window.savePropertiesAsDefault
- separator
+ # channel-specific items
+
+ separator(%:bIsChannel)
+
+ popup($tr("Automatically Join Channel","defscript"),$icon("join"))(%:bIsChannel && (!%:bIsAutoJoined) && ((%:szServer != "") || (%:szNetwork != "")))
+ {
-# start: console-specific items
+ item($str.printf($tr("When Connecting to Server '?s'","defscript"),%:szServer),$icon("server"))(%:szServer != "")
+ {
+ %aChans = $serverdb.serverJoinChannels(%:szNetwork,%:szServer)
+ %aChans <+ $chan.name
+ serverdb.setServerJoinChannels %:szNetwork %:szServer %aChans
+ }
+
+ item($str.printf($tr("When Connecting to Network '?s'","defscript"),%:szNetwork),$icon("world"))(%:szNetwork != "")
+ {
+ %aChans = $serverdb.networkJoinChannels(%:szNetwork)
+ %aChans <+ $chan.name
+ serverdb.setNetworkJoinChannels %:szNetwork %aChans
+ }
+ }
- item($tr("Part All Channels","defscript"), 31) ($window.type=="console" && $context.state=="connected")
+ item($str.printf($tr("Stop Joining Channel on Server '?s'","defscript"),%:szServer),$icon("part"))(%:bIsChannel && %:bIsAutoJoinedOnServer)
+ {
+ %aChans = $array()
+ foreach(%szChanAndPass,$serverdb.serverJoinChannels(%:szNetwork,%:szServer))
+ {
+ %aChanAndPass = $str.split(":",%szChanAndPass)
+
+ if(%aChanAndPass[0] != $chan.name)
+ %aChans <+ %szChanAndPass;
+ }
+ serverdb.setServerJoinChannels %:szNetwork %:szServer %aChans
+ }
+
+ item($str.printf($tr("Stop Joining Channel on Network '?s'","defscript"),%:szNetwork),$icon("part"))(%:bIsChannel && %:bIsAutoJoinedOnNetwork)
+ {
+ %aChans = $array()
+ foreach(%szChanAndPass,$serverdb.networkJoinChannels(%:szNetwork))
+ {
+ %aChanAndPass = $str.split(":",%szChanAndPass)
+
+ if(%aChanAndPass[0] != $chan.name)
+ %aChans <+ %szChanAndPass;
+ }
+ serverdb.setNetworkJoinChannels %:szNetwork %aChans
+ }
+
+ # console-specific items
+
+ separator(%:bIsConnectedConsole)
+
+ item($tr("Part All Channels","defscript"), 31) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(channel))
window.close %x
}
- item($tr("Close All Queries","defscript"), 47) ($window.type=="console" && $context.state=="connected")
+ item($tr("Close All Queries","defscript"), 47) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(query))
window.close %x
}
- item($tr("Close All Dead Channels" ,"defscript"), 232) ($window.type=="console" && $context.state=="connected")
+ item($tr("Close All Dead Channels" ,"defscript"), 232) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(deadchannel))
window.close %x
}
- item($tr("Close All Dead Queries" ,"defscript"), 233) ($window.type=="console" && $context.state=="connected")
+ item($tr("Close All Dead Queries" ,"defscript"), 233) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(deadquery))
window.close %x
}
- separator
+ separator(%:bIsConnectedConsole)
- item($tr("Unhighlight All Windows" ,"defscript")) ($window.type=="console" && $context.state=="connected")
+ item($tr("Unhighlight All Windows" ,"defscript")) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(all))
window.highlight 0 %x
}
- item($tr("Unhighlight All Channels" ,"defscript")) ($window.type=="console" && $context.state=="connected")
+ item($tr("Unhighlight All Channels" ,"defscript")) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(channel))
window.highlight 0 %x
}
- item($tr("Unhighlight All Queries" ,"defscript")) ($window.type=="console" && $context.state=="connected")
+ item($tr("Unhighlight All Queries" ,"defscript")) (%:bIsConnectedConsole)
{
foreach(%x,$window.list(query))
window.highlight 0 %x