[tracker] TST: Added gradient effect to Metadata Tile
- From: Jamie McCracken <jamiemcc src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [tracker] TST: Added gradient effect to Metadata Tile
- Date: Mon, 15 Feb 2010 05:01:08 +0000 (UTC)
commit 6f991e3e3d25d043a9e4048f3b0085d1de467ba9
Author: Jamie McCracken <jamiemcc gnome org>
Date: Sun Feb 14 23:59:19 2010 -0500
TST: Added gradient effect to Metadata Tile
src/tracker-search-tool/tracker-metadata-tile.gs | 68 ++++++++++++++++++-
src/tracker-search-tool/tracker-search-tool.gs | 11 +++-
src/tracker-search-tool/tst.ui | 75 ++++++++++------------
3 files changed, 108 insertions(+), 46 deletions(-)
---
diff --git a/src/tracker-search-tool/tracker-metadata-tile.gs b/src/tracker-search-tool/tracker-metadata-tile.gs
index e8aaf00..2dced8f 100644
--- a/src/tracker-search-tool/tracker-metadata-tile.gs
+++ b/src/tracker-search-tool/tracker-metadata-tile.gs
@@ -22,10 +22,11 @@
uses
Gtk
+ Cairo
TrackerUtils
-class TrackerMetadataTile : HBox
+class TrackerMetadataTile : EventBox
uri : string
category : Categories
image : Image
@@ -75,7 +76,12 @@ class TrackerMetadataTile : HBox
init
- border_width = 8
+
+ set_app_paintable (true)
+
+ expose_event += expose
+
+ border_width = 1
table = new Table (3, 7, false)
table.set_col_spacings (6)
@@ -84,6 +90,7 @@ class TrackerMetadataTile : HBox
add (table)
image = new Image.from_icon_name ("text-x-generic", IconSize.DIALOG)
+ image.set_pixel_size (62)
table.attach (image, 0, 1, 0, 3, AttachOptions.FILL, AttachOptions.FILL, 12, 0)
name_link = new LinkButton ("")
@@ -126,8 +133,61 @@ class TrackerMetadataTile : HBox
info_value6 = CreateLabel ("-", true)
AttachToTable (info_value6, 6, 7, 2, 3, true)
- show_all ()
-
+ //show_all ()
+
+ def private expose (e : Gdk.EventExpose) : bool
+
+ var cr = Gdk.cairo_create (self.window)
+
+ var style = self.get_style ()
+ var step1 = style.base [StateType.NORMAL]
+ var step2 = style.bg [StateType.SELECTED]
+
+ w,h : double
+ w = self.allocation.width
+ h = self.allocation.height
+
+ /* clear window to base[NORMAL] */
+ cr.set_operator (Operator.SOURCE)
+ Gdk.cairo_set_source_color (cr, step1)
+ cr.paint ()
+ cr.move_to (0, 0)
+ cr.set_line_width (1.0)
+ cr.set_operator (Operator.OVER)
+
+ /* main gradient */
+ var pat = new Pattern.linear (0.0, 0.0, 0.0, h)
+
+ pat.add_color_stop_rgba (0.0, step2.red/65535.0,
+ step2.green/65535.0,
+ step2.blue/65535.0,
+ 0.05)
+
+ pat.add_color_stop_rgba (1.0, step2.red/65535.0,
+ step2.green/65535.0,
+ step2.blue/65535.0,
+ 0.5)
+
+ cr.rectangle (0, 0, w, h)
+ cr.set_source (pat)
+ cr.fill ()
+
+ /* border line */
+ cr.set_source_rgba (step2.red/65535.0,
+ step2.green/65535.0,
+ step2.blue/65535.0,
+ 0.7)
+ cr.move_to (0, 0)
+ cr.line_to (w, 0)
+ cr.stroke ()
+
+ /* highlight line */
+ cr.set_source_rgba (1.0, 1.0, 1.0, 0.5)
+ cr.move_to (0, 1)
+ cr.line_to (w, 1)
+ cr.stroke ()
+
+ return super.expose_event (e)
def private AttachToTable (lab : Label, l : int, r : int, t : int, b : int, e : bool)
diff --git a/src/tracker-search-tool/tracker-search-tool.gs b/src/tracker-search-tool/tracker-search-tool.gs
index ea5770c..58d210c 100644
--- a/src/tracker-search-tool/tracker-search-tool.gs
+++ b/src/tracker-search-tool/tracker-search-tool.gs
@@ -116,6 +116,8 @@ init
window = builder.get_object ("window") as Window
window.destroy += Gtk.main_quit
+
+ window.set_app_paintable (true)
/* create tracker widgets */
@@ -129,7 +131,7 @@ init
entry_box = builder.get_object ("EntryBox") as Container
grid_box = builder.get_object ("GridBox") as Container
category_box = builder.get_object ("CategoryBox") as Container
- detail_box = builder.get_object ("DetailBox") as Container
+ main_box = builder.get_object ("MainBox") as VBox
query.Connect ()
@@ -144,7 +146,12 @@ init
tile.ResultGrid = grid
tile.Query = query
- detail_box.add (tile)
+ main_box.pack_end (tile, false, false, 0)
+
+ var s = new Statusbar ()
+ s.has_resize_grip = true
+ window.add (s)
+
window.show_all ()
diff --git a/src/tracker-search-tool/tst.ui b/src/tracker-search-tool/tst.ui
index 96b7d77..4818507 100644
--- a/src/tracker-search-tool/tst.ui
+++ b/src/tracker-search-tool/tst.ui
@@ -8,7 +8,7 @@
<property name="default_width">800</property>
<property name="default_height">600</property>
<child>
- <object class="GtkVBox" id="vbox1">
+ <object class="GtkVBox" id="VBox">
<property name="visible">True</property>
<property name="border_width">6</property>
<property name="orientation">vertical</property>
@@ -47,34 +47,49 @@
</packing>
</child>
<child>
- <object class="GtkHPaned" id="hpaned1">
+ <object class="GtkVBox" id="MainBox">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="position">130</property>
- <property name="position_set">True</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkHBox" id="CategoryBox">
- <property name="visible">True</property>
- <child>
- <placeholder/>
- </child>
- </object>
- <packing>
- <property name="resize">False</property>
- <property name="shrink">True</property>
- </packing>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
</child>
<child>
- <object class="GtkVBox" id="GridBox">
+ <object class="GtkHPaned" id="hpaned1">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
+ <property name="can_focus">True</property>
+ <property name="position">130</property>
+ <property name="position_set">True</property>
<child>
- <placeholder/>
+ <object class="GtkHBox" id="CategoryBox">
+ <property name="visible">True</property>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">False</property>
+ <property name="shrink">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkVBox" id="GridBox">
+ <property name="visible">True</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">True</property>
+ </packing>
</child>
</object>
<packing>
- <property name="resize">True</property>
- <property name="shrink">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
@@ -82,26 +97,6 @@
<property name="position">1</property>
</packing>
</child>
- <child>
- <object class="GtkExpander" id="DetailBox">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="expanded">True</property>
- <child>
- <placeholder/>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Details</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="position">2</property>
- </packing>
- </child>
</object>
</child>
</object>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]