summaryrefslogtreecommitdiff
path: root/src/theme.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/theme.py')
-rw-r--r--src/theme.py173
1 files changed, 0 insertions, 173 deletions
diff --git a/src/theme.py b/src/theme.py
deleted file mode 100644
index 2502e5c6..00000000
--- a/src/theme.py
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 2010-2011 Florent Le Coz <louiz@louiz.org>
-#
-# This file is part of Poezio.
-#
-# Poezio is free software: you can redistribute it and/or modify
-# it under the terms of the zlib license. See the COPYING file.
-
-"""
-Define the variables (colors and some other stuff) that are
-used when drawing the interface (mainly colors)
-"""
-
-import curses
-import glob
-import imp
-import os
-from config import config
-
-import logging
-log = logging.getLogger(__name__)
-
-## Define the default colors
-## Do not change these colors, create a theme file instead.
-
-# Message text color
-COLOR_NORMAL_TEXT = 0
-COLOR_INFORMATION_TEXT = 5
-COLOR_HIGHLIGHT_NICK = -46
-
-# User list color
-COLOR_USER_VISITOR = 7
-COLOR_USER_PARTICIPANT = 4
-COLOR_USER_NONE = 0
-COLOR_USER_MODERATOR = 1
-
-# nickname colors
-COLOR_REMOTE_USER = 5
-
-# The character printed in color (COLOR_STATUS_*) before the nickname
-# in the user list
-CHAR_STATUS = ' '
-
-# Separators
-COLOR_VERTICAL_SEPARATOR = 4
-COLOR_NEW_TEXT_SEPARATOR = 2
-COLOR_MORE_INDICATOR = 6
-
-# Time
-COLOR_TIME_SEPARATOR = 6
-COLOR_TIME_LIMITER = 0
-CHAR_TIME_LEFT = ''
-CHAR_TIME_RIGHT = ''
-COLOR_TIME_NUMBERS = 0
-
-# Tabs
-COLOR_TAB_NORMAL = 42
-COLOR_TAB_CURRENT = 56
-COLOR_TAB_NEW_MESSAGE = 49
-COLOR_TAB_HIGHLIGHT = 21
-COLOR_TAB_PRIVATE = 28
-COLOR_TAB_DISCONNECTED = 30
-
-# Nickname colors
-LIST_COLOR_NICKNAMES = [
- 1, 2, 3, 4, 5, 6, -2, -4, -5, -6
- ]
-COLOR_OWN_NICK = 7
-
-# Status color
-COLOR_STATUS_XA = 49
-COLOR_STATUS_NONE = 0
-COLOR_STATUS_DND = 21
-COLOR_STATUS_AWAY = 35
-COLOR_STATUS_CHAT = 28
-COLOR_STATUS_UNAVAILABLE = 57
-COLOR_STATUS_ONLINE = 41
-
-# Bars
-COLOR_INFORMATION_BAR = 42
-COLOR_TOPIC_BAR = 42
-COLOR_PRIVATE_ROOM_BAR = 28
-COLOR_SCROLLABLE_NUMBER = -39
-COLOR_SELECTED_ROW = 42
-COLOR_PRIVATE_NAME = 42
-COLOR_CONVERSATION_NAME = 42
-COLOR_GROUPCHAT_NAME = 42
-COLOR_COLUMN_HEADER = 36
-
-# Strings for special messages (like join, quit, nick change, etc)
-# Special messages
-CHAR_JOIN = '---->'
-CHAR_QUIT = '<----'
-CHAR_KICK = '-!-'
-
-COLOR_JOIN_CHAR = 4
-COLOR_QUIT_CHAR = 1
-COLOR_KICK_CHAR = 1
-
-# words between ()
-COLOR_CURLYBRACKETED_WORD = 4
-# words between {}
-COLOR_ACCOLADE_WORD = 6
-# words between []
-COLOR_BRACKETED_WORD = 3
-
-def init_colors():
- """
- Initilization of all the available ncurses colors
- limit the number of colors to 64 (because some terminals
- don't handle more than that), by removing some useless colors
- like 'black on black', etc.
- """
- curses.start_color()
- curses.use_default_colors()
- cpt = 0
- for i in range(-1, 7):
- for y in range(0, 8):
- if y == i:
- continue
- curses.init_pair(cpt, y, i)
- cpt += 1
- for y in range(0, 7):
- # init the default fg on others bg at last
- curses.init_pair(cpt, -1, y)
- cpt += 1
- # Have the default color be default fg on default bg
- reload_theme()
-
-def reload_theme():
- themes_dir = config.get('themes_dir', '')
- themes_dir = themes_dir or\
- os.path.join(os.environ.get('XDG_DATA_HOME') or\
- os.path.join(os.environ.get('HOME'), '.local', 'share'),
- 'poezio', 'themes')
- try:
- os.makedirs(themes_dir)
- except OSError:
- pass
- theme_name = config.get('theme', '')
- if not theme_name:
- return
- try:
- theme = imp.load_source('theme', os.path.join(themes_dir, theme_name))
- except: # TODO warning: theme not found
- return
- for var in dir(theme):
- if var.startswith('COLOR_') or var.startswith('CHAR_') or var.startswith('LIST_'):
- globals()[var] = getattr(theme, var)
-
-if __name__ == '__main__':
- """
- Launch 'python theme.py' to see the list of all the available colors
- in your terminal
- """
- s = curses.initscr()
- curses.start_color()
- curses.use_default_colors()
- init_colors()
- for i in range(64):
- s.attron(curses.color_pair(i) | curses.A_BOLD)
- s.addstr(str(curses.color_pair(i) | curses.A_BOLD))
- s.attroff(curses.color_pair(i) | curses.A_BOLD)
- s.addstr(' ')
- s.addstr('\n')
- for i in range(64):
- s.attron(curses.color_pair(i))
- s.addstr(str(i))
- s.attroff(curses.color_pair(i))
- s.addstr(' ')
-
- s.refresh()
- s.getch()
- s.endwin()