eric6/Preferences/ConfigurationPages/IrcPage.py

changeset 6942
2602857055c5
parent 6645
ad476851d7e0
child 7229
53054eb5b15a
equal deleted inserted replaced
6941:f99d60d6b59b 6942:2602857055c5
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 - 2019 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing the IRC configuration page.
8 """
9
10 from __future__ import unicode_literals
11
12 from .ConfigurationPageBase import ConfigurationPageBase
13 from .Ui_IrcPage import Ui_IrcPage
14
15 import Preferences
16
17
18 class IrcPage(ConfigurationPageBase, Ui_IrcPage):
19 """
20 Class implementing the IRC configuration page.
21 """
22 TimeFormats = ["hh:mm", "hh:mm:ss", "h:mm ap", "h:mm:ss ap"]
23 DateFormats = ["yyyy-MM-dd", "dd.MM.yyyy", "MM/dd/yyyy",
24 "yyyy MMM. dd", "dd MMM. yyyy", "MMM. dd, yyyy"]
25
26 def __init__(self):
27 """
28 Constructor
29 """
30 super(IrcPage, self).__init__()
31 self.setupUi(self)
32 self.setObjectName("IrcPage")
33
34 self.timeFormatCombo.addItems(IrcPage.TimeFormats)
35 self.dateFormatCombo.addItems(IrcPage.DateFormats)
36
37 # set initial values
38 # timestamps
39 self.timestampGroup.setChecked(Preferences.getIrc("ShowTimestamps"))
40 self.showDateCheckBox.setChecked(
41 Preferences.getIrc("TimestampIncludeDate"))
42 self.timeFormatCombo.setCurrentIndex(
43 self.timeFormatCombo.findText(Preferences.getIrc("TimeFormat")))
44 self.dateFormatCombo.setCurrentIndex(
45 self.dateFormatCombo.findText(Preferences.getIrc("DateFormat")))
46
47 # colours
48 self.initColour("NetworkMessageColour", self.networkButton,
49 Preferences.getIrc, byName=True)
50 self.initColour("ServerMessageColour", self.serverButton,
51 Preferences.getIrc, byName=True)
52 self.initColour("ErrorMessageColour", self.errorButton,
53 Preferences.getIrc, byName=True)
54 self.initColour("TimestampColour", self.timestampButton,
55 Preferences.getIrc, byName=True)
56 self.initColour("HyperlinkColour", self.hyperlinkButton,
57 Preferences.getIrc, byName=True)
58 self.initColour("ChannelMessageColour", self.channelButton,
59 Preferences.getIrc, byName=True)
60 self.initColour("OwnNickColour", self.ownNickButton,
61 Preferences.getIrc, byName=True)
62 self.initColour("NickColour", self.nickButton,
63 Preferences.getIrc, byName=True)
64 self.initColour("JoinChannelColour", self.joinButton,
65 Preferences.getIrc, byName=True)
66 self.initColour("LeaveChannelColour", self.leaveButton,
67 Preferences.getIrc, byName=True)
68 self.initColour("ChannelInfoColour", self.infoButton,
69 Preferences.getIrc, byName=True)
70
71 # notifications
72 self.notificationsGroup.setChecked(
73 Preferences.getIrc("ShowNotifications"))
74 self.joinLeaveCheckBox.setChecked(Preferences.getIrc("NotifyJoinPart"))
75 self.messageCheckBox.setChecked(Preferences.getIrc("NotifyMessage"))
76 self.ownNickCheckBox.setChecked(Preferences.getIrc("NotifyNick"))
77
78 # IRC text colors
79 self.initColour("IrcColor0", self.ircColor0Button,
80 Preferences.getIrc, byName=True)
81 self.initColour("IrcColor1", self.ircColor1Button,
82 Preferences.getIrc, byName=True)
83 self.initColour("IrcColor2", self.ircColor2Button,
84 Preferences.getIrc, byName=True)
85 self.initColour("IrcColor3", self.ircColor3Button,
86 Preferences.getIrc, byName=True)
87 self.initColour("IrcColor4", self.ircColor4Button,
88 Preferences.getIrc, byName=True)
89 self.initColour("IrcColor5", self.ircColor5Button,
90 Preferences.getIrc, byName=True)
91 self.initColour("IrcColor6", self.ircColor6Button,
92 Preferences.getIrc, byName=True)
93 self.initColour("IrcColor7", self.ircColor7Button,
94 Preferences.getIrc, byName=True)
95 self.initColour("IrcColor8", self.ircColor8Button,
96 Preferences.getIrc, byName=True)
97 self.initColour("IrcColor9", self.ircColor9Button,
98 Preferences.getIrc, byName=True)
99 self.initColour("IrcColor10", self.ircColor10Button,
100 Preferences.getIrc, byName=True)
101 self.initColour("IrcColor11", self.ircColor11Button,
102 Preferences.getIrc, byName=True)
103 self.initColour("IrcColor12", self.ircColor12Button,
104 Preferences.getIrc, byName=True)
105 self.initColour("IrcColor13", self.ircColor13Button,
106 Preferences.getIrc, byName=True)
107 self.initColour("IrcColor14", self.ircColor14Button,
108 Preferences.getIrc, byName=True)
109 self.initColour("IrcColor15", self.ircColor15Button,
110 Preferences.getIrc, byName=True)
111
112 # Automatic User Information Lookup
113 self.whoGroup.setChecked(Preferences.getIrc("AutoUserInfoLookup"))
114 self.whoUsersSpinBox.setValue(Preferences.getIrc("AutoUserInfoMax"))
115 self.whoIntervalSpinBox.setValue(
116 Preferences.getIrc("AutoUserInfoInterval"))
117
118 # Markers
119 self.markWhenHiddenCheckBox.setChecked(
120 Preferences.getIrc("MarkPositionWhenHidden"))
121 self.initColour("MarkerLineForegroundColour",
122 self.markerForegroundButton,
123 Preferences.getIrc, byName=True)
124 self.initColour("MarkerLineBackgroundColour",
125 self.markerBackgroundButton,
126 Preferences.getIrc, byName=True)
127
128 # Shutdown
129 self.confirmShutdownCheckBox.setChecked(
130 Preferences.getIrc("AskOnShutdown"))
131
132 def save(self):
133 """
134 Public slot to save the IRC configuration.
135 """
136 # timestamps
137 Preferences.setIrc("ShowTimestamps", self.timestampGroup.isChecked())
138 Preferences.setIrc(
139 "TimestampIncludeDate", self.showDateCheckBox.isChecked())
140 Preferences.setIrc("TimeFormat", self.timeFormatCombo.currentText())
141 Preferences.setIrc("DateFormat", self.dateFormatCombo.currentText())
142
143 # notifications
144 Preferences.setIrc(
145 "ShowNotifications", self.notificationsGroup.isChecked())
146 Preferences.setIrc(
147 "NotifyJoinPart", self.joinLeaveCheckBox.isChecked())
148 Preferences.setIrc("NotifyMessage", self.messageCheckBox.isChecked())
149 Preferences.setIrc("NotifyNick", self.ownNickCheckBox.isChecked())
150
151 # Automatic User Information Lookup
152 Preferences.setIrc("AutoUserInfoLookup", self.whoGroup.isChecked())
153 Preferences.setIrc("AutoUserInfoMax", self.whoUsersSpinBox.value())
154 Preferences.setIrc(
155 "AutoUserInfoInterval", self.whoIntervalSpinBox.value())
156
157 # Markers
158 Preferences.setIrc(
159 "MarkPositionWhenHidden",
160 self.markWhenHiddenCheckBox.isChecked())
161
162 # Shutdown
163 Preferences.setIrc(
164 "AskOnShutdown", self.confirmShutdownCheckBox.isChecked())
165
166 # colours
167 self.saveColours(Preferences.setIrc)
168
169
170 def create(dlg):
171 """
172 Module function to create the configuration page.
173
174 @param dlg reference to the configuration dialog
175 @return reference to the instantiated page (ConfigurationPageBase)
176 """
177 page = IrcPage()
178 return page

eric ide

mercurial