gui: Remove old Tab and QueueTab code
Now that nothing uses it Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
This commit is contained in:
parent
c0a6c663d1
commit
e97939a9cd
|
@ -4,5 +4,5 @@ Import("env")
|
|||
env.UsePackage("gtkmm-3.0")
|
||||
env.UsePackage("gmodule-export-2.0")
|
||||
|
||||
res = Glob("*.c") + Glob("*.cpp") + SConscript("queue/Sconscript")
|
||||
res = Glob("*.c") + Glob("*.cpp")
|
||||
Return("res")
|
||||
|
|
|
@ -16,7 +16,6 @@ extern "C" {
|
|||
#include <gui/window.h>
|
||||
}
|
||||
#include <gui/ocarina.h>
|
||||
#include <gui/tabs.h>
|
||||
|
||||
|
||||
static std::string ocarina_dir = "";
|
||||
|
@ -77,18 +76,14 @@ int main(int argc, char **argv)
|
|||
gui_playlist_init();
|
||||
gui_audio_init();
|
||||
|
||||
init_tabs();
|
||||
post_init_tabs();
|
||||
|
||||
window = Glib :: wrap(GTK_WINDOW(gui_builder_widget("o_window")), false);
|
||||
ocarina_app->signal_window_removed().connect(sigc::ptr_fun(on_window_removed));
|
||||
ocarina_app->run(*window, argc, argv);
|
||||
|
||||
core_deinit();
|
||||
cleanup_tabs();
|
||||
gui_window_deinit();
|
||||
gui_settings_deinit();
|
||||
//gui_builder_deinit();
|
||||
gui_builder_deinit();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
res = Glob("*.cpp")
|
||||
Return("res")
|
|
@ -1,51 +0,0 @@
|
|||
/*
|
||||
* Copyright 2015 (c) Anna Schumaker.
|
||||
*/
|
||||
extern "C" {
|
||||
#include <core/string.h>
|
||||
#include <gui/sidebar.h>
|
||||
}
|
||||
#include <gui/queue/label.h>
|
||||
|
||||
|
||||
|
||||
QueueLabel :: QueueLabel(BaseObjectType *cobject,
|
||||
const Glib::RefPtr<Gtk::Builder> builder)
|
||||
: Gtk::HBox(cobject), _builder(builder)
|
||||
{
|
||||
}
|
||||
|
||||
QueueLabel :: ~QueueLabel()
|
||||
{
|
||||
}
|
||||
|
||||
void QueueLabel :: init(queue *queue)
|
||||
{
|
||||
_queue = queue;
|
||||
set_size();
|
||||
}
|
||||
|
||||
|
||||
|
||||
TempLabel :: TempLabel(BaseObjectType *cobject,
|
||||
const Glib::RefPtr<Gtk::Builder> builder)
|
||||
: QueueLabel(cobject, builder)
|
||||
{
|
||||
_builder->get_widget("temp_number", temp_number);
|
||||
_builder->get_widget("temp_size", temp_size);
|
||||
_builder->get_widget("temp_close", temp_close);
|
||||
}
|
||||
|
||||
void TempLabel :: set_sensitive(bool sensitive)
|
||||
{
|
||||
temp_number->set_sensitive(sensitive);
|
||||
temp_size->set_sensitive(sensitive);
|
||||
}
|
||||
|
||||
void TempLabel :: set_size()
|
||||
{
|
||||
gchar *size = g_strdup_printf("%u", queue_size(_queue));
|
||||
temp_size->set_text(size);
|
||||
gui_sidebar_set_size(gui_queue(_queue));
|
||||
g_free(size);
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
/*
|
||||
* Copyright 2015 (c) Anna Schumaker.
|
||||
*/
|
||||
extern "C" {
|
||||
#include <core/audio.h>
|
||||
#include <core/filter.h>
|
||||
#include <gui/model.h>
|
||||
#include <gui/queue.h>
|
||||
}
|
||||
#include <gui/queue/window.h>
|
||||
|
||||
QueueWindow :: QueueWindow(BaseObjectType *cobject,
|
||||
const Glib::RefPtr<Gtk::Builder> builder)
|
||||
: Gtk::ScrolledWindow(cobject), _builder(builder)
|
||||
{
|
||||
_builder->get_widget("q_treeview", q_treeview);
|
||||
}
|
||||
|
||||
QueueWindow :: ~QueueWindow()
|
||||
{
|
||||
}
|
||||
|
||||
void QueueWindow :: init(queue *queue)
|
||||
{
|
||||
GtkTreeModel *model = GTK_TREE_MODEL(gui_queue(queue)->gq_model);
|
||||
|
||||
q_treeview->signal_key_press_event().connect(sigc::mem_fun(*this,
|
||||
&QueueWindow :: on_key_press), false);
|
||||
gtk_tree_view_set_model(q_treeview->gobj(), model);
|
||||
}
|
||||
|
||||
bool QueueWindow :: on_key_press(GdkEventKey *event)
|
||||
{
|
||||
std::string key = gdk_keyval_name(event->keyval);
|
||||
if (key == "space")
|
||||
return true;
|
||||
return false;
|
||||
}
|
|
@ -1,205 +0,0 @@
|
|||
/*
|
||||
* Copyright 2014 (c) Anna Schumaker.
|
||||
*/
|
||||
extern "C" {
|
||||
#include <core/string.h>
|
||||
#include <core/tempq.h>
|
||||
#include <gui/builder.h>
|
||||
#include <gui/sidebar.h>
|
||||
}
|
||||
#include <gui/tabs.h>
|
||||
#include <gui/queue/label.h>
|
||||
|
||||
|
||||
static void renumber_queues();
|
||||
|
||||
static class QueueColumns : public Gtk::TreeModelColumnRecord {
|
||||
public:
|
||||
QueueColumns()
|
||||
{ add(q_col_track); add(q_col_title); add(q_col_length);
|
||||
add(q_col_artist); add(q_col_album); add(q_col_year);
|
||||
add(q_col_genre); add(q_col_count); add(q_col_played);
|
||||
add(q_col_path); }
|
||||
|
||||
Gtk::TreeModelColumn<unsigned int> q_col_track;
|
||||
Gtk::TreeModelColumn<std::string> q_col_title;
|
||||
Gtk::TreeModelColumn<std::string> q_col_length;
|
||||
Gtk::TreeModelColumn<std::string> q_col_artist;
|
||||
Gtk::TreeModelColumn<std::string> q_col_album;
|
||||
Gtk::TreeModelColumn<unsigned int> q_col_year;
|
||||
Gtk::TreeModelColumn<std::string> q_col_genre;
|
||||
Gtk::TreeModelColumn<unsigned int> q_col_count;
|
||||
Gtk::TreeModelColumn<std::string> q_col_played;
|
||||
Gtk::TreeModelColumn<std::string> q_col_path;
|
||||
} queue_cols;
|
||||
|
||||
|
||||
|
||||
class QueueTab : public Tab {
|
||||
private:
|
||||
/**
|
||||
* Queue tab widgets
|
||||
*/
|
||||
TempLabel *q_label;
|
||||
|
||||
public:
|
||||
QueueTab(queue *, unsigned int num);
|
||||
~QueueTab();
|
||||
|
||||
void on_track_removed(unsigned int);
|
||||
|
||||
/**
|
||||
* Helper functions
|
||||
*/
|
||||
bool on_key_press_event(const std::string &);
|
||||
void queue_set_number(unsigned int);
|
||||
void on_tab_reordered();
|
||||
void on_move_queue(int);
|
||||
|
||||
/**
|
||||
* GTK-MM Callbacks
|
||||
*/
|
||||
void on_close_clicked();
|
||||
};
|
||||
|
||||
static std::map<Gtk::Widget *, QueueTab *> queue_mapping;
|
||||
|
||||
|
||||
QueueTab :: QueueTab(queue *pq, unsigned int num)
|
||||
: Tab(pq)
|
||||
{
|
||||
Gtk::Notebook *notebook;
|
||||
|
||||
tab_builder->add_from_file(gui :: share_file("QueueLabel.ui"));
|
||||
|
||||
/*
|
||||
* Create our tab widget
|
||||
*/
|
||||
tab_builder->get_widget_derived("TempLabel", q_label);
|
||||
|
||||
q_label->temp_close->signal_clicked().connect(sigc::mem_fun(*this,
|
||||
&QueueTab::on_close_clicked));
|
||||
q_label->init(tab_pq);
|
||||
tab_label = q_label;
|
||||
|
||||
queue_set_number(num);
|
||||
|
||||
|
||||
/*
|
||||
* Fill in the page!
|
||||
*/
|
||||
|
||||
tab_vbox.pack_start(*tab_window, true, true);
|
||||
|
||||
queue_mapping[&tab_vbox] = this;
|
||||
|
||||
notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
notebook->insert_page(tab_vbox, *q_label, num);
|
||||
notebook->set_tab_reorderable(tab_vbox);
|
||||
}
|
||||
|
||||
QueueTab :: ~QueueTab()
|
||||
{
|
||||
tab_window->q_treeview->unset_model();
|
||||
queue_mapping.erase(&tab_vbox);
|
||||
tab_unmap();
|
||||
gui_sidebar_remove(gui_queue(tab_pq));
|
||||
Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false)->remove_page(tab_vbox);
|
||||
renumber_queues();
|
||||
}
|
||||
|
||||
void QueueTab :: on_track_removed(unsigned int row)
|
||||
{
|
||||
this->Tab :: on_track_removed(row);
|
||||
if (queue_size(tab_pq) == 0)
|
||||
delete this;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Queue tab helper functions
|
||||
*
|
||||
*/
|
||||
|
||||
void QueueTab :: queue_set_number(unsigned int num)
|
||||
{
|
||||
gchar *text = g_strdup_printf("%u. ", num);
|
||||
q_label->temp_number->set_text(text);
|
||||
g_free(text);
|
||||
}
|
||||
|
||||
void QueueTab :: on_tab_reordered()
|
||||
{
|
||||
queue_set_number(tab_page_num());
|
||||
}
|
||||
|
||||
void QueueTab :: on_move_queue(int num)
|
||||
{
|
||||
tempq_move(tab_pq, num);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Gtk-MM Callback Functions
|
||||
*
|
||||
*/
|
||||
|
||||
void QueueTab :: on_close_clicked()
|
||||
{
|
||||
tempq_free(tab_pq);
|
||||
delete this;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Global functions
|
||||
*
|
||||
*/
|
||||
static void renumber_queues()
|
||||
{
|
||||
std::map<Gtk::Widget *, QueueTab *>::iterator it;
|
||||
for (it = queue_mapping.begin(); it != queue_mapping.end(); it++)
|
||||
it->second->on_tab_reordered();
|
||||
}
|
||||
|
||||
void on_pq_created(queue *pq, unsigned int num)
|
||||
{
|
||||
new QueueTab(pq, num);
|
||||
}
|
||||
|
||||
static void on_page_reordered(Gtk::Widget *page, int num)
|
||||
{
|
||||
Gtk::Notebook *notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
|
||||
if ((unsigned int)num >= tempq_count()) {
|
||||
notebook->reorder_child(*page, tempq_count() - 1);
|
||||
return;
|
||||
}
|
||||
|
||||
std::map<Gtk::Widget *, QueueTab *>::iterator it;
|
||||
it = queue_mapping.find(page);
|
||||
if (it != queue_mapping.end()) {
|
||||
it->second->on_move_queue(num);
|
||||
renumber_queues();
|
||||
}
|
||||
}
|
||||
|
||||
void init_queue_tabs()
|
||||
{
|
||||
Gtk::Notebook *notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
notebook->signal_page_reordered().connect(sigc::ptr_fun(on_page_reordered));
|
||||
}
|
||||
|
||||
void post_init_queue_tabs()
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < tempq_count(); i++)
|
||||
on_pq_created(tempq_get(i), i);
|
||||
}
|
159
gui/tabs.cpp
159
gui/tabs.cpp
|
@ -1,159 +0,0 @@
|
|||
/*
|
||||
* Copyright 2014 (c) Anna Schumaker.
|
||||
*/
|
||||
extern "C" {
|
||||
#include <core/collection.h>
|
||||
#include <core/playlist.h>
|
||||
#include <core/string.h>
|
||||
#include <core/tempq.h>
|
||||
#include <gui/builder.h>
|
||||
#include <gui/queue.h>
|
||||
#include <gui/sidebar.h>
|
||||
}
|
||||
#include <gui/tabs.h>
|
||||
|
||||
#include <map>
|
||||
#include <sstream>
|
||||
|
||||
|
||||
static std::map<queue *, Tab *> queue_mapping;
|
||||
|
||||
/**
|
||||
*
|
||||
* Tab class basics
|
||||
*
|
||||
*/
|
||||
|
||||
Tab :: Tab(queue *pq)
|
||||
: tab_sorting_count(0), tab_pq(pq), tab_label(NULL)
|
||||
{
|
||||
queue_mapping[tab_pq] = this;
|
||||
|
||||
tab_builder = Gtk::Builder::create();
|
||||
tab_builder->add_from_file(gui :: share_file("QueueWindow.ui"));
|
||||
tab_builder->get_widget_derived("QueueWindow", tab_window);
|
||||
|
||||
tab_window->init(tab_pq);
|
||||
|
||||
tab_vbox.set_margin_start(1);
|
||||
tab_vbox.set_margin_end(1);
|
||||
tab_vbox.set_homogeneous(false);
|
||||
tab_vbox.show();
|
||||
}
|
||||
|
||||
Tab :: ~Tab() {}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* QNotifier implementation.
|
||||
*
|
||||
*/
|
||||
|
||||
void Tab :: on_track_added(unsigned int row)
|
||||
{
|
||||
tab_label->set_size();
|
||||
}
|
||||
|
||||
void Tab :: on_track_removed(unsigned int row)
|
||||
{
|
||||
tab_label->set_size();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Tab internal helper functions
|
||||
*
|
||||
*/
|
||||
|
||||
int Tab :: tab_page_num()
|
||||
{
|
||||
Gtk::Notebook *notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
return notebook->page_num(tab_vbox);
|
||||
}
|
||||
|
||||
bool Tab :: tab_is_cur()
|
||||
{
|
||||
Gtk::Notebook *notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
return notebook->page_num(tab_vbox) == notebook->get_current_page();
|
||||
}
|
||||
|
||||
void Tab :: tab_unmap()
|
||||
{
|
||||
queue_mapping.erase(tab_pq);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Global functions
|
||||
*
|
||||
*/
|
||||
|
||||
Tab *find_tab(queue *pq)
|
||||
{
|
||||
std::map<queue *, Tab *>::iterator it;
|
||||
it = queue_mapping.find(pq);
|
||||
if (it != queue_mapping.end())
|
||||
return it->second;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static bool on_window_key_pressed(GdkEventKey *event)
|
||||
{
|
||||
Gtk::Notebook *notebook = Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false);
|
||||
std::string key = gdk_keyval_name(event->keyval);
|
||||
|
||||
if (key.size() >= 3) {
|
||||
if (key.substr(0, 3) == "KP_")
|
||||
key = key.substr(3);
|
||||
}
|
||||
|
||||
if (key >= "0" && key <= "9") {
|
||||
unsigned int n = atoi(key.c_str());
|
||||
if (n < tempq_count())
|
||||
notebook->set_current_page(n);
|
||||
} else if (key == "c")
|
||||
notebook->set_current_page(tempq_count());
|
||||
else if (key == "h")
|
||||
notebook->set_current_page(tempq_count() + 1);
|
||||
else if (key == "m")
|
||||
notebook->set_current_page(tempq_count() + 3);
|
||||
else if (key == "p")
|
||||
notebook->set_current_page(tempq_count() + 2);
|
||||
else
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void init_tabs()
|
||||
{
|
||||
Gtk::Window *window = Glib :: wrap(GTK_WINDOW(gui_builder_widget("o_window")), false);
|
||||
|
||||
/* Initialize other tabs */
|
||||
init_queue_tabs();
|
||||
|
||||
/* Setup keyboard shortcuts */
|
||||
window->signal_key_press_event().connect(sigc::ptr_fun(on_window_key_pressed));
|
||||
}
|
||||
|
||||
void post_init_tabs()
|
||||
{
|
||||
post_init_queue_tabs();
|
||||
|
||||
unsigned int tab = 0;
|
||||
for (tab = 0; tab < tempq_count(); tab++) {
|
||||
if (queue_has_flag(tempq_get(tab), Q_ENABLED))
|
||||
break;
|
||||
}
|
||||
Glib :: wrap(GTK_NOTEBOOK(gui_builder_widget("o_notebook")), false)->set_current_page(tab);
|
||||
}
|
||||
|
||||
void cleanup_tabs()
|
||||
{
|
||||
while (queue_mapping.size() > 0)
|
||||
delete queue_mapping.begin()->second;
|
||||
}
|
|
@ -4,7 +4,6 @@
|
|||
#ifndef OCARINA_H
|
||||
#define OCARINA_H
|
||||
|
||||
#include <core/queue.h>
|
||||
#include <gtkmm.h>
|
||||
|
||||
|
||||
|
@ -14,8 +13,5 @@ namespace gui
|
|||
const std::string share_file(const std::string &);
|
||||
}
|
||||
|
||||
void on_pq_created(queue *, unsigned int);
|
||||
void post_init_queue_tabs();
|
||||
|
||||
|
||||
#endif /* OCARINA_H */
|
||||
|
|
|
@ -1,67 +0,0 @@
|
|||
/*
|
||||
* Copyright 2014 (c) Anna Schumaker.
|
||||
*/
|
||||
#ifndef OCARINA_TABS_H
|
||||
#define OCARINA_TABS_H
|
||||
|
||||
#include <gui/ocarina.h>
|
||||
#include <gui/queue/label.h>
|
||||
#include <gui/queue/window.h>
|
||||
#include <core/playlist.h>
|
||||
#include <core/queue.h>
|
||||
|
||||
class Tab {
|
||||
private:
|
||||
unsigned int tab_sorting_count;
|
||||
std::string tab_sorting_title;
|
||||
|
||||
protected:
|
||||
Glib::RefPtr<Gtk::Builder> tab_builder;
|
||||
queue *tab_pq;
|
||||
Gtk::VBox tab_vbox;
|
||||
|
||||
QueueLabel *tab_label;
|
||||
|
||||
/**
|
||||
* Class helper functions
|
||||
*/
|
||||
void tab_unmap();
|
||||
|
||||
public:
|
||||
QueueWindow *tab_window;
|
||||
Tab(queue *);
|
||||
virtual ~Tab();
|
||||
|
||||
/**
|
||||
* QNotifier implementation
|
||||
*/
|
||||
void on_track_added(unsigned int);
|
||||
virtual void on_track_removed(unsigned int);
|
||||
void on_tracks_cleared(unsigned int);
|
||||
void on_track_updated(unsigned int);
|
||||
|
||||
/**
|
||||
* More helper functions
|
||||
*/
|
||||
int tab_page_num();
|
||||
bool tab_is_cur();
|
||||
void tab_runtime_changed();
|
||||
void tab_focus_search();
|
||||
|
||||
/**
|
||||
* GTK-MM callback functions
|
||||
*/
|
||||
void on_column_clicked(unsigned int);
|
||||
};
|
||||
|
||||
|
||||
Tab *find_tab(queue *);
|
||||
void tab_focus_search();
|
||||
void init_tabs();
|
||||
void post_init_tabs();
|
||||
void cleanup_tabs();
|
||||
|
||||
|
||||
void init_queue_tabs();
|
||||
|
||||
#endif /* OCARINA_TABS_H */
|
|
@ -1,209 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.18.3 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.12"/>
|
||||
<object class="GtkBox" id="CollectionLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="spacing">5</property>
|
||||
<child>
|
||||
<object class="GtkImage" id="image1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="icon_name">media-optical</property>
|
||||
<property name="icon_size">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="box1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes"><big>Collection</big></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="justify">center</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="collection_size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkBox" id="HistoryLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="spacing">5</property>
|
||||
<child>
|
||||
<object class="GtkImage" id="image2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="icon_name">document-open-recent</property>
|
||||
<property name="icon_size">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="box2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label2">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes"><big>History</big></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="justify">center</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="history_size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">0</property>
|
||||
<property name="justify">center</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkBox" id="PlaylistLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="spacing">5</property>
|
||||
<child>
|
||||
<object class="GtkImage" id="image3">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="icon_name">emblem-documents</property>
|
||||
<property name="icon_size">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label3">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Playlist
|
||||
Manager</property>
|
||||
<property name="justify">center</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<object class="GtkBox" id="TempLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="temp_number">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">0. </property>
|
||||
<property name="ellipsize">end</property>
|
||||
<property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="scale" value="1.4399999999999999"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="temp_size">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">4242</property>
|
||||
<property name="justify">center</property>
|
||||
<property name="angle">0.01</property>
|
||||
<attributes>
|
||||
<attribute name="scale" value="1.4399999999999999"/>
|
||||
</attributes>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="temp_close">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="receives_default">True</property>
|
||||
<property name="relief">none</property>
|
||||
<child>
|
||||
<object class="GtkImage" id="image4">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="icon_name">window-close</property>
|
||||
<property name="icon_size">1</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
Loading…
Reference in New Issue