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