Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
P
pardus-flatpak-gui
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Pardus
ondokuz
pardus-flatpak-gui
Commits
ac50cda8
Verified
Kaydet (Commit)
ac50cda8
authored
Nis 17, 2020
tarafından
Erdem Ersoy
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Rewrite Flatpak GUI mess (1/X):
* Rewrite mainwindow.py __init__ function (1/X)
üst
58d65077
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
112 additions
and
98 deletions
+112
-98
mainwindow.py
pardusflatpakgui/mainwindow.py
+112
-98
No files found.
pardusflatpakgui/mainwindow.py
Dosyayı görüntüle @
ac50cda8
...
...
@@ -26,6 +26,7 @@ from pardusflatpakgui.version import Version
import
gettext
import
locale
import
sys
import
gi
gi
.
require_version
(
'Gtk'
,
'3.0'
)
gi
.
require_version
(
'GLib'
,
'2.0'
)
...
...
@@ -43,163 +44,176 @@ gettext.install("pardus-flatpak-gui", "po/")
class
MainWindow
(
object
):
def
__init__
(
self
,
application
):
self
.
Application
=
application
self
.
url
=
"https://dl.flathub.org/repo/appstream/"
self
.
urlext
=
"flatpakref"
try
:
MainGUIF
ile
=
"ui/mainwindow.glade"
MainBuilder
=
Gtk
.
Builder
.
new_from_file
(
MainGUIF
ile
)
MainB
uilder
.
connect_signals
(
self
)
main_gui_f
ile
=
"ui/mainwindow.glade"
main_builder
=
Gtk
.
Builder
.
new_from_file
(
main_gui_f
ile
)
main_b
uilder
.
connect_signals
(
self
)
except
GLib
.
GError
:
print
(
_
(
"Error reading GUI file: "
)
+
MainGUIF
ile
)
print
(
_
(
"Error reading GUI file: "
)
+
main_gui_f
ile
)
raise
try
:
AboutGUIF
ile
=
"ui/aboutdialog.glade"
AboutBuilder
=
Gtk
.
Builder
.
new_from_file
(
AboutGUIF
ile
)
AboutB
uilder
.
connect_signals
(
self
)
about_gui_f
ile
=
"ui/aboutdialog.glade"
about_builder
=
Gtk
.
Builder
.
new_from_file
(
about_gui_f
ile
)
about_b
uilder
.
connect_signals
(
self
)
except
GLib
.
GError
:
print
(
_
(
"Error reading About dialog GUI file: "
)
+
AboutGUIF
ile
)
print
(
_
(
"Error reading About dialog GUI file: "
)
+
about_gui_f
ile
)
raise
try
:
MessagesGUIF
ile
=
"ui/messagedialogs.glade"
MessagesBuilder
=
Gtk
.
Builder
.
new_from_file
(
MessagesGUIF
ile
)
MessagesB
uilder
.
connect_signals
(
self
)
messages_gui_f
ile
=
"ui/messagedialogs.glade"
messages_builder
=
Gtk
.
Builder
.
new_from_file
(
messages_gui_f
ile
)
messages_b
uilder
.
connect_signals
(
self
)
except
GLib
.
GError
:
print
(
_
(
"Error reading message dialogs GUI file: "
)
+
MessagesGUIF
ile
)
messages_gui_f
ile
)
raise
self
.
MainWindow
=
MainBuilder
.
get_object
(
"MainWindow"
)
self
.
MainWindow
.
set_application
(
application
)
self
.
FlatpakInstallation
=
Flatpak
.
Installation
.
new_system
()
self
.
InstalledRefsList
=
self
.
FlatpakInstallation
.
list_installed_refs
()
self
.
FlatHubRefsList
=
self
.
FlatpakInstallation
.
list_remote_refs_sync
(
"flathub"
,
Gio
.
Cancellable
.
new
())
self
.
NonInstalledRefsList
=
[]
if
not
self
.
InstalledRefsList
:
for
item
in
self
.
FlatHubRefsList
:
self
.
NonInstalledRefsList
.
append
(
item
)
else
:
for
item
in
self
.
InstalledRefsList
:
for
item2
in
self
.
FlatHubRefsList
:
if
item
.
get_name
()
!=
item2
.
get_name
():
self
.
NonInstalledRefsList
.
append
(
item2
)
self
.
ListStoreMain
=
main_builder
.
get_object
(
"ListStoreMain"
)
self
.
HeaderBarMain
=
MainBuilder
.
get_object
(
"HeaderBarMain"
)
self
.
MessageDialogError
=
messages_builder
.
get_object
(
"MessageDialogError"
)
for
item
in
self
.
FlatHubRefsList
:
if
item
.
get_kind
()
==
Flatpak
.
RefKind
.
APP
and
\
item
.
get_arch
()
==
Flatpak
.
get_default_arch
():
if
isinstance
(
item
,
Flatpak
.
RemoteRef
):
item_is_installed
=
False
elif
isinstance
(
item
,
Flatpak
.
InstalledRef
):
item_is_installed
=
True
else
:
item_is_installed
=
None
real_name
=
item
.
get_name
()
arch
=
item
.
get_arch
()
branch
=
item
.
get_branch
()
installed_size
=
item
.
get_installed_size
()
installed_size_mib
=
installed_size
/
1048576
installed_size_mib_str
=
f
"{installed_size_mib:.2f}"
+
" MiB"
if
not
item_is_installed
:
if
item
in
self
.
FlatHubRefsList
:
remote_name
=
"flathub"
else
:
remote_name
=
""
download_size
=
item
.
get_download_size
()
download_size_mib
=
download_size
/
1048576
download_size_mib_str
=
f
"{download_size_mib:.2f}"
+
" MiB"
name
=
""
elif
item_is_installed
:
remote_name
=
item
.
get_origin
()
download_size_mib_str
=
""
name
=
item
.
get_appdata_name
()
else
:
self
.
MessageDialogError
.
set_markup
(
_
(
"<big><b>Invalid Flatpak Reference Error</b></big>"
))
self
.
MessageDialogError
.
format_secondary_text
(
_
(
"Invalid Flatpak reference is: "
+
"app/"
+
real_name
+
"/"
+
arch
+
"/"
+
branch
))
self
.
MessageDialogError
.
run
()
self
.
MessageDialogError
.
hide
()
sys
.
exit
(
1
)
self
.
ListStoreMain
.
append
([
real_name
,
arch
,
branch
,
remote_name
,
installed_size_mib_str
,
download_size_mib_str
,
name
])
else
:
continue
self
.
HeaderBarMain
=
main_builder
.
get_object
(
"HeaderBarMain"
)
self
.
HeaderBarMain
.
set_title
(
_
(
"Pardus Flatpak GUI"
))
self
.
HeaderBarMain
.
set_subtitle
(
_
(
"Manage Flatpak softwares via GUI on Pardus"
))
self
.
RunMenuItem
=
MainB
uilder
.
get_object
(
"RunMenuItem"
)
self
.
RunMenuItem
=
main_b
uilder
.
get_object
(
"RunMenuItem"
)
self
.
RunMenuItem
.
set_label
(
_
(
"_Run"
))
self
.
InfoMenuItem
=
MainB
uilder
.
get_object
(
"InfoMenuItem"
)
self
.
InfoMenuItem
=
main_b
uilder
.
get_object
(
"InfoMenuItem"
)
self
.
InfoMenuItem
.
set_label
(
_
(
"_Info"
))
self
.
UninstallMenuItem
=
MainB
uilder
.
get_object
(
"UninstallMenuItem"
)
self
.
UninstallMenuItem
=
main_b
uilder
.
get_object
(
"UninstallMenuItem"
)
self
.
UninstallMenuItem
.
set_label
(
_
(
"_Uninstall"
))
self
.
InstallMenuItem
=
MainB
uilder
.
get_object
(
"InstallMenuItem"
)
self
.
InstallMenuItem
=
main_b
uilder
.
get_object
(
"InstallMenuItem"
)
self
.
InstallMenuItem
.
set_label
(
_
(
"I_nstall"
))
self
.
ActionsMenu
=
MainBuilder
.
get_object
(
"ActionsMenu"
)
self
.
InstallFromEntryMenuItem
=
MainBuilder
.
get_object
(
"InstallFromEntryMenuItem"
)
self
.
InstallFromEntryMenuItem
.
set_label
(
_
(
"Install From _Entry"
))
self
.
ActionsMenu
=
main_builder
.
get_object
(
"ActionsMenu"
)
self
.
InstallFromFileMenuItem
=
MainB
uilder
.
get_object
(
"InstallFromFileMenuItem"
)
self
.
InstallFromFileMenuItem
=
main_b
uilder
.
get_object
(
"InstallFromFileMenuItem"
)
self
.
InstallFromFileMenuItem
.
set_label
(
_
(
"Install From _File"
))
self
.
UpdateAllMenuItem
=
MainBuilder
.
get_object
(
"UpdateAllMenuItem"
)
self
.
InstallFromEntryMenuItem
=
main_builder
.
get_object
(
"InstallFromEntryMenuItem"
)
self
.
InstallFromEntryMenuItem
.
set_label
(
_
(
"Install From _Entry"
))
self
.
UpdateAllMenuItem
=
main_builder
.
get_object
(
"UpdateAllMenuItem"
)
self
.
UpdateAllMenuItem
.
set_label
(
_
(
"_Update All"
))
self
.
AboutMenuItem
=
MainB
uilder
.
get_object
(
"AboutMenuItem"
)
self
.
AboutMenuItem
=
main_b
uilder
.
get_object
(
"AboutMenuItem"
)
self
.
AboutMenuItem
.
set_label
(
_
(
"_About"
))
self
.
TreeViewColumnRealName
=
MainB
uilder
.
get_object
(
"TreeViewColumnRealName"
)
self
.
TreeViewColumnRealName
=
main_b
uilder
.
get_object
(
"TreeViewColumnRealName"
)
self
.
TreeViewColumnRealName
.
set_title
(
_
(
"Real Name"
))
self
.
TreeViewColumnArch
=
MainB
uilder
.
get_object
(
"TreeViewColumnArch"
)
self
.
TreeViewColumnArch
=
main_b
uilder
.
get_object
(
"TreeViewColumnArch"
)
self
.
TreeViewColumnArch
.
set_title
(
_
(
"Arch"
))
self
.
TreeViewColumnBranch
=
MainB
uilder
.
get_object
(
"TreeViewColumnBranch"
)
self
.
TreeViewColumnBranch
=
main_b
uilder
.
get_object
(
"TreeViewColumnBranch"
)
self
.
TreeViewColumnBranch
.
set_title
(
_
(
"Branch"
))
self
.
TreeViewColumnRemoteName
=
MainB
uilder
.
get_object
(
"TreeViewColumnRemoteName"
)
self
.
TreeViewColumnRemoteName
=
main_b
uilder
.
get_object
(
"TreeViewColumnRemoteName"
)
self
.
TreeViewColumnRemoteName
.
set_title
(
_
(
"Remote Name"
))
self
.
TreeViewColumnInstalledSize
=
MainB
uilder
.
get_object
(
"TreeViewColumnInstalledSize"
)
self
.
TreeViewColumnInstalledSize
=
main_b
uilder
.
get_object
(
"TreeViewColumnInstalledSize"
)
self
.
TreeViewColumnInstalledSize
.
set_title
(
_
(
"Installed Size"
))
self
.
TreeViewColumnDownloadSize
=
MainB
uilder
.
get_object
(
"TreeViewColumnDownloadSize"
)
self
.
TreeViewColumnDownloadSize
=
main_b
uilder
.
get_object
(
"TreeViewColumnDownloadSize"
)
self
.
TreeViewColumnDownloadSize
.
set_title
(
_
(
"Download Size"
))
self
.
TreeViewColumnName
=
MainB
uilder
.
get_object
(
"TreeViewColumnName"
)
self
.
TreeViewColumnName
=
main_b
uilder
.
get_object
(
"TreeViewColumnName"
)
self
.
TreeViewColumnName
.
set_title
(
_
(
"Name"
))
self
.
FlatpakInstallation
=
Flatpak
.
Installation
.
new_system
()
self
.
FlatpakRefsList
=
self
.
FlatpakInstallation
.
list_installed_refs
()
self
.
FlatHubRefsList
=
self
.
FlatpakInstallation
.
list_remote_refs_sync
(
"flathub"
,
Gio
.
Cancellable
.
new
())
for
item
in
self
.
FlatpakRefsList
:
for
item2
in
self
.
FlatHubRefsList
:
if
item
.
get_name
()
==
item2
.
get_name
():
self
.
FlatHubRefsList
.
remove
(
item2
)
self
.
FlatpakRefsList
=
self
.
FlatpakRefsList
+
self
.
FlatHubRefsList
self
.
ListStoreMain
=
MainBuilder
.
get_object
(
"ListStoreMain"
)
self
.
TreeViewMain
=
main_builder
.
get_object
(
"TreeViewMain"
)
for
item
in
self
.
FlatpakRefsList
:
if
item
.
get_kind
()
==
Flatpak
.
RefKind
.
APP
and
\
item
.
get_arch
()
==
Flatpak
.
get_default_arch
():
isremoteref
=
isinstance
(
item
,
Flatpak
.
RemoteRef
)
isinstalledref
=
isinstance
(
item
,
Flatpak
.
InstalledRef
)
self
.
SearchEntryMain
=
main_builder
.
get_object
(
"SearchEntryMain"
)
self
.
SearchEntryMain
.
set_placeholder_text
(
_
(
"Click here for search"
))
RealName
=
item
.
get_name
()
Arch
=
item
.
get_arch
()
Branch
=
item
.
get_branch
()
InstalledSize
=
item
.
get_installed_size
()
InstalledSizeMiB
=
InstalledSize
/
1048576
InstalledSizeMiBAsString
=
f
"{InstalledSizeMiB:.2f}"
+
" MiB"
if
isremoteref
:
if
item
in
self
.
FlatHubRefsList
:
RemoteName
=
"flathub"
else
:
RemoteName
=
""
DownloadSize
=
item
.
get_download_size
()
DownloadSizeMiB
=
DownloadSize
/
1048576
DownloadSizeMiBAsString
=
f
"{DownloadSizeMiB:.2f}"
+
" MiB"
Name
=
""
elif
isinstalledref
:
RemoteName
=
item
.
get_origin
()
DownloadSizeMiBAsString
=
""
Name
=
item
.
get_appdata_name
()
self
.
ListStoreMain
.
append
([
RealName
,
Arch
,
Branch
,
RemoteName
,
InstalledSizeMiBAsString
,
DownloadSizeMiBAsString
,
Name
])
else
:
continue
self
.
TreeViewMain
=
MainBuilder
.
get_object
(
"TreeViewMain"
)
self
.
SearchEntryMain
=
MainBuilder
.
get_object
(
"SearchEntryMain"
)
self
.
SearchFilter
=
MainBuilder
.
get_object
(
"SearchFilter"
)
self
.
SearchFilter
=
main_builder
.
get_object
(
"SearchFilter"
)
self
.
SearchFilter
.
set_visible_func
(
self
.
SearchFilterFunction
)
self
.
HeaderBarShowButton
=
MainB
uilder
.
get_object
(
"HeaderBarShowButton"
)
self
.
HeaderBarShowButton
=
main_b
uilder
.
get_object
(
"HeaderBarShowButton"
)
self
.
HeaderBarShowButton
.
set_label
(
_
(
"Show Installed Apps"
))
self
.
AboutDialog
=
AboutB
uilder
.
get_object
(
"AboutDialog"
)
self
.
AboutDialog
=
about_b
uilder
.
get_object
(
"AboutDialog"
)
self
.
AboutDialog
.
set_comments
(
_
(
"Flatpak GUI for Pardus"
))
self
.
AboutDialog
.
set_copyright
(
_
(
"Copyright (C) 2020 Erdem Ersoy"
))
self
.
AboutDialog
.
set_program_name
(
_
(
"Pardus Flatpak GUI"
))
self
.
AboutDialog
.
set_version
(
Version
.
getVersion
())
self
.
AboutDialog
.
set_website_label
(
_
(
"Pardus Flatpak GUI Web Site"
))
self
.
MessageDialogError
=
MessagesBuilder
.
get_object
(
"MessageDialogError"
)
self
.
MainWindow
=
main_builder
.
get_object
(
"MainWindow"
)
self
.
MainWindow
.
set_application
(
application
)
self
.
MainWindow
.
show
()
def
SearchFilterFunction
(
self
,
model
,
iteration
,
data
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment