mp3splt-gtk
ui_manager.h
00001 /**********************************************************
00002  *
00003  * mp3splt-gtk -- utility based on mp3splt,
00004  *                for mp3/ogg splitting without decoding
00005  *
00006  * Copyright: (C) 2005-2012 Alexandru Munteanu
00007  * Contact: io_fx@yahoo.fr
00008  *
00009  * http://mp3splt.sourceforge.net/
00010  *
00011  *********************************************************/
00012 
00013 /**********************************************************
00014  *
00015  * This program is free software; you can redistribute it and/or
00016  * modify it under the terms of the GNU General Public License
00017  * as published by the Free Software Foundation; either version 2
00018  * of the License, or (at your option) any later version.
00019  *
00020  * This program is distributed in the hope that it will be useful,
00021  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00022  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023  * GNU General Public License for more details.
00024  *
00025  * You should have received a copy of the GNU General Public License
00026  * along with this program; if not, write to the Free Software
00027  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
00028  * USA.
00029  *
00030  *********************************************************/
00031 
00032 #ifndef _UI_MANAGER_H
00033 
00034 #define UI_DEFAULT_WIDTH 550
00035 #define UI_DEFAULT_HEIGHT 420
00036 
00037 typedef struct {
00038   gint root_x_pos;
00039   gint root_y_pos;
00040   gint width;
00041   gint height;
00042 } ui_main_window;
00043 
00044 typedef struct {
00045   gchar *browser_directory;
00046   ui_main_window *main_win;
00047 } ui_infos;
00048 
00049 typedef struct {
00050   ui_infos *infos;
00051 } ui_state;
00052 
00053 ui_state *ui_state_new();
00054 void ui_state_free(ui_state *ui);
00055 
00056 void ui_set_browser_directory(ui_state *ui, const gchar *directory);
00057 const gchar *ui_get_browser_directory(ui_state *ui);
00058 
00059 void ui_set_main_win_position(ui_state *ui, gint x, gint y);
00060 void ui_set_main_win_size(ui_state *ui, gint width, gint height);
00061 const ui_main_window *ui_get_main_window_infos(ui_state *ui);
00062 
00063 #define _UI_MANAGER_H
00064 #endif
00065