[gnome-calendar/gbsneto/gtk4: 13/37] calendar-management/new-calendar-page: Port to GTK4




commit 152f2888ae9271167eb25de80a42858fdc4b3baf
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Tue Jan 11 17:30:44 2022 -0300

    calendar-management/new-calendar-page: Port to GTK4

 .../calendar-management/gcal-new-calendar-page.c   |  22 ++--
 .../calendar-management/gcal-new-calendar-page.ui  | 139 ++++++++-------------
 2 files changed, 66 insertions(+), 95 deletions(-)
---
diff --git a/src/gui/calendar-management/gcal-new-calendar-page.c 
b/src/gui/calendar-management/gcal-new-calendar-page.c
index e8fa9895..99403eed 100644
--- a/src/gui/calendar-management/gcal-new-calendar-page.c
+++ b/src/gui/calendar-management/gcal-new-calendar-page.c
@@ -153,7 +153,7 @@ update_local_source (GcalNewCalendarPage *self)
 
   g_clear_object (&self->local_source);
 
-  calendar_name = g_strdup (gtk_entry_get_text (self->local_calendar_name_entry));
+  calendar_name = g_strdup (gtk_editable_get_text (GTK_EDITABLE (self->local_calendar_name_entry)));
   calendar_name = g_strstrip (calendar_name);
 
   if (calendar_name && g_utf8_strlen (calendar_name, -1) > 0)
@@ -224,9 +224,9 @@ discover_sources (GcalNewCalendarPage *self)
 
   self->validate_url_resource_id = 0;
 
-  url = gtk_entry_get_text (self->calendar_address_entry);
-  username = gtk_entry_get_text (self->credentials_user_entry);
-  password = gtk_entry_get_text (self->credentials_password_entry);
+  url = gtk_editable_get_text (GTK_EDITABLE (self->calendar_address_entry));
+  username = gtk_editable_get_text (GTK_EDITABLE (self->credentials_user_entry));
+  password = gtk_editable_get_text (GTK_EDITABLE (self->credentials_password_entry));
 
   gcal_discover_sources_from_uri (url,
                                   username,
@@ -242,8 +242,8 @@ discover_sources (GcalNewCalendarPage *self)
 static void
 popdown_credentials_popover (GcalNewCalendarPage *self)
 {
-  gtk_entry_set_text (self->credentials_user_entry, "");
-  gtk_entry_set_text (self->credentials_password_entry, "");
+  gtk_editable_set_text (GTK_EDITABLE (self->credentials_user_entry), "");
+  gtk_editable_set_text (GTK_EDITABLE (self->credentials_password_entry), "");
 
   gtk_popover_popdown (self->credentials_popover);
 }
@@ -289,7 +289,7 @@ on_file_chooser_button_file_set_cb (GtkFileChooser      *chooser,
                                              "calendars",
                                              NULL);
 
-  gtk_file_chooser_unselect_all (self->calendar_file_chooser_button);
+  gtk_file_chooser_set_file (self->calendar_file_chooser_button, NULL, NULL);
 
   GCAL_EXIT;
 }
@@ -352,7 +352,7 @@ validate_url_cb (gpointer data)
 
   self->validate_url_resource_id = 0;
 
