r194 - in trunk/src/target/OM-2007: applications/openmoko-chordmaster artwork/themes/openmoko-standard/gtk-2.0 devel/scripts libraries/mokoui
mickey at gta01.hmw-consulting.de
mickey at gta01.hmw-consulting.de
Sat Nov 11 14:37:32 CET 2006
Author: mickey
Date: 2006-11-11 13:37:31 +0000 (Sat, 11 Nov 2006)
New Revision: 194
Modified:
trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.c
trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.h
trunk/src/target/OM-2007/applications/openmoko-chordmaster/fretboard-widget.c
trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.c
trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.h
trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkmenuitem
trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkrc
trunk/src/target/OM-2007/devel/scripts/launch-xoo
trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.c
trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.h
Log:
amsterdam update
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.c 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.c 2006-11-11 13:37:31 UTC (rev 194)
@@ -6,15 +6,32 @@
#include <gtk/gtkwidget.h>
#include <gtk/gtkbutton.h>
+#include <gtk/gtktreeselection.h>
#include <gtk/gtktreeview.h>
#include <gtk/gtktreemodel.h>
+gboolean cb_entry_completion_completed(GtkEntryCompletion *widget, GtkTreeModel *model, GtkTreeIter *iter, ChordMasterData* d)
+{
+ g_debug( "openmoko-chordmaster: entry completion completed" );
+ gchar* name = NULL;
+ gtk_tree_model_get( GTK_TREE_MODEL(model), iter, COLUMN_NAME, &name, -1 );
+ g_debug( "-- selected entry = '%s'", name );
+ GtkTreeIter myiter;
+ gtk_tree_model_filter_convert_iter_to_child_iter( model, &myiter, iter );
+ //GtkTreeSelection* selection = gtk_tree_view_get_selection( d->view );
+ //gtk_tree_selection_select_iter( selection, &myiter );
+ GtkTreePath* path = gtk_tree_model_get_path( d->liststore, &myiter );
+ gtk_tree_view_set_cursor( d->view, path, COLUMN_NAME, FALSE );
+ //gtk_tree_view_scroll_to_cell( d->view, path, NULL, FALSE, 0.5, 0.5 );
+ gtk_tree_path_free( path );
+ return FALSE;
+}
+
gboolean cb_filter_changed(GtkWidget* widget, gchar* text, ChordMasterData* d)
{
g_debug( "openmoko-chordmaster: filter changed" );
g_assert( d->chordsdb );
- if ( !d->liststore )
- d->liststore = gtk_list_store_new( NUM_COLS, G_TYPE_STRING, G_TYPE_STRING );
+ g_assert( d->liststore );
gtk_list_store_clear( d->liststore );
GtkTreeIter iter;
GSList* chords = chordsdb_get_chords( d->chordsdb );
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.h 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/callbacks.h 2006-11-11 13:37:31 UTC (rev 194)
@@ -11,6 +11,7 @@
#include <glib.h>
+gboolean cb_entry_completion_completed(GtkEntryCompletion *widget, GtkTreeModel *model, GtkTreeIter *iter, ChordMasterData* d);
gboolean cb_filter_changed(GtkWidget* widget, gchar* text, ChordMasterData* d);
void cb_button1_clicked(GtkButton *button, ChordMasterData* d);
void cb_button2_clicked(GtkButton *button, ChordMasterData* d);
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/fretboard-widget.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/fretboard-widget.c 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/fretboard-widget.c 2006-11-11 13:37:31 UTC (rev 194)
@@ -133,7 +133,7 @@
pango_layout_set_text( layout, &barree, 1 );
gdk_gc_set_rgb_fg_color( gc, &barreecolor );
//FIXME take font size into account
- gdk_draw_layout( widget->window, gc, 25, 260, layout );
+ gdk_draw_layout( widget->window, gc, 13, 0, layout );
}
// finger positions
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.c 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.c 2006-11-11 13:37:31 UTC (rev 194)
@@ -85,37 +85,31 @@
moko_paned_window_set_filter_menu( d->window, filtmenu );
MokoMenuBox* menubox = moko_paned_window_get_menubox( d->window );
g_signal_connect( G_OBJECT(menubox), "filter_changed", G_CALLBACK(cb_filter_changed), d );
- moko_menu_box_set_active_filter( menubox, "All" );
/* connect close event */
g_signal_connect( G_OBJECT(d->window), "delete_event", G_CALLBACK( gtk_main_quit ), NULL );
- populate_navigation_area( d );
- populate_details_area( d );
-
/* toolboox */
-
GtkButton* button1;
GtkButton* button2;
GtkButton* button3;
GtkButton* button4;
/* tool bar */
- MokoToolBox* toolbox;
- toolbox = MOKO_TOOL_BOX(moko_tool_box_new_with_search());
- gtk_widget_grab_focus( GTK_WIDGET(toolbox) );
- g_signal_connect( G_OBJECT(toolbox), "searchbox_visible", G_CALLBACK(cb_search_visible), d );
- g_signal_connect( G_OBJECT(toolbox), "searchbox_invisible", G_CALLBACK(cb_search_invisible), d );
+ d->toolbox = MOKO_TOOL_BOX(moko_tool_box_new_with_search());
+ gtk_widget_grab_focus( GTK_WIDGET(d->toolbox) );
+ g_signal_connect( G_OBJECT(d->toolbox), "searchbox_visible", G_CALLBACK(cb_search_visible), d );
+ g_signal_connect( G_OBJECT(d->toolbox), "searchbox_invisible", G_CALLBACK(cb_search_invisible), d );
- button1 = moko_tool_box_add_action_button( toolbox );
+ button1 = moko_tool_box_add_action_button( d->toolbox );
gtk_button_set_label( button1, "Add" );
- button2 = moko_tool_box_add_action_button( toolbox );
+ button2 = moko_tool_box_add_action_button( d->toolbox );
gtk_button_set_label( button2, "Remove" );
- button3 = moko_tool_box_add_action_button( toolbox );
+ button3 = moko_tool_box_add_action_button( d->toolbox );
gtk_button_set_label( button3, "ActMenu" );
- button4 = moko_tool_box_add_action_button( toolbox );
+ button4 = moko_tool_box_add_action_button( d->toolbox );
gtk_button_set_label( button4, "Action 4" );
- moko_paned_window_add_toolbox( d->window, toolbox );
+ moko_paned_window_add_toolbox( d->window, d->toolbox );
g_signal_connect( G_OBJECT(button1), "clicked", G_CALLBACK(cb_button1_clicked), d );
g_signal_connect( G_OBJECT(button2), "clicked", G_CALLBACK(cb_button2_clicked), d );
@@ -131,11 +125,16 @@
gtk_menu_shell_append( GTK_MENU_SHELL(actionmenu), GTK_WIDGET(baritem) );
moko_pixmap_button_set_menu( MOKO_PIXMAP_BUTTON(button3), actionmenu );
gtk_widget_show_all( actionmenu );
+
+ populate_navigation_area( d );
+ populate_details_area( d );
+
+ moko_menu_box_set_active_filter( menubox, "All" );
}
void populate_navigation_area( ChordMasterData* d )
{
- g_assert( d->liststore ); // created in callback
+ d->liststore = gtk_list_store_new( NUM_COLS, G_TYPE_STRING, G_TYPE_STRING );
//FIXME get color from style
GdkColor color;
@@ -147,13 +146,13 @@
g_value_init (&v, GDK_TYPE_COLOR);
g_value_set_boxed( &v, &color);
- GtkTreeView* view = gtk_tree_view_new_with_model( d->liststore );
- gtk_tree_view_set_rules_hint( view, TRUE );
+ d->view = gtk_tree_view_new_with_model( d->liststore );
+ gtk_tree_view_set_rules_hint( d->view, TRUE );
GtkTreeViewColumn* col = gtk_tree_view_column_new();
- gtk_tree_view_column_set_title( col, "Name of the Chord" );
+ gtk_tree_view_column_set_title( col, "Chordname" );
gtk_tree_view_column_set_alignment( col, 0.5 );
gtk_tree_view_column_set_spacing( col, 4 );
- gtk_tree_view_append_column( view, col );
+ gtk_tree_view_append_column( d->view, col );
GtkCellRenderer* ren = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start( col, ren, TRUE );
gtk_tree_view_column_add_attribute( col, ren, "text", COLUMN_NAME );
@@ -166,10 +165,10 @@
NULL );
col = gtk_tree_view_column_new();
- gtk_tree_view_column_set_title( col, "Fingers on Fretboard" );
+ gtk_tree_view_column_set_title( col, "Fretboard" );
gtk_tree_view_column_set_alignment( col, 0.5 );
gtk_tree_view_column_set_spacing( col, 4 );
- gtk_tree_view_append_column( view, col );
+ gtk_tree_view_append_column( d->view, col );
ren = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start( col, ren, TRUE );
gtk_tree_view_column_add_attribute( col, ren, "text", COLUMN_FRETS );
@@ -182,21 +181,30 @@
NULL );
//gtk_tree_view_set_headers_clickable( view, TRUE );
- gtk_tree_view_set_headers_visible( view, TRUE );
+ gtk_tree_view_set_headers_visible( d->view, TRUE );
//gtk_tree_view_set_search_column( view, COLUMN_NAME );
GtkScrolledWindow* scrollwin = gtk_scrolled_window_new( NULL, NULL );
//FIXME get from style or (even better) set as initial size hint in MokoPanedWindow (also via style sheet of course)
- gtk_widget_set_size_request( GTK_WIDGET(scrollwin), 0, 230 );
+ gtk_widget_set_size_request( GTK_WIDGET(scrollwin), 0, 170 );
gtk_scrolled_window_set_policy( scrollwin, GTK_POLICY_NEVER, GTK_POLICY_ALWAYS );
- g_object_set( G_OBJECT(view), "can-focus", FALSE, NULL );
+ //g_object_set( G_OBJECT(d->view), "can-focus", FALSE, NULL );
- gtk_scrolled_window_add_with_viewport( scrollwin, GTK_WIDGET(view) );
+ //gtk_scrolled_window_add_with_viewport( scrollwin, GTK_WIDGET(d->view) );
+ gtk_container_add( scrollwin, GTK_WIDGET(d->view) );
moko_paned_window_set_upper_pane( d->window, GTK_WIDGET(scrollwin) );
- GtkTreeSelection* selection = gtk_tree_view_get_selection( view );
+ GtkTreeSelection* selection = gtk_tree_view_get_selection( d->view );
g_signal_connect( G_OBJECT(selection), "changed", G_CALLBACK(cb_cursor_changed), d );
+
+ GtkEntryCompletion* ec = gtk_entry_completion_new();
+ gtk_entry_completion_set_model( ec, d->liststore );
+ gtk_entry_completion_set_text_column( ec, COLUMN_NAME );
+ GtkEntry* entry = moko_tool_box_get_entry( d->toolbox );
+ //FIXME what happens in case the toolbox has no entry?
+ gtk_entry_set_completion( entry, ec );
+ g_signal_connect( G_OBJECT(ec), "match-selected", G_CALLBACK(cb_entry_completion_completed), d );
}
void populate_details_area( ChordMasterData* d )
Modified: trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.h 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/applications/openmoko-chordmaster/main.h 2006-11-11 13:37:31 UTC (rev 194)
@@ -28,6 +28,7 @@
#include <mokoui/moko-toolbox.h>
#include <gtk/gtkliststore.h>
+#include <gtk/gtktreeview.h>
typedef struct _ChordMasterData {
MokoApplication* app;
@@ -37,6 +38,7 @@
ChordsDB* chordsdb;
FretboardWidget* fretboard;
GtkListStore* liststore;
+ GtkTreeView* view;
} ChordMasterData;
enum {
Modified: trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkmenuitem
===================================================================
--- trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkmenuitem 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkmenuitem 2006-11-11 13:37:31 UTC (rev 194)
@@ -24,10 +24,11 @@
font_name = "Vera Sans 13"
fg[NORMAL] = "#e5e5e5"
fg[PRELIGHT] = "#ffffff"
- xthickness = 100
}
-widget "*.GtkMenuItem.GtkAccelLabel" style "gtkmenuitem-label"
-widget "*.GtkImageMenuItem.GtkAccelLabel" style "gtkmenuitem-label"
+widget "*.GtkMenuItem.*" style "gtkmenuitem-label"
+widget "*.GtkImageMenuItem.*" style "gtkmenuitem-label"
-widget_class "*.GtkMenu.GtkMenuItem.GtkAccelLabel" style "gtkmenuitem-label"
-widget_class "*.GtkMenu.GtkImageMenuItem.GtkAccelLabel" style "gtkmenuitem-label"
+class "GtkMenuItem" style "gtkmenuitem-label"
+
+class "GtkCellView" style "gtkmenuitem-label"
+
Modified: trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkrc
===================================================================
--- trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkrc 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/gtkrc 2006-11-11 13:37:31 UTC (rev 194)
@@ -1,31 +1,31 @@
style "moko-window-default" {
# FIXME do we want a general background brush? Or just a color?
# NOTE bg_pixmap[NORMAL] _must_ match with the SHADOW pixmaps
- bg_pixmap[NORMAL] = "openmoko-shadow-bg-brush.png"
+ bg_pixmap[NORMAL] = "gtkwidget.png"
- fg[NORMAL] = "#201d15" # very dark brown
- fg[PRELIGHT] = "#201d15" # very dark brown
- fg[ACTIVE] = "#201d15" # very dark brown
- fg[SELECTED] = "#201d15" # very dark brown
- fg[INSENSITIVE] = "#ffb3ac" # grey
+ fg[NORMAL] = "#e5e5e5" # very dark brown
+ fg[PRELIGHT] = "#ff0000" # very dark brown
+ fg[ACTIVE] = "#e5e5e5" # very dark brown
+ fg[SELECTED] = "#0000ff" # very dark brown
+ fg[INSENSITIVE] = "#00ff00" # grey
- bg[NORMAL] = "#ece9d8" # beige
- bg[PRELIGHT] = "#f1efe3" # light beige
- bg[ACTIVE] = "#cdc7b0" # dark beige
- bg[SELECTED] = "#b4c994" # olive
- bg[INSENSITIVE] = "#ece9d8" # beige
+ bg[NORMAL] = "#ff0000" # beige
+ bg[PRELIGHT] = "#ff0000" # light beige
+ bg[ACTIVE] = "#ff0000" # dark beige
+ bg[SELECTED] = "#ff0000" # olive
+ bg[INSENSITIVE] = "#ff0000" # beige
- base[NORMAL] = "#ffffff" # white
- base[PRELIGHT] = "#b4c994" # olive
- base[ACTIVE] = "#aba897" # dark olive
- base[SELECTED] = "#b4c994" # olive
- base[INSENSITIVE] = "#ece9d8" # beige
+ base[NORMAL] = "#ff0000" # white
+ base[PRELIGHT] = "#ff0000" # olive
+ base[ACTIVE] = "#ff0000" # dark olive
+ base[SELECTED] = "#ff0000" # olive
+ base[INSENSITIVE] = "#ff0000" # beige
- text[NORMAL] = "#000000" # black
- text[PRELIGHT] = "#000000" # black
- text[ACTIVE] = "#ffffff" # white
- text[SELECTED] = "#ffffff" # white
- text[INSENSITIVE] = "#a69872" # very dark brown
+ text[NORMAL] = "#e5e5e5" # black
+ text[PRELIGHT] = "#ff0000" # black
+ text[ACTIVE] = "#e5e5e5" # white
+ text[SELECTED] = "#0000ff" # white
+ text[INSENSITIVE] = "#00ff00" # very dark brown
#
# How to draw shadows in general
#
@@ -80,8 +80,10 @@
}
# enable for final version
-class "GtkWidget" style "moko-window-default"
+# class "GtkWidget" style "moko-window-default"
+widget "*" style "moko-window-default"
+
# enable for debugging on host
# widget "MokoPanedWindow.*" style "moko-window-default"
# class "GtkMenuItem" style "moko-window-default"
Modified: trunk/src/target/OM-2007/devel/scripts/launch-xoo
===================================================================
--- trunk/src/target/OM-2007/devel/scripts/launch-xoo 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/devel/scripts/launch-xoo 2006-11-11 13:37:31 UTC (rev 194)
@@ -6,10 +6,14 @@
# - matchbox-panel (ohand svn)
# - matchbox-window-manager (ohand svn)
#
-SVN_TRUNK=/local/pkg/openmoko/trunk
-PKG=$SVN_TRUNK/oe/packages
+SERVER=Xephyr
+#SERVER=Xnest
+SVN_TRUNK=/local/pkg/openmoko/
+export PATH=$SVN_TRUNK/OM-2007/bin:$PATH
+export LD_LIBRARY_PATH=$SVN_TRUNK/OM-2007/lib:/usr/local/lib
-xoo -xd :1 -xn `which Xephyr` -t 'OpenMoko running on FIC GTA01' -d $PKG/xoo/files/gta01.xml &
+xoo -xo '-dpi 104 -ac' -xd :1 -xn `which $SERVER` -t 'OpenMoko running on FIC GTA01' -d \
+$SVN_TRUNK/oe/packages/xoo/files/gta01.xml &
sleep 2
@@ -22,10 +26,8 @@
--no-session \
--no-menu \
--no-flip \
- --bgpixmap $PKG/openmoko/openmoko-common/pixmaps/openmoko-header-background.png &
+ --bgpixmap $SVN_TRUNK/OM-2007/artwork/images/pixmaps/openmoko-header-background.png &
-sleep 1
-
matchbox-panel -display $DISPLAY \
--id 2 \
--orientation south \
@@ -33,22 +35,17 @@
--no-session \
--no-menu \
--no-flip \
- --bgpixmap $PKG/openmoko/openmoko-common/pixmaps/openmoko-footer-background.png &
+ --bgpixmap $SVN_TRUNK/OM-2007/artwork/images/pixmaps/openmoko-footer-background.png &
-sleep 1
+matchbox-desktop --icon-size 100 \
+ --icon-padding 60 \
+ --font sans-16 \
+ --titlefont sans-20:bold --bg \
+img-tiled:/local/pkg/openmoko/OM-2007/artwork/themes/openmoko-standard/gtk-2.0/mokopanedwindow-upper-enclosing.png &
-matchbox-desktop -display $DISPLAY \
- --icon-size 96 \
- --icon-padding 128 \
- --font sans-24:bold \
- --titlefont sans-24:bold &
-
-sleep 1
-
-matchbox-window-manager -display $DISPLAY \
- -use_titlebar yes \
+exec matchbox-window-manager -display $DISPLAY \
+ -use_titlebar no \
-use_super_modal yes \
-use_lowlight yes \
-use_dialog_mode static \
- -use_desktop_mode plain \
- -use_cursor no &
+ -use_cursor yes
Modified: trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.c
===================================================================
--- trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.c 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.c 2006-11-11 13:37:31 UTC (rev 194)
@@ -200,3 +200,9 @@
return button;
}
+
+GtkEntry* moko_tool_box_get_entry(MokoToolBox* self)
+{
+ MokoToolBoxPriv* priv = MOKO_TOOL_BOX_GET_PRIVATE(self);
+ return priv->entry;
+}
Modified: trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.h
===================================================================
--- trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.h 2006-11-05 00:20:25 UTC (rev 193)
+++ trunk/src/target/OM-2007/libraries/mokoui/moko-toolbox.h 2006-11-11 13:37:31 UTC (rev 194)
@@ -21,8 +21,9 @@
#include "moko-pixmap-button.h"
+#include <gtk/gtkentry.h>
+#include <gtk/gtkhbox.h>
#include <gtk/gtknotebook.h>
-#include <gtk/gtkhbox.h>
#include <glib.h>
#include <glib-object.h>
@@ -56,8 +57,8 @@
GtkWidget* moko_tool_box_new_with_search();
void moko_tool_box_clear(MokoToolBox* self);
-/* add additional methods here */
GtkHBox* moko_tool_box_get_button_box( MokoToolBox* self );
+GtkEntry* moko_tool_box_get_entry(MokoToolBox* self);
MokoPixmapButton* moko_tool_box_add_action_button(MokoToolBox* self);
G_END_DECLS
More information about the commitlog
mailing list