diff options
author | Denis Fomin <fominde@gmail.com> | 2010-09-28 17:23:56 +0400 |
---|---|---|
committer | Denis Fomin <fominde@gmail.com> | 2010-09-28 17:23:56 +0400 |
commit | 560afe70af6b984b388505a16f322365e3862427 (patch) | |
tree | 81517842db7427c3e945282196cf165f7a2de713 /set_location | |
parent | 37f8da3a2242e754c86a6332d9ff669f260bdb24 (diff) |
set_location. ability to specify a location on the built-in card
Diffstat (limited to 'set_location')
-rw-r--r-- | set_location/config_dialog.ui | 832 | ||||
-rw-r--r-- | set_location/layers.py | 23 | ||||
-rw-r--r-- | set_location/manifest.ini | 3 | ||||
-rw-r--r-- | set_location/set_location.py | 40 |
4 files changed, 490 insertions, 408 deletions
diff --git a/set_location/config_dialog.ui b/set_location/config_dialog.ui index 06b22e0..8976fdc 100644 --- a/set_location/config_dialog.ui +++ b/set_location/config_dialog.ui @@ -4,413 +4,435 @@ <!-- interface-naming-policy toplevel-contextual --> <object class="GtkWindow" id="window1"> <child> - <object class="GtkTable" id="config_table"> + <object class="GtkHBox" id="hbox1"> <property name="visible">True</property> - <property name="border_width">6</property> - <property name="n_rows">16</property> - <property name="n_columns">2</property> - <property name="column_spacing">7</property> - <property name="row_spacing">5</property> <child> - <object class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">alt:</property> - </object> - <packing> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label2"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">area:</property> - </object> - <packing> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">building:</property> - </object> - <packing> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="x_options">GTK_FILL</property> - <property name="y_options">GTK_FILL</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">country:</property> - </object> - <packing> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label5"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">countrycode:</property> - </object> - <packing> - <property name="top_attach">4</property> - <property name="bottom_attach">5</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label6"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">description:</property> - </object> - <packing> - <property name="top_attach">5</property> - <property name="bottom_attach">6</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label7"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">floor:</property> - </object> - <packing> - <property name="top_attach">6</property> - <property name="bottom_attach">7</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label8"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">locality:</property> - </object> - <packing> - <property name="top_attach">7</property> - <property name="bottom_attach">8</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label9"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">lat:</property> - </object> - <packing> - <property name="top_attach">8</property> - <property name="bottom_attach">9</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label10"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">lon:</property> - </object> - <packing> - <property name="top_attach">9</property> - <property name="bottom_attach">10</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label11"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">postalcode:</property> - </object> - <packing> - <property name="top_attach">10</property> - <property name="bottom_attach">11</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label12"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">region:</property> - </object> - <packing> - <property name="top_attach">11</property> - <property name="bottom_attach">12</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label13"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">room:</property> - </object> - <packing> - <property name="top_attach">12</property> - <property name="bottom_attach">13</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label14"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">street:</property> - </object> - <packing> - <property name="top_attach">13</property> - <property name="bottom_attach">14</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label15"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">text:</property> - </object> - <packing> - <property name="top_attach">14</property> - <property name="bottom_attach">15</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="label16"> - <property name="visible">True</property> - <property name="xalign">0</property> - <property name="label" translatable="yes">uri:</property> - </object> - <packing> - <property name="top_attach">15</property> - <property name="bottom_attach">16</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="alt"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">Altitude in meters above or below sea level</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="area"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A named area such as a campus or neighborhood</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="building"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A specific building on a street or in an area</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="country"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">The nation where the user is located</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">3</property> - <property name="bottom_attach">4</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="countrycode"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">The ISO 3166 two-letter country code</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">4</property> - <property name="bottom_attach">5</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="description"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A natural-language name for or description of the location</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">5</property> - <property name="bottom_attach">6</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="floor"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A particular floor in a building</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">6</property> - <property name="bottom_attach">7</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="locality"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A locality within the administrative region, such as a town or city</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">7</property> - <property name="bottom_attach">8</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="lat"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">Latitude in decimal degrees North</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">8</property> - <property name="bottom_attach">9</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="lon"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">Longitude in decimal degrees East</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">9</property> - <property name="bottom_attach">10</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="postalcode"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A code used for postal delivery</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">10</property> - <property name="bottom_attach">11</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="region"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">An administrative region of the nation, such as a state or province</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">11</property> - <property name="bottom_attach">12</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="room"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A particular room in a building</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">12</property> - <property name="bottom_attach">13</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="street"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A thoroughfare within the locality, or a crossing of two thoroughfares</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">13</property> - <property name="bottom_attach">14</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="text"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A catch-all element that captures any other information about the location</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">14</property> - <property name="bottom_attach">15</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="uri"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">A URI or URL pointing to information about the location</property> - <property name="invisible_char">●</property> - </object> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">15</property> - <property name="bottom_attach">16</property> + <object class="GtkTable" id="config_table"> + <property name="visible">True</property> + <property name="border_width">6</property> + <property name="n_rows">16</property> + <property name="n_columns">2</property> + <property name="column_spacing">7</property> + <property name="row_spacing">5</property> + <child> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">alt:</property> + </object> + <packing> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">area:</property> + </object> + <packing> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label3"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">building:</property> + </object> + <packing> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> + <property name="x_options">GTK_FILL</property> + <property name="y_options">GTK_FILL</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label4"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">country:</property> + </object> + <packing> + <property name="top_attach">3</property> + <property name="bottom_attach">4</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label5"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">countrycode:</property> + </object> + <packing> + <property name="top_attach">4</property> + <property name="bottom_attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label6"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">description:</property> + </object> + <packing> + <property name="top_attach">5</property> + <property name="bottom_attach">6</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label7"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">floor:</property> + </object> + <packing> + <property name="top_attach">6</property> + <property name="bottom_attach">7</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label8"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">locality:</property> + </object> + <packing> + <property name="top_attach">7</property> + <property name="bottom_attach">8</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label9"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">lat:</property> + </object> + <packing> + <property name="top_attach">8</property> + <property name="bottom_attach">9</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label10"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">lon:</property> + </object> + <packing> + <property name="top_attach">9</property> + <property name="bottom_attach">10</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label11"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">postalcode:</property> + </object> + <packing> + <property name="top_attach">10</property> + <property name="bottom_attach">11</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">region:</property> + </object> + <packing> + <property name="top_attach">11</property> + <property name="bottom_attach">12</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label13"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">room:</property> + </object> + <packing> + <property name="top_attach">12</property> + <property name="bottom_attach">13</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label14"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">street:</property> + </object> + <packing> + <property name="top_attach">13</property> + <property name="bottom_attach">14</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label15"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">text:</property> + </object> + <packing> + <property name="top_attach">14</property> + <property name="bottom_attach">15</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="label16"> + <property name="visible">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">uri:</property> + </object> + <packing> + <property name="top_attach">15</property> + <property name="bottom_attach">16</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="alt"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="area"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">1</property> + <property name="bottom_attach">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="building"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">2</property> + <property name="bottom_attach">3</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="country"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">3</property> + <property name="bottom_attach">4</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="countrycode"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">4</property> + <property name="bottom_attach">5</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="description"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">5</property> + <property name="bottom_attach">6</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="floor"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">6</property> + <property name="bottom_attach">7</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="locality"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">7</property> + <property name="bottom_attach">8</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="lat"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">8</property> + <property name="bottom_attach">9</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="lon"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">9</property> + <property name="bottom_attach">10</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="postalcode"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">10</property> + <property name="bottom_attach">11</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="region"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">11</property> + <property name="bottom_attach">12</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="room"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">12</property> + <property name="bottom_attach">13</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="street"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">13</property> + <property name="bottom_attach">14</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="text"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">14</property> + <property name="bottom_attach">15</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="uri"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="right_attach">2</property> + <property name="top_attach">15</property> + <property name="bottom_attach">16</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkVBox" id="vbox1"> + <property name="visible">True</property> + <property name="extension_events">all</property> + <property name="resize_mode">immediate</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkLabel" id="help_label"> + <property name="visible">True</property> + <property name="label" translatable="yes">Click the right mouse button to specify the location</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">6</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="padding">6</property> + <property name="position">1</property> </packing> </child> </object> diff --git a/set_location/layers.py b/set_location/layers.py new file mode 100644 index 0000000..876a3d1 --- /dev/null +++ b/set_location/layers.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +## +import osmgpsmap +import gobject + + +class DummyLayer(gobject.GObject, osmgpsmap.GpsMapLayer): + def __init__(self): + gobject.GObject.__init__(self) + + def do_draw(self, gpsmap, gdkdrawable): + pass + + def do_render(self, gpsmap): + pass + + def do_busy(self): + return False + + def do_button_press(self, gpsmap, gdkeventbutton): + return False + +gobject.type_register(DummyLayer) diff --git a/set_location/manifest.ini b/set_location/manifest.ini index 1bc1b09..29fce84 100644 --- a/set_location/manifest.ini +++ b/set_location/manifest.ini @@ -1,8 +1,9 @@ [info] name: Set Location short_name: set_location -version: 0.1 +version: 0.2 description: Set information about the current geographical or physical location. + To be able to specify a location on the built-in card, you must install python-osmgpsmap authors: Denis Fomin <fominde@gmail.com> homepage: http://trac-plugins.gajim.org/wiki/SetLocalitionPlugin diff --git a/set_location/set_location.py b/set_location/set_location.py index 32fb0df..b01c9ae 100644 --- a/set_location/set_location.py +++ b/set_location/set_location.py @@ -72,13 +72,41 @@ class SetLocationPluginConfigDialog(GajimPluginConfigDialog): self.xml = gtk.Builder() self.xml.set_translation_domain('setlocation') self.xml.add_objects_from_file(self.GTK_BUILDER_FILE_PATH, - ['config_table']) + ['hbox1']) config_table = self.xml.get_object('config_table') - self.child.pack_start(config_table) + hbox = self.xml.get_object('hbox1') + self.child.pack_start(hbox) self.xml.connect_signals(self) self.connect('hide', self.on_hide) def on_run(self): + no_map = None + try: + import osmgpsmap + except: + no_map = True + if not no_map: + from layers import DummyLayer + import gtkgui_helpers + + vbox = self.xml.get_object('vbox1') + vbox.set_size_request(400, -1) + + self.osm = osmgpsmap.GpsMap() + self.osm.layer_add(osmgpsmap.GpsMapOsd(show_dpad=True, + show_zoom=True)) + self.osm.layer_add(DummyLayer()) + lat = float(self.plugin.config['lat']) + lon = float(self.plugin.config['lon']) + self.osm.set_center_and_zoom(lat, lon, 12) + self.path_to_image = os.path.abspath(gtkgui_helpers.get_icon_path( + 'gajim', 16)) + self.icon = gtk.gdk.pixbuf_new_from_file_at_size( + self.path_to_image, 16, 16) + self.osm_image = self.osm.image_add(lat, lon, self.icon) + self.osm.connect('button_release_event', self.map_clicked) + vbox.pack_start(self.osm) + for name in self.plugin.config_default_values: widget = self.xml.get_object(name) widget.set_text(str(self.plugin.config[name])) @@ -88,3 +116,11 @@ class SetLocationPluginConfigDialog(GajimPluginConfigDialog): widget = self.xml.get_object(name) self.plugin.config[name] = widget.get_text() self.plugin.activate() + + def map_clicked(self, osm, event): + lat, lon = self.osm.get_event_location(event).get_degrees() + if event.button == 3: + self.osm.image_remove(self.osm_image) + self.osm_image = self.osm.image_add(lat, lon, self.icon) + self.xml.get_object('lat').set_text(str(lat)) + self.xml.get_object('lon').set_text(str(lon)) |