-  uri = soup_uri_new (gtk_entry_get_text (self->calendar_address_entry));
+  uri = soup_uri_new (gtk_editable_get_text (GTK_EDITABLE (self->calendar_address_entry)));
 
   if (uri != NULL && SOUP_URI_IS_VALID (uri))
     {
@@ -431,7 +431,7 @@ on_url_entry_text_changed_cb (GtkEntry            *entry,
 
   GCAL_ENTRY;
 
-  text = gtk_entry_get_text (entry);
+  text = gtk_editable_get_text (GTK_EDITABLE (entry));
 
   if (self->calendar_address_id != 0)
     {
@@ -550,8 +550,8 @@ gcal_new_calendar_page_deactivate (GcalCalendarManagementPage *page)
   g_clear_pointer (&self->remote_sources, g_ptr_array_unref);
   update_add_button (self);
 
-  gtk_entry_set_text (self->local_calendar_name_entry, "");
-  gtk_entry_set_text (self->calendar_address_entry, "");
+  gtk_editable_set_text (GTK_EDITABLE (self->local_calendar_name_entry), "");
+  gtk_editable_set_text (GTK_EDITABLE (self->calendar_address_entry), "");
 
   toggle_url_entry_pulsing (self, FALSE);
 
diff --git a/src/gui/calendar-management/gcal-new-calendar-page.ui 
b/src/gui/calendar-management/gcal-new-calendar-page.ui
index 955fe825..4ae0ebca 100644
--- a/src/gui/calendar-management/gcal-new-calendar-page.ui
+++ b/src/gui/calendar-management/gcal-new-calendar-page.ui
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <template class="GcalNewCalendarPage" parent="GtkBox">
-    <property name="visible">True</property>
     <property name="orientation">vertical</property>
     <property name="spacing">12</property>
     <property name="margin-top">24</property>
@@ -12,7 +11,6 @@
     <!-- Local calendar -->
     <child>
       <object class="GtkBox">
-        <property name="visible">True</property>
         <property name="margin-bottom">18</property>
         <property name="orientation">vertical</property>
         <style>
@@ -23,12 +21,13 @@
         <!-- Calendar name -->
         <child>
           <object class="GtkBox">
-            <property name="visible">True</property>
-            <property name="margin">12</property>
+            <property name="margin-top">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="margin-start">12</property>
+            <property name="margin-end">12</property>
 
             <child>
               <object class="GtkLabel">
-                <property name="visible">True</property>
                 <property name="hexpand">True</property>
                 <property name="label" translatable="yes">Calendar Name</property>
                 <property name="xalign">0.0</property>
@@ -37,7 +36,6 @@
 
             <child>
               <object class="GtkEntry" id="local_calendar_name_entry">
-                <property name="visible">True</property>
                 <property name="placeholder-text" translatable="yes">Calendar Name</property>
                 <signal name="notify::text" handler="on_local_calendar_name_entry_text_changed_cb" 
object="GcalNewCalendarPage" swapped="no" />
               </object>
@@ -48,19 +46,19 @@
 
         <child>
           <object class="GtkSeparator">
-            <property name="visible">True</property>
           </object>
         </child>
 
         <!-- Color -->
         <child>
           <object class="GtkBox">
-            <property name="visible">True</property>
-            <property name="margin">12</property>
+            <property name="margin-top">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="margin-start">12</property>
+            <property name="margin-end">12</property>
 
             <child>
               <object class="GtkLabel">
-                <property name="visible">True</property>
                 <property name="hexpand">True</property>
                 <property name="label" translatable="yes">Color</property>
                 <property name="xalign">0.0</property>
@@ -69,7 +67,6 @@
 
             <child>
               <object class="GtkColorButton" id="local_calendar_color_button">
-                <property name="visible">True</property>
                 <signal name="notify::color" handler="on_local_calendar_color_button_color_changed_cb" 
object="GcalNewCalendarPage" swapped="no" />
               </object>
             </child>
@@ -82,7 +79,6 @@
 
     <child>
       <object class="GtkLabel">
-        <property name="visible">True</property>
         <property name="hexpand">True</property>
         <property name="label" translatable="yes">Import a Calendar</property>
         <property name="xalign">0.0</property>
@@ -95,67 +91,65 @@
 
     <child>
       <object class="GtkGrid">
-        <property name="visible">True</property>
         <property name="row_spacing">12</property>
         <property name="column_spacing">12</property>
 
         <!-- Online Accounts reference label-->
         <child>
           <object class="GtkLabel">
-            <property name="visible">True</property>
             <property name="label" translatable="yes">Alternatively, enter the web address of an online 
calendar you want to import, or open a supported calendar file.</property>
             <property name="wrap">True</property>
             <property name="xalign">0</property>
+            <layout>
+              <property name="column">0</property>
+              <property name="row">0</property>
+              <property name="column-span">2</property>
+            </layout>
           </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">0</property>
-            <property name="width">2</property>
-          </packing>
         </child>
 
         <!-- URL entry -->
         <child>
           <object class="GtkEntry" id="calendar_address_entry">
-            <property name="visible">True</property>
-            <property name="can_focus">True</property>
             <property name="hexpand">True</property>
             <property name="placeholder-text">https://example.com/calendar.ics</property>
             <signal name="notify::text" handler="on_url_entry_text_changed_cb" object="GcalNewCalendarPage" 
swapped="no" />
             <signal name="activate" handler="on_calendar_address_activated_cb" object="GcalNewCalendarPage" 
swapped="no" />
+            <layout>
+              <property name="column">0</property>
+              <property name="row">1</property>
+            </layout>
           </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">1</property>
-          </packing>
         </child>
 
         <!-- File Chooser button -->
         <child>
           <object class="GtkFileChooserButton" id="calendar_file_chooser_button">
-            <property name="visible">True</property>
             <property name="filter">calendar_file_filter</property>
             <property name="title" translatable="yes">Open a File</property>
             <signal name="file-set" handler="on_file_chooser_button_file_set_cb" 
object="GcalNewCalendarPage" swapped="no" />
+            <layout>
+              <property name="column">1</property>
+              <property name="row">1</property>
+            </layout>
           </object>
-          <packing>
-            <property name="left_attach">1</property>
-            <property name="top_attach">1</property>
-          </packing>
         </child>
 
         <child>
           <object class="GtkRevealer" id="web_sources_revealer">
             <property name="transition_type">crossfade</property>
             <property name="transition_duration">200</property>
+            <layout>
+              <property name="column">0</property>
+              <property name="row">2</property>
+              <property name="column-span">2</property>
+            </layout>
             <child>
               <object class="GtkBox" id="web_sources_listbox_box">
-                <property name="visible">True</property>
                 <property name="orientation">vertical</property>
                 <property name="spacing">6</property>
                 <child>
                   <object class="GtkLabel" id="web_sources_calendar_label">
-                    <property name="visible">True</property>
                     <property name="label" translatable="yes">Calendars</property>
                     <property name="xalign">0</property>
                     <attributes>
@@ -166,17 +160,13 @@
                 <child>
                   <object class="GtkScrolledWindow">
                     <property name="height_request">100</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
                     <property name="hexpand">True</property>
                     <property name="vexpand">True</property>
                     <child>
                       <object class="GtkViewport" id="viewport">
-                        <property name="visible">True</property>
                         <property name="shadow_type">none</property>
                         <child>
                           <object class="GtkListBox" id="web_sources_listbox">
-                            <property name="visible">True</property>
                             <property name="activate_on_single_click">False</property>
                             <property name="selection_mode">none</property>
                             <style>
@@ -191,28 +181,22 @@
               </object>
             </child>
           </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">2</property>
-            <property name="width">2</property>
-          </packing>
         </child>
 
         <!-- Online Accounts reference label-->
         <child>
           <object class="GtkLabel" id="web_description_label">
-            <property name="visible">True</property>
             <property name="label" translatable="yes">If the calendar belongs to one of your online 
accounts, you can add it through the &lt;a href=&quot;GOA&quot;&gt;online account 
settings&lt;/a&gt;.</property>
             <property name="use_markup">True</property>
             <property name="wrap">True</property>
             <property name="xalign">0</property>
             <signal name="activate-link" handler="on_web_description_label_link_activated_cb" 
object="GcalNewCalendarPage" swapped="no" />
+            <layout>
+              <property name="column">0</property>
+              <property name="row">3</property>
+              <property name="column-span">2</property>
+            </layout>
           </object>
-          <packing>
-            <property name="left_attach">0</property>
-            <property name="top_attach">3</property>
-            <property name="width">2</property>
-          </packing>
         </child>
 
       </object>
@@ -225,80 +209,75 @@
     <property name="position">top</property>
     <child>
       <object class="GtkBox">
-        <property name="visible">True</property>
         <property name="orientation">vertical</property>
-        <property name="margin">12</property>
+        <property name="margin-top">12</property>
+        <property name="margin-bottom">12</property>
+        <property name="margin-start">12</property>
+        <property name="margin-end">12</property>
         <child>
           <object class="GtkGrid" id="credentials_grid">
-            <property name="visible">True</property>
             <property name="hexpand">True</property>
-            <property name="border_width">12</property>
+            <property name="margin-top">12</property>
+            <property name="margin-bottom">12</property>
+            <property name="margin-start">12</property>
+            <property name="margin-end">12</property>
             <property name="row_spacing">6</property>
             <property name="column_spacing">12</property>
             <child>
               <object class="GtkLabel" id="credentials_user_dim_label">
-                <property name="visible">True</property>
                 <property name="label" translatable="yes">User</property>
                 <property name="xalign">1</property>
+                <layout>
+                  <property name="column">0</property>
+                  <property name="row">0</property>
+                </layout>
                 <style>
                   <class name="dim-label" />
                 </style>
               </object>
-              <packing>
-                <property name="left_attach">0</property>
-                <property name="top_attach">0</property>
-              </packing>
             </child>
             <child>
               <object class="GtkLabel" id="credentials_password_dim_label">
-                <property name="visible">True</property>
                 <property name="label" translatable="yes">Password</property>
                 <property name="xalign">1</property>
+                <layout>
+                  <property name="column">0</property>
+                  <property name="row">1</property>
+                </layout>
                 <style>
                   <class name="dim-label" />
                 </style>
               </object>
-              <packing>
-                <property name="left_attach">0</property>
-                <property name="top_attach">1</property>
-              </packing>
             </child>
             <child>
               <object class="GtkEntry" id="credentials_user_entry">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
                 <signal name="activate" handler="on_credential_entry_activate_cb" 
object="GcalNewCalendarPage" swapped="no" />
+                <layout>
+                  <property name="column">1</property>
+                  <property name="row">0</property>
+                </layout>
               </object>
-              <packing>
-                <property name="left_attach">1</property>
-                <property name="top_attach">0</property>
-              </packing>
             </child>
             <child>
               <object class="GtkEntry" id="credentials_password_entry">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
                 <property name="visibility">False</property>
                 <signal name="activate" handler="on_credential_entry_activate_cb" 
object="GcalNewCalendarPage" swapped="no" />
+                <layout>
+                  <property name="column">1</property>
+                  <property name="row">1</property>
+                </layout>
               </object>
-              <packing>
-                <property name="left_attach">1</property>
-                <property name="top_attach">1</property>
-              </packing>
             </child>
           </object>
         </child>
 
         <child>
           <object class="GtkBox">
-            <property name="visible">True</property>
             <property name="spacing">12</property>
             <child>
               <object class="GtkButton" id="credentials_cancel_button">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
                 <property name="label" translatable="yes">Cancel</property>
                 <signal name="clicked" handler="on_credential_button_clicked_cb" 
object="GcalNewCalendarPage" swapped="no" />
@@ -306,8 +285,6 @@
             </child>
             <child>
               <object class="GtkButton" id="credentials_connect_button">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
                 <property name="hexpand">True</property>
                 <property name="label" translatable="yes">Connect</property>
                 <signal name="clicked" handler="on_credential_button_clicked_cb" 
object="GcalNewCalendarPage" swapped="no" />
@@ -338,18 +315,12 @@
 
   <!-- Headerbar buttons -->
   <object class="GtkButton" id="cancel_button">
-    <property name="visible">True</property>
     <property name="label" translatable="yes">Cancel</property>
-    <property name="can_focus">True</property>
-    <property name="receives_default">True</property>
     <signal name="clicked" handler="on_cancel_button_clicked_cb" object="GcalNewCalendarPage" swapped="no" />
   </object>
   <object class="GtkButton" id="add_button">
-    <property name="visible">True</property>
     <property name="label" translatable="yes">Add</property>
     <property name="sensitive">False</property>
-    <property name="can_focus">True</property>
-    <property name="receives_default">True</property>
     <signal name="clicked" handler="on_add_button_clicked_cb" object="GcalNewCalendarPage" swapped="no" />
     <style>
       <class name="suggested-action"/>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]