Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAneesh Dogra <lionaneesh@gmail.com>2012-12-15 18:42:14 (GMT)
committer Aneesh Dogra <lionaneesh@gmail.com>2012-12-15 18:44:12 (GMT)
commit0536589c6d669908cacfba8feeecc6fc6fc57acb (patch)
tree7e819f9865858914c68ab46dfe80880bac038f7e
parent9154bb507d21f9f21fdc39a89062997486029722 (diff)
Improve styling and adopt a similar styling as the Hippo version.
-rw-r--r--MiniChat_gtk3/minichat.py60
1 files changed, 34 insertions, 26 deletions
diff --git a/MiniChat_gtk3/minichat.py b/MiniChat_gtk3/minichat.py
index a64045f..3a66274 100644
--- a/MiniChat_gtk3/minichat.py
+++ b/MiniChat_gtk3/minichat.py
@@ -167,11 +167,8 @@ class MiniChat(Activity):
vbox = Gtk.VBox()
self.conversation = Gtk.VBox()
- self.conversation.override_background_color(Gtk.StateType.NORMAL, \
- Gdk.RGBA(*COLOR_WHITE.get_rgba()))
self.conversation.show_all()
self.scroller.add_with_viewport(self.conversation)
- vbox.pack_start(self.scroller, True, True, 0)
self.entry = Gtk.Entry()
self.entry.modify_bg(Gtk.StateType.INSENSITIVE,
@@ -182,7 +179,10 @@ class MiniChat(Activity):
setattr(self.entry, "nick", "???")
self.entry.connect('activate', self.entry_activate_cb)
- vbox.pack_end(self.entry, False, False, 0)
+
+ vbox.pack_start(self.entry, False, False, 0)
+ vbox.pack_end(self.scroller, True, True, 0)
+
vbox.show()
box = Gtk.VBox(homogeneous=False)
@@ -205,13 +205,9 @@ class MiniChat(Activity):
.------------- rb ---------------.
| +name_vbox+ +----msg_vbox----+ |
| | | | | |
- | | nick: | | +----entry---+ | |
- | | | | | text | | |
+ | | nick: | | +------------+ | |
+ | | | | | Text | | |
| +---------+ | +------------+ | |
- | | | |
- | | +----entry---+ | |
- | | | text | | |
- | | +------------+ | |
| +----------------+ |
`--------------------------------'
@@ -265,16 +261,21 @@ class MiniChat(Activity):
rb = Gtk.HBox()
rb.override_background_color(Gtk.StateType.NORMAL, color_fill)
+ rb.set_border_width(1)
eb.add(rb)
- rb.set_border_width(10)
logger.debug('rb: %s' % str(rb))
self._last_msg = rb
self._last_msg_sender = buddy
if not status_message:
- name = Gtk.Entry()
- name.set_text(nick+': ')
- name.modify_font(FONT_BOLD.get_pango_desc())
+ name = Gtk.TextView()
+ text_buffer = name.get_buffer()
+ text_buffer.set_text(nick + ': ')
+ name.override_font(FONT_BOLD.get_pango_desc())
+ name.override_color(Gtk.StateType.NORMAL, text_color)
+ name.override_background_color(Gtk.StateType.NORMAL, color_fill)
+ name.set_border_width(5)
+ name.show()
name_vbox = Gtk.VBox()
name_vbox.add(name)
rb.pack_start(name_vbox, False, True, 0)
@@ -286,17 +287,24 @@ class MiniChat(Activity):
self._last_msg_sender = None
if text:
- msg = Gtk.TextView()
- text_buffer = msg.get_buffer()
- text_buffer.set_text(text)
- msg.show()
- msg.set_editable(False)
- msg.set_justification(Gtk.Justification.LEFT)
- msg.override_font(FONT_NORMAL.get_pango_desc())
- msg.override_color(Gtk.StateType.NORMAL, text_color)
- msg.set_border_width(5)
- msg.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
- msg_vbox.pack_start(msg, False, True, 1)
+ if not new_msg:
+ msg = msg_vbox.get_children()[0]
+ text_buffer = msg.get_buffer()
+ text_buffer.set_text(text_buffer.get_text(text_buffer.get_start_iter(),
+ text_buffer.get_end_iter(), True) + "\n" + text)
+ else:
+ msg = Gtk.TextView()
+ text_buffer = msg.get_buffer()
+ text_buffer.set_text(text)
+ msg.show()
+ msg.set_editable(False)
+ msg.set_border_width(5)
+ msg.set_justification(Gtk.Justification.LEFT)
+ msg.override_font(FONT_NORMAL.get_pango_desc())
+ msg.override_color(Gtk.StateType.NORMAL, text_color)
+ msg.override_background_color(Gtk.StateType.NORMAL, color_fill)
+ msg.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
+ msg_vbox.pack_start(msg, True, True, 0)
if new_msg:
self.conversation.pack_start(eb, False, True, 0)
@@ -305,10 +313,10 @@ class MiniChat(Activity):
def entry_activate_cb(self, entry):
text = entry.get_text()
+ entry.set_text('')
logger.debug('Entry: %s' % text)
if text:
self.add_text(self.owner, text)
- entry.set_text('')
if self.text_channel:
self.text_channel.send(text)
else: