Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 211704 Details for
Bug 290026
sci-geosciences/tangogps: improving application (add kilometer grid and WGS-84 Merkator projection)
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
splitting previous patch
grid.patch (text/plain), 6.06 KB, created by
Alexey Kharikovsky
on 2009-12-01 16:30:53 UTC
(
hide
)
Description:
splitting previous patch
Filename:
MIME Type:
Creator:
Alexey Kharikovsky
Created:
2009-12-01 16:30:53 UTC
Size:
6.06 KB
patch
obsolete
>Only in tangogps-0.9.6_table/src: Makefile >diff -ru tangogps-0.9.6/src/callbacks.c tangogps-0.9.6_table/src/callbacks.c >--- tangogps-0.9.6/src/callbacks.c 2009-02-05 02:54:26.000000000 +0300 >+++ tangogps-0.9.6_table/src/callbacks.c 2009-10-20 16:15:18.000000000 +0400 >@@ -476,6 +476,67 @@ > event->area.x, event->area.y, > event->area.x, event->area.y, > event->area.width, event->area.height); >+//---------horiz line grid---------- >+ char i, temp[2][25],temp_pow[4]=""; >+ float lat[5],lon[2]; >+ for (i=0;i<5;i++) >+ lat[i]=pixel2lat(global_zoom,global_y+widget->allocation.height/4*i); >+ //lat[0]=TOP,lat[1]=1/4, ...1/2, 3/4, BOTTOM >+ lon[0]=pixel2lon(global_zoom,global_x);//LEFT >+ lon[1]=pixel2lon(global_zoom,global_x+widget->allocation.width);//RIGHT >+ float grid_dimension_h[2]; >+ grid_dimension_h[0]=get_distance(lat[0],lon[0],lat[0],lon[1])/4; >+ grid_dimension_h[1]=get_distance(lat[4],lon[0],lat[4],lon[1])/4; >+ if (grid_dimension_h[0]>1) >+ { >+ strcat(temp_pow," km"); >+ } >+ else >+ { >+ grid_dimension_h[0]=grid_dimension_h[0]*1000; >+ grid_dimension_h[1]=grid_dimension_h[1]*1000; >+ strcat(temp_pow," m"); >+ } >+ for (i=0;i<2;i++) >+ { >+ if (grid_dimension_h[i]<10) >+ sprintf(temp[i],"%1.1f",grid_dimension_h[i]); >+ else >+ sprintf(temp[i],"%4d",(int)grid_dimension_h[i]); >+ strcat(temp[i],temp_pow); >+ } >+ >+ for (i=0;i<4;i++) >+ { >+ if (i!=0) >+ gdk_draw_line (widget->window, >+ widget->style->black_gc, >+ widget->allocation.width/4*i,0, >+ widget->allocation.width/4*i,widget->allocation.height >+ ); >+ gtk_label_set_text(label_grid_h[0][i],temp[0]); >+ gtk_label_set_text(label_grid_h[1][i],temp[1]); >+ } >+ >+//--------vert line grid----------- >+ for (i=0;i<4;i++) >+ { >+ if (i!=0) >+ gdk_draw_line (widget->window, >+ widget->style->black_gc, >+ 0,widget->allocation.height/4*i, >+ widget->allocation.width,widget->allocation.height/4*i >+ ); >+ grid_dimension_h[0]=get_distance(lat[i],lon[0],lat[i+1],lon[0]); >+ if (strstr(temp_pow," m")!=NULL) grid_dimension_h[0]=grid_dimension_h[0]*1000; >+ if (grid_dimension_h[0]<10) >+ sprintf(temp,"%1.1f",grid_dimension_h[0]); >+ else >+ sprintf(temp,"%4d",(int)grid_dimension_h[0]); >+ strcat(temp,temp_pow); >+ gtk_label_set_text(label_grid_v[i],temp); >+ } >+//-------end grid draw------------- > > > return FALSE; >diff -ru tangogps-0.9.6/src/interface.c tangogps-0.9.6_table/src/interface.c >--- tangogps-0.9.6/src/interface.c 2009-02-05 02:54:27.000000000 +0300 >+++ tangogps-0.9.6_table/src/interface.c 2009-11-04 23:43:36.000000000 +0300 >@@ -42,7 +42,6 @@ > GtkWidget *button3; > GtkWidget *toolitem6; > GtkWidget *togglebutton1; >- GtkWidget *hbox1; > GtkWidget *drawingarea1; > GtkWidget *vscale1; > GtkWidget *label4; >@@ -325,19 +324,35 @@ > gtk_container_add (GTK_CONTAINER (toolitem6), togglebutton1); > GTK_WIDGET_UNSET_FLAGS (togglebutton1, GTK_CAN_FOCUS); > >- hbox1 = gtk_hbox_new (FALSE, 0); >- gtk_widget_show (hbox1); >- gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 0); >+//---------label for grid >+ GtkWidget *draw_table=gtk_table_new(6,6,FALSE); >+ gtk_widget_show(draw_table); >+ gtk_container_add (GTK_CONTAINER(vbox1),draw_table); >+ char i; >+ for (i=1;i<5;i++) >+ { >+ label_grid_h[0][i-1]=gtk_label_new(""); >+ label_grid_h[1][i-1]=gtk_label_new(""); >+ label_grid_v[i-1]=gtk_label_new(""); >+ gtk_label_set_angle(label_grid_v[i-1],90); >+ gtk_table_attach (draw_table,label_grid_h[0][i-1],i,i+1,0,1,GTK_EXPAND,0,0,0); >+ gtk_table_attach (draw_table,label_grid_h[1][i-1],i,i+1,5,6,GTK_EXPAND,0,0,0); >+ gtk_table_attach (draw_table,label_grid_v[i-1],0,1,i,i+1,0,GTK_EXPAND,0,0); >+ gtk_widget_show (label_grid_h[0][i-1]); >+ gtk_widget_show (label_grid_h[1][i-1]); >+ gtk_widget_show (label_grid_v[i-1]); >+ } >+//---------label for grid > >- drawingarea1 = gtk_drawing_area_new (); >+drawingarea1 = gtk_drawing_area_new (); > gtk_widget_show (drawingarea1); >- gtk_box_pack_start (GTK_BOX (hbox1), drawingarea1, TRUE, TRUE, 0); >+ gtk_table_attach (draw_table,drawingarea1,1,5,1,5,GTK_EXPAND|GTK_FILL|GTK_SHRINK,GTK_EXPAND|GTK_FILL|GTK_SHRINK,0,0); > GTK_WIDGET_SET_FLAGS (drawingarea1, GTK_CAN_FOCUS); > gtk_widget_set_events (drawingarea1, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_LEAVE_NOTIFY_MASK); > > vscale1 = gtk_vscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (3, 2, 17, 1, 0, 0))); > gtk_widget_show (vscale1); >- gtk_box_pack_start (GTK_BOX (hbox1), vscale1, FALSE, TRUE, 0); >+ gtk_table_attach (draw_table,vscale1,5,6,0,6,0,GTK_EXPAND|GTK_FILL,0,0); > gtk_widget_set_size_request (vscale1, 25, -1); > GTK_WIDGET_UNSET_FLAGS (vscale1, GTK_CAN_FOCUS); > gtk_scale_set_digits (GTK_SCALE (vscale1), 0); >@@ -1614,7 +1629,7 @@ > GLADE_HOOKUP_OBJECT (window1, button3, "button3"); > GLADE_HOOKUP_OBJECT (window1, toolitem6, "toolitem6"); > GLADE_HOOKUP_OBJECT (window1, togglebutton1, "togglebutton1"); >- GLADE_HOOKUP_OBJECT (window1, hbox1, "hbox1"); >+ GLADE_HOOKUP_OBJECT (window1, draw_table, "draw_table"); > GLADE_HOOKUP_OBJECT (window1, drawingarea1, "drawingarea1"); > GLADE_HOOKUP_OBJECT (window1, vscale1, "vscale1"); > GLADE_HOOKUP_OBJECT (window1, label4, "label4"); >diff -ru tangogps-0.9.6/src/interface.h tangogps-0.9.6_table/src/interface.h >--- tangogps-0.9.6/src/interface.h 2009-02-04 23:55:07.000000000 +0300 >+++ tangogps-0.9.6_table/src/interface.h 2009-10-16 20:50:28.000000000 +0400 >@@ -28,3 +28,5 @@ > GtkWidget* create_filechooserdialog1 (void); > GtkWidget* create_dialog_image_data (void); > GtkWidget* create_dialog_geocode_result (void); >+ GtkWidget *label_grid_h[2][4]; >+ GtkWidget *label_grid_v[4];
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 290026
:
207837
| 211704 |
211706