mirror of
https://github.com/transmission/transmission
synced 2025-03-03 10:15:45 +00:00
first baby steps of wx client. currently just a window with menus and a toolbar, and unusuable.
This commit is contained in:
parent
459b8958cb
commit
ca3c07012c
13 changed files with 2682 additions and 10 deletions
|
@ -10,8 +10,11 @@ endif
|
|||
if HAVE_DARWIN
|
||||
MAC_DIR = macosx
|
||||
endif
|
||||
if HAVE_WX
|
||||
WX_DIR = wx
|
||||
endif
|
||||
|
||||
SUBDIRS = libtransmission $(DAEMON_DIR) cli $(GTK_DIR) $(BEOS_DIR) $(MAC_DIR)
|
||||
SUBDIRS = libtransmission $(DAEMON_DIR) cli $(GTK_DIR) $(BEOS_DIR) $(MAC_DIR) $(WX_DIR)
|
||||
|
||||
DISTCLEANFILES = \
|
||||
Transmission.desktop
|
||||
|
|
371
acinclude.m4
371
acinclude.m4
|
@ -198,3 +198,374 @@ AC_LANG_RESTORE
|
|||
])dnl ACX_PTHREAD
|
||||
|
||||
|
||||
dnl
|
||||
dnl nicked from wxwin.m4
|
||||
dnl
|
||||
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Macros for wxWidgets detection. Typically used in configure.in as:
|
||||
dnl
|
||||
dnl AC_ARG_ENABLE(...)
|
||||
dnl AC_ARG_WITH(...)
|
||||
dnl ...
|
||||
dnl AM_OPTIONS_WXCONFIG
|
||||
dnl ...
|
||||
dnl ...
|
||||
dnl AM_PATH_WXCONFIG(2.6.0, wxWin=1)
|
||||
dnl if test "$wxWin" != 1; then
|
||||
dnl AC_MSG_ERROR([
|
||||
dnl wxWidgets must be installed on your system
|
||||
dnl but wx-config script couldn't be found.
|
||||
dnl
|
||||
dnl Please check that wx-config is in path, the directory
|
||||
dnl where wxWidgets libraries are installed (returned by
|
||||
dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
|
||||
dnl equivalent variable and wxWidgets version is 2.3.4 or above.
|
||||
dnl ])
|
||||
dnl fi
|
||||
dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
|
||||
dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
|
||||
dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
|
||||
dnl
|
||||
dnl LIBS="$LIBS $WX_LIBS"
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl AM_OPTIONS_WXCONFIG
|
||||
dnl
|
||||
dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and
|
||||
dnl --wx-config command line options
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([AM_OPTIONS_WXCONFIG],
|
||||
[
|
||||
AC_ARG_WITH(wxdir,
|
||||
[ --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH],
|
||||
[ wx_config_name="$withval/wx-config"
|
||||
wx_config_args="--inplace"])
|
||||
AC_ARG_WITH(wx-config,
|
||||
[ --with-wx-config=CONFIG wx-config script to use (optional)],
|
||||
wx_config_name="$withval" )
|
||||
AC_ARG_WITH(wx-prefix,
|
||||
[ --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)],
|
||||
wx_config_prefix="$withval", wx_config_prefix="")
|
||||
AC_ARG_WITH(wx-exec-prefix,
|
||||
[ --with-wx-exec-prefix=PREFIX
|
||||
Exec prefix where wxWidgets is installed (optional)],
|
||||
wx_config_exec_prefix="$withval", wx_config_exec_prefix="")
|
||||
])
|
||||
|
||||
dnl Helper macro for checking if wx version is at least $1.$2.$3, set's
|
||||
dnl wx_ver_ok=yes if it is:
|
||||
AC_DEFUN([_WX_PRIVATE_CHECK_VERSION],
|
||||
[
|
||||
wx_ver_ok=""
|
||||
if test "x$WX_VERSION" != x ; then
|
||||
if test $wx_config_major_version -gt $1; then
|
||||
wx_ver_ok=yes
|
||||
else
|
||||
if test $wx_config_major_version -eq $1; then
|
||||
if test $wx_config_minor_version -gt $2; then
|
||||
wx_ver_ok=yes
|
||||
else
|
||||
if test $wx_config_minor_version -eq $2; then
|
||||
if test $wx_config_micro_version -ge $3; then
|
||||
wx_ver_ok=yes
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl AM_PATH_WXCONFIG(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND
|
||||
dnl [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]])
|
||||
dnl
|
||||
dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC
|
||||
dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME
|
||||
dnl environment variable to override the default name of the wx-config script
|
||||
dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this
|
||||
dnl case the macro won't even waste time on tests for its existence.
|
||||
dnl
|
||||
dnl Optional WX-LIBS argument contains comma- or space-separated list of
|
||||
dnl wxWidgets libraries to link against (it may include contrib libraries). If
|
||||
dnl it is not specified then WX_LIBS and WX_LIBS_STATIC will contain flags to
|
||||
dnl link with all of the core wxWidgets libraries.
|
||||
dnl
|
||||
dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config
|
||||
dnl invocation command in present. It can be used to fine-tune lookup of
|
||||
dnl best wxWidgets build available.
|
||||
dnl
|
||||
dnl Example use:
|
||||
dnl AM_PATH_WXCONFIG([2.6.0], [wxWin=1], [wxWin=0], [html,core,net]
|
||||
dnl [--unicode --debug])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl
|
||||
dnl Get the cflags and libraries from the wx-config script
|
||||
dnl
|
||||
AC_DEFUN([AM_PATH_WXCONFIG],
|
||||
[
|
||||
dnl do we have wx-config name: it can be wx-config or wxd-config or ...
|
||||
if test x${WX_CONFIG_NAME+set} != xset ; then
|
||||
WX_CONFIG_NAME=wx-config
|
||||
fi
|
||||
|
||||
if test "x$wx_config_name" != x ; then
|
||||
WX_CONFIG_NAME="$wx_config_name"
|
||||
fi
|
||||
|
||||
dnl deal with optional prefixes
|
||||
if test x$wx_config_exec_prefix != x ; then
|
||||
wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix"
|
||||
WX_LOOKUP_PATH="$wx_config_exec_prefix/bin"
|
||||
fi
|
||||
if test x$wx_config_prefix != x ; then
|
||||
wx_config_args="$wx_config_args --prefix=$wx_config_prefix"
|
||||
WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin"
|
||||
fi
|
||||
if test "$cross_compiling" = "yes"; then
|
||||
wx_config_args="$wx_config_args --host=$host_alias"
|
||||
fi
|
||||
|
||||
dnl don't search the PATH if WX_CONFIG_NAME is absolute filename
|
||||
if test -x "$WX_CONFIG_NAME" ; then
|
||||
AC_MSG_CHECKING(for wx-config)
|
||||
WX_CONFIG_PATH="$WX_CONFIG_NAME"
|
||||
AC_MSG_RESULT($WX_CONFIG_PATH)
|
||||
else
|
||||
AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH")
|
||||
fi
|
||||
|
||||
if test "$WX_CONFIG_PATH" != "no" ; then
|
||||
WX_VERSION=""
|
||||
|
||||
min_wx_version=ifelse([$1], ,2.2.1,$1)
|
||||
if test -z "$5" ; then
|
||||
AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version])
|
||||
else
|
||||
AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)])
|
||||
fi
|
||||
|
||||
WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5 $4"
|
||||
|
||||
WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null`
|
||||
wx_config_major_version=`echo $WX_VERSION | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
||||
wx_config_minor_version=`echo $WX_VERSION | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
||||
wx_config_micro_version=`echo $WX_VERSION | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
||||
|
||||
wx_requested_major_version=`echo $min_wx_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
||||
wx_requested_minor_version=`echo $min_wx_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
||||
wx_requested_micro_version=`echo $min_wx_version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
||||
|
||||
_WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version],
|
||||
[$wx_requested_minor_version],
|
||||
[$wx_requested_micro_version])
|
||||
|
||||
if test -n "$wx_ver_ok"; then
|
||||
|
||||
AC_MSG_RESULT(yes (version $WX_VERSION))
|
||||
WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs`
|
||||
|
||||
dnl is this even still appropriate? --static is a real option now
|
||||
dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is
|
||||
dnl what the user actually wants, making this redundant at best.
|
||||
dnl For now keep it in case anyone actually used it in the past.
|
||||
AC_MSG_CHECKING([for wxWidgets static library])
|
||||
WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs 2>/dev/null`
|
||||
if test "x$WX_LIBS_STATIC" = "x"; then
|
||||
AC_MSG_RESULT(no)
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
fi
|
||||
|
||||
dnl starting with version 2.2.6 wx-config has --cppflags argument
|
||||
wx_has_cppflags=""
|
||||
if test $wx_config_major_version -gt 2; then
|
||||
wx_has_cppflags=yes
|
||||
else
|
||||
if test $wx_config_major_version -eq 2; then
|
||||
if test $wx_config_minor_version -gt 2; then
|
||||
wx_has_cppflags=yes
|
||||
else
|
||||
if test $wx_config_minor_version -eq 2; then
|
||||
if test $wx_config_micro_version -ge 6; then
|
||||
wx_has_cppflags=yes
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl starting with version 2.7.0 wx-config has --rescomp option
|
||||
wx_has_rescomp=""
|
||||
if test $wx_config_major_version -gt 2; then
|
||||
wx_has_rescomp=yes
|
||||
else
|
||||
if test $wx_config_major_version -eq 2; then
|
||||
if test $wx_config_minor_version -ge 7; then
|
||||
wx_has_rescomp=yes
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if test "x$wx_has_rescomp" = x ; then
|
||||
dnl cannot give any useful info for resource compiler
|
||||
WX_RESCOMP=
|
||||
else
|
||||
WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp`
|
||||
fi
|
||||
|
||||
if test "x$wx_has_cppflags" = x ; then
|
||||
dnl no choice but to define all flags like CFLAGS
|
||||
WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags`
|
||||
WX_CPPFLAGS=$WX_CFLAGS
|
||||
WX_CXXFLAGS=$WX_CFLAGS
|
||||
|
||||
WX_CFLAGS_ONLY=$WX_CFLAGS
|
||||
WX_CXXFLAGS_ONLY=$WX_CFLAGS
|
||||
else
|
||||
dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS
|
||||
WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags`
|
||||
WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags`
|
||||
WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags`
|
||||
|
||||
WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"`
|
||||
WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"`
|
||||
fi
|
||||
|
||||
ifelse([$2], , :, [$2])
|
||||
|
||||
else
|
||||
|
||||
if test "x$WX_VERSION" = x; then
|
||||
dnl no wx-config at all
|
||||
AC_MSG_RESULT(no)
|
||||
else
|
||||
AC_MSG_RESULT(no (version $WX_VERSION is not new enough))
|
||||
fi
|
||||
|
||||
WX_CFLAGS=""
|
||||
WX_CPPFLAGS=""
|
||||
WX_CXXFLAGS=""
|
||||
WX_LIBS=""
|
||||
WX_LIBS_STATIC=""
|
||||
WX_RESCOMP=""
|
||||
ifelse([$3], , :, [$3])
|
||||
|
||||
fi
|
||||
else
|
||||
|
||||
WX_CFLAGS=""
|
||||
WX_CPPFLAGS=""
|
||||
WX_CXXFLAGS=""
|
||||
WX_LIBS=""
|
||||
WX_LIBS_STATIC=""
|
||||
WX_RESCOMP=""
|
||||
|
||||
ifelse([$3], , :, [$3])
|
||||
|
||||
fi
|
||||
|
||||
AC_SUBST(WX_CPPFLAGS)
|
||||
AC_SUBST(WX_CFLAGS)
|
||||
AC_SUBST(WX_CXXFLAGS)
|
||||
AC_SUBST(WX_CFLAGS_ONLY)
|
||||
AC_SUBST(WX_CXXFLAGS_ONLY)
|
||||
AC_SUBST(WX_LIBS)
|
||||
AC_SUBST(WX_LIBS_STATIC)
|
||||
AC_SUBST(WX_VERSION)
|
||||
AC_SUBST(WX_RESCOMP)
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Get information on the wxrc program for making C++, Python and xrs
|
||||
dnl resource files.
|
||||
dnl
|
||||
dnl AC_ARG_ENABLE(...)
|
||||
dnl AC_ARG_WITH(...)
|
||||
dnl ...
|
||||
dnl AM_OPTIONS_WXCONFIG
|
||||
dnl ...
|
||||
dnl AM_PATH_WXCONFIG(2.6.0, wxWin=1)
|
||||
dnl if test "$wxWin" != 1; then
|
||||
dnl AC_MSG_ERROR([
|
||||
dnl wxWidgets must be installed on your system
|
||||
dnl but wx-config script couldn't be found.
|
||||
dnl
|
||||
dnl Please check that wx-config is in path, the directory
|
||||
dnl where wxWidgets libraries are installed (returned by
|
||||
dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or
|
||||
dnl equivalent variable and wxWidgets version is 2.6.0 or above.
|
||||
dnl ])
|
||||
dnl fi
|
||||
dnl
|
||||
dnl AM_PATH_WXRC([HAVE_WXRC=1], [HAVE_WXRC=0])
|
||||
dnl if test "x$HAVE_WXRC" != x1; then
|
||||
dnl AC_MSG_ERROR([
|
||||
dnl The wxrc program was not installed or not found.
|
||||
dnl
|
||||
dnl Please check the wxWidgets installation.
|
||||
dnl ])
|
||||
dnl fi
|
||||
dnl
|
||||
dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
|
||||
dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY"
|
||||
dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY"
|
||||
dnl
|
||||
dnl LDFLAGS="$LDFLAGS $WX_LIBS"
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl AM_PATH_WXRC([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
|
||||
dnl
|
||||
dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS
|
||||
dnl resources. The variable WXRC will be set and substituted in the configure
|
||||
dnl script and Makefiles.
|
||||
dnl
|
||||
dnl Example use:
|
||||
dnl AM_PATH_WXRC([wxrc=1], [wxrc=0])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl
|
||||
dnl wxrc program from the wx-config script
|
||||
dnl
|
||||
AC_DEFUN([AM_PATH_WXRC],
|
||||
[
|
||||
AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler])
|
||||
|
||||
if test "x$WX_CONFIG_NAME" = x; then
|
||||
AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.])
|
||||
else
|
||||
|
||||
AC_MSG_CHECKING([for wxrc])
|
||||
|
||||
if test "x$WXRC" = x ; then
|
||||
dnl wx-config --utility is a new addition to wxWidgets:
|
||||
_WX_PRIVATE_CHECK_VERSION(2,5,3)
|
||||
if test -n "$wx_ver_ok"; then
|
||||
WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc`
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$WXRC" = x ; then
|
||||
AC_MSG_RESULT([not found])
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
AC_MSG_RESULT([$WXRC])
|
||||
ifelse([$1], , :, [$1])
|
||||
fi
|
||||
|
||||
AC_SUBST(WXRC)
|
||||
fi
|
||||
])
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#!/bin/sh
|
||||
autoreconf --force --install -I config -I m4 --verbose
|
||||
autoreconf --force --install -I config -I m4
|
||||
|
|
40
configure.ac
40
configure.ac
|
@ -59,7 +59,7 @@ AM_CONDITIONAL([WITH_LIBEVENT],[test "x$use_libevent" = "xyes"])
|
|||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl GTK+ detection for the GTK+ client
|
||||
dnl detection for the GTK+ client
|
||||
|
||||
AM_PATH_GTK_2_0($GTK_MINIMUM,[have_gtk=yes],[have_gtk=no][gthread])
|
||||
AC_ARG_WITH(gtk, AC_HELP_STRING([--with-gtk], [Build gtk client]),
|
||||
|
@ -78,6 +78,27 @@ fi
|
|||
AM_CONDITIONAL([WITH_GTK],[test "x$use_gtk" = "xyes"])
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl wxWidgets detection for the wxWidgets client
|
||||
|
||||
|
||||
AM_OPTIONS_WXCONFIG
|
||||
AM_PATH_WXCONFIG($WX_MINIMUM,[have_wx=yes],[have_wx=no])
|
||||
AC_ARG_WITH(wx, AC_HELP_STRING([--with-wx], [Build wxWidgets client]),
|
||||
[want_wx=$withval],
|
||||
[want_wx=$have_wx])
|
||||
use_wx=no
|
||||
if test "x$want_wx" = "xyes" ; then
|
||||
if test "x$have_wx" = "xyes"; then
|
||||
use_wx=yes
|
||||
else
|
||||
AC_MSG_ERROR("wxWidgets not found!")
|
||||
fi
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_WX],[test "x$use_wx" = "xyes"])
|
||||
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
|
@ -201,7 +222,9 @@ AC_CONFIG_FILES([Makefile
|
|||
libtransmission/Makefile
|
||||
libtransmission/version.h
|
||||
macosx/Makefile
|
||||
macosx/Info.plist])
|
||||
macosx/Info.plist
|
||||
wx/Makefile
|
||||
wx/xpm/Makefile])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
|
@ -209,11 +232,12 @@ echo "
|
|||
|
||||
Configuration:
|
||||
|
||||
Source code location: ${srcdir}
|
||||
Compiler: ${CXX}
|
||||
Build BeOS client: ${beos}
|
||||
Build Daemon: ${use_libevent}
|
||||
Build GTK+ client: ${use_gtk}
|
||||
Build OS X client: ${darwin}
|
||||
Source code location: ${srcdir}
|
||||
Compiler: ${CXX}
|
||||
Build BeOS client: ${beos}
|
||||
Build Daemon: ${use_libevent}
|
||||
Build GTK+ client: ${use_gtk}
|
||||
Build OS X client: ${darwin}
|
||||
Build wxWidgets client: ${use_wx}
|
||||
|
||||
"
|
||||
|
|
8
wx/Makefile.am
Normal file
8
wx/Makefile.am
Normal file
|
@ -0,0 +1,8 @@
|
|||
AM_CPPFLAGS = -I@top_srcdir@ @WX_CPPFLAGS@
|
||||
AM_CXXFLAGS = @WX_CXXFLAGS@
|
||||
|
||||
bin_PROGRAMS = Xmission
|
||||
|
||||
Xmission_SOURCES = xmission.cc
|
||||
|
||||
Xmission_LDADD = ../libtransmission/libtransmission.a @WX_LIBS@ $(PTHREAD_LIBS) -lm
|
193
wx/xmission.cc
Executable file
193
wx/xmission.cc
Executable file
|
@ -0,0 +1,193 @@
|
|||
#include <iostream>
|
||||
#include <wx/aboutdlg.h>
|
||||
#include <wx/artprov.h>
|
||||
#include <wx/defs.h>
|
||||
#include <wx/config.h>
|
||||
#include <wx/toolbar.h>
|
||||
#include <wx/wx.h>
|
||||
extern "C" {
|
||||
#include <libtransmission/transmission.h>
|
||||
#include "xpm/transmission.xpm"
|
||||
#include "xpm/fileopen.xpm"
|
||||
#include "xpm/gtk-remove.xpm"
|
||||
#include "xpm/gtk-properties.xpm"
|
||||
#include "xpm/exec.xpm"
|
||||
#include "xpm/stop.xpm"
|
||||
}
|
||||
|
||||
class MyApp : public wxApp
|
||||
{
|
||||
virtual bool OnInit();
|
||||
};
|
||||
|
||||
IMPLEMENT_APP(MyApp)
|
||||
|
||||
tr_handle_t * handle = NULL;
|
||||
|
||||
class MyFrame : public wxFrame
|
||||
{
|
||||
public:
|
||||
MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
|
||||
virtual ~MyFrame();
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnAbout(wxCommandEvent& event);
|
||||
void OnOpen(wxCommandEvent& event);
|
||||
|
||||
protected:
|
||||
wxConfig * myConfig;
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
ID_START,
|
||||
ID_STOP,
|
||||
ID_REMOVE,
|
||||
ID_QUIT,
|
||||
ID_TORRENT_INFO,
|
||||
ID_EDIT_PREFS,
|
||||
ID_SHOW_DEBUG_WINDOW,
|
||||
ID_ABOUT,
|
||||
N_IDS
|
||||
};
|
||||
|
||||
void MyFrame :: OnOpen( wxCommandEvent& event )
|
||||
{
|
||||
const wxString key = _T("LastDirectory");
|
||||
wxString directory;
|
||||
myConfig->Read( key, &directory );
|
||||
wxFileDialog * w = new wxFileDialog( this, _T("message"),
|
||||
directory,
|
||||
_T(""), /* default file */
|
||||
_T("Torrent files|*.torrent"),
|
||||
wxOPEN|wxMULTIPLE );
|
||||
|
||||
if( w->ShowModal() == wxID_OK )
|
||||
{
|
||||
wxArrayString paths;
|
||||
w->GetPaths( paths );
|
||||
size_t nPaths = paths.GetCount();
|
||||
for( size_t i=0; i<nPaths; ++i )
|
||||
{
|
||||
const wxString& w = paths[i];
|
||||
std::cerr << w.ToAscii() << std::endl;
|
||||
}
|
||||
myConfig->Write( key, w->GetDirectory() );
|
||||
}
|
||||
|
||||
delete w;
|
||||
}
|
||||
|
||||
|
||||
bool MyApp::OnInit()
|
||||
{
|
||||
handle = tr_init( "wx" );
|
||||
|
||||
MyFrame * frame = new MyFrame( _T("Transmission"),
|
||||
wxPoint(50,50),
|
||||
wxSize(450,350));
|
||||
|
||||
frame->Connect( wxID_OPEN, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction) &MyFrame::OnOpen );
|
||||
frame->Connect( wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction) &MyFrame::OnQuit );
|
||||
frame->Connect( wxID_ABOUT, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction) &MyFrame::OnAbout );
|
||||
|
||||
frame->Show( true );
|
||||
SetTopWindow( frame );
|
||||
return true;
|
||||
}
|
||||
|
||||
/***
|
||||
****
|
||||
***/
|
||||
|
||||
MyFrame::~MyFrame()
|
||||
{
|
||||
delete myConfig;
|
||||
}
|
||||
|
||||
MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size):
|
||||
wxFrame((wxFrame*)NULL,-1,title,pos,size),
|
||||
myConfig( new wxConfig( _T("xmission") ) )
|
||||
{
|
||||
SetIcon( wxIcon( transmission_xpm ) );
|
||||
|
||||
/**
|
||||
*** Menu
|
||||
**/
|
||||
|
||||
wxMenuBar *menuBar = new wxMenuBar;
|
||||
|
||||
wxMenu * m = new wxMenu;
|
||||
m->Append( wxID_OPEN, _T("&Open") );
|
||||
m->Append( ID_START, _T("&Start") );
|
||||
m->Append( wxID_STOP, _T("Sto&p") ) ;
|
||||
m->Append( wxID_REFRESH, _T("Re&check") );
|
||||
m->Append( wxID_REMOVE, _T("&Remove") );
|
||||
m->AppendSeparator();
|
||||
m->Append( wxID_NEW, _T("Create &New Torrent") );
|
||||
m->AppendSeparator();
|
||||
m->Append( wxID_CLOSE, _T("&Close") );
|
||||
m->Append( wxID_EXIT, _T("&Exit") );
|
||||
menuBar->Append( m, _T("&File") );
|
||||
|
||||
m = new wxMenu;
|
||||
m->Append( ID_TORRENT_INFO, _T("Torrent &Info") );
|
||||
m->Append( wxID_PREFERENCES, _T("Edit &Preferences") );
|
||||
menuBar->Append( m, _T("&Edit") );
|
||||
|
||||
m = new wxMenu;
|
||||
m->Append( ID_SHOW_DEBUG_WINDOW, _T("Show &Debug Window") );
|
||||
m->AppendSeparator();
|
||||
m->Append( wxID_ABOUT, _T("&About Transmission") );
|
||||
menuBar->Append( m, _T("&Help") );
|
||||
|
||||
SetMenuBar(menuBar);
|
||||
|
||||
/**
|
||||
*** Toolbar
|
||||
**/
|
||||
|
||||
wxToolBar* toolbar = CreateToolBar( wxNO_BORDER | wxTB_HORIZONTAL | wxTB_FLAT | wxTB_TEXT );
|
||||
toolbar->SetToolBitmapSize( wxSize( 16, 16 ) );
|
||||
toolbar->AddTool( wxID_OPEN, _T("Open"), wxIcon( fileopen_xpm ) );
|
||||
//toolbar->AddTool( wxID_OPEN, _T("Open"), wxIcon( gtk_open_xpm ) );
|
||||
//toolbar->AddTool( ID_START, _T("Start"), wxIcon( gtk_execute_xpm ) );
|
||||
toolbar->AddTool( ID_START, _T("Start"), wxIcon( exec_xpm ) );
|
||||
toolbar->AddTool( wxID_STOP, _T("Stop"), wxIcon( stop_xpm ) );
|
||||
toolbar->AddTool( wxID_REMOVE, _T("Remove"), wxIcon( gtk_remove_xpm ) );
|
||||
toolbar->AddSeparator();
|
||||
toolbar->AddTool( ID_TORRENT_INFO, _("Torrent Info"), wxIcon( gtk_properties_xpm ) );
|
||||
toolbar->Realize();
|
||||
|
||||
/**
|
||||
*** Status Bar
|
||||
**/
|
||||
|
||||
CreateStatusBar();
|
||||
SetStatusText(_T("Welcome to Transmission!"));
|
||||
}
|
||||
|
||||
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
Close(TRUE);
|
||||
}
|
||||
|
||||
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
wxAboutDialogInfo info;
|
||||
info.SetName(_T("Transmission"));
|
||||
info.SetVersion(_T(LONG_VERSION_STRING));
|
||||
info.SetCopyright(_T("Copyright 2005-2007 The Transmission Project"));
|
||||
info.SetDescription(_T("A fast, lightweight bittorrent client"));
|
||||
info.SetWebSite( _T( "http://transmission.m0k.org/" ) );
|
||||
info.SetIcon( wxIcon( transmission_xpm ) );
|
||||
info.AddDeveloper( "Josh Elsasser (Back-end; GTK+)" );
|
||||
info.AddDeveloper ("Charles Kerr (Back-end, GTK+, wxWidgets)");
|
||||
info.AddDeveloper( "Mitchell Livingston (Back-end; OS X)" );
|
||||
info.AddDeveloper( "Eric Petit (Back-end; OS X)" );
|
||||
info.AddDeveloper( "Bryan Varner (BeOS)" );
|
||||
wxAboutBox( info );
|
||||
|
||||
//wxMessageBox(_T("Transmission " LONG_VERSION_STRING),
|
||||
// _T("About Transmission"),
|
||||
// wxOK|wxICON_INFORMATION, this);
|
||||
}
|
7
wx/xpm/Makefile.am
Normal file
7
wx/xpm/Makefile.am
Normal file
|
@ -0,0 +1,7 @@
|
|||
EXTRA_DIST = \
|
||||
exec.xpm \
|
||||
fileopen.xpm \
|
||||
gtk-properties.xpm \
|
||||
gtk-remove.xpm \
|
||||
stop.xpm \
|
||||
transmission.xpm
|
237
wx/xpm/exec.xpm
Normal file
237
wx/xpm/exec.xpm
Normal file
|
@ -0,0 +1,237 @@
|
|||
/* XPM */
|
||||
static char * exec_xpm[] = {
|
||||
"24 24 210 2",
|
||||
" c None",
|
||||
". c #0A0A0A",
|
||||
"+ c #1C1C1C",
|
||||
"@ c #090B0F",
|
||||
"# c #283143",
|
||||
"$ c #4E545F",
|
||||
"% c #898989",
|
||||
"& c #B2B2B2",
|
||||
"* c #AFAFAF",
|
||||
"= c #797979",
|
||||
"- c #0B0C0F",
|
||||
"; c #373F4F",
|
||||
"> c #5D6C8A",
|
||||
", c #758BB9",
|
||||
"' c #7B97D1",
|
||||
") c #6381BD",
|
||||
"! c #4F699E",
|
||||
"~ c #646A75",
|
||||
"{ c #5E5E5E",
|
||||
"] c #5B5B5B",
|
||||
"^ c #6F6F6F",
|
||||
"/ c #494B4D",
|
||||
"( c #090909",
|
||||
"_ c #2F2F2F",
|
||||
": c #5E687C",
|
||||
"< c #8FA4CF",
|
||||
"[ c #AAC5FA",
|
||||
"} c #97B2E9",
|
||||
"| c #728CC2",
|
||||
"1 c #4E6698",
|
||||
"2 c #364E7F",
|
||||
"3 c #294274",
|
||||
"4 c #28447B",
|
||||
"5 c #213865",
|
||||
"6 c #818181",
|
||||
"7 c #9F9F9F",
|
||||
"8 c #9A9A9A",
|
||||
"9 c #9C9C9C",
|
||||
"0 c #000000",
|
||||
"a c #262626",
|
||||
"b c #919191",
|
||||
"c c #BEBEBE",
|
||||
"d c #B4B4B4",
|
||||
"e c #8C8E91",
|
||||
"f c #6C7FA6",
|
||||
"g c #49608F",
|
||||
"h c #2F4779",
|
||||
"i c #29447B",
|
||||
"j c #2E4C8A",
|
||||
"k c #315192",
|
||||
"l c #335393",
|
||||
"m c #365596",
|
||||
"n c #2A4272",
|
||||
"o c #8A8A8A",
|
||||
"p c #333333",
|
||||
"q c #676767",
|
||||
"r c #AAAAAA",
|
||||
"s c #C4C4C4",
|
||||
"t c #EFEFEF",
|
||||
"u c #767676",
|
||||
"v c #626262",
|
||||
"w c #7E7E7E",
|
||||
"x c #182849",
|
||||
"y c #325293",
|
||||
"z c #345495",
|
||||
"A c #375797",
|
||||
"B c #3B5B9A",
|
||||
"C c #405F9E",
|
||||
"D c #4564A3",
|
||||
"E c #4C6BA9",
|
||||
"F c #3E5483",
|
||||
"G c #939393",
|
||||
"H c #666666",
|
||||
"I c #A1A1A1",
|
||||
"J c #A3A3A3",
|
||||
"K c #CDCDCD",
|
||||
"L c #858585",
|
||||
"M c #B0B0B0",
|
||||
"N c #BABABA",
|
||||
"O c #BFBFBF",
|
||||
"P c #1F2F4E",
|
||||
"Q c #4261A1",
|
||||
"R c #4867A6",
|
||||
"S c #4F6EAC",
|
||||
"T c #5775B2",
|
||||
"U c #607DBA",
|
||||
"V c #6987C2",
|
||||
"W c #7491CB",
|
||||
"X c #556890",
|
||||
"Y c #595959",
|
||||
"Z c #616161",
|
||||
"` c #6C6C6C",
|
||||
" . c #7C7C7C",
|
||||
".. c #B9B9B9",
|
||||
"+. c #6E6E6E",
|
||||
"@. c #454545",
|
||||
"#. c #959595",
|
||||
"$. c #2E3D5C",
|
||||
"%. c #6482BE",
|
||||
"&. c #6E8BC6",
|
||||
"*. c #7996D0",
|
||||
"=. c #718ABC",
|
||||
"-. c #546589",
|
||||
";. c #444F64",
|
||||
">. c #62656C",
|
||||
",. c #8F8F8F",
|
||||
"'. c #CFCFCF",
|
||||
"). c #FFFFFF",
|
||||
"!. c #E5E5E5",
|
||||
"~. c #A2A2A2",
|
||||
"{. c #606060",
|
||||
"]. c #AEAEAE",
|
||||
"^. c #888888",
|
||||
"/. c #EAEAEA",
|
||||
"(. c #323D52",
|
||||
"_. c #58698C",
|
||||
":. c #465166",
|
||||
"<. c #62666D",
|
||||
"[. c #FEFEFE",
|
||||
"}. c #4B4B4B",
|
||||
"|. c #848484",
|
||||
"1. c #646464",
|
||||
"2. c #6D6D6D",
|
||||
"3. c #FDFDFD",
|
||||
"4. c #FCFCFC",
|
||||
"5. c #FBFBFB",
|
||||
"6. c #FAFAFA",
|
||||
"7. c #E0E0E0",
|
||||
"8. c #323232",
|
||||
"9. c #C8C8C8",
|
||||
"0. c #757575",
|
||||
"a. c #CECECE",
|
||||
"b. c #DDDDDD",
|
||||
"c. c #F9F9F9",
|
||||
"d. c #F8F8F8",
|
||||
"e. c #F7F7F7",
|
||||
"f. c #F6F6F6",
|
||||
"g. c #F5F5F5",
|
||||
"h. c #F4F4F4",
|
||||
"i. c #DBDBDB",
|
||||
"j. c #313131",
|
||||
"k. c #C6C6C6",
|
||||
"l. c #C7C7C7",
|
||||
"m. c #D9D9D9",
|
||||
"n. c #0F0F0F",
|
||||
"o. c #2E2E2E",
|
||||
"p. c #F3F3F3",
|
||||
"q. c #F2F2F2",
|
||||
"r. c #F1F1F1",
|
||||
"s. c #F0F0F0",
|
||||
"t. c #EEEEEE",
|
||||
"u. c #EDEDED",
|
||||
"v. c #D5D5D5",
|
||||
"w. c #303030",
|
||||
"x. c #C1C1C1",
|
||||
"y. c #C3C3C3",
|
||||
"z. c #DFDFDF",
|
||||
"A. c #ECECEC",
|
||||
"B. c #EBEBEB",
|
||||
"C. c #E9E9E9",
|
||||
"D. c #E8E8E8",
|
||||
"E. c #E7E7E7",
|
||||
"F. c #E6E6E6",
|
||||
"G. c #B8B8B8",
|
||||
"H. c #BCBCBC",
|
||||
"I. c #DCDCDC",
|
||||
"J. c #0E0E0E",
|
||||
"K. c #565656",
|
||||
"L. c #BDBDBD",
|
||||
"M. c #2B2B2B",
|
||||
"N. c #555555",
|
||||
"O. c #E4E4E4",
|
||||
"P. c #E3E3E3",
|
||||
"Q. c #E2E2E2",
|
||||
"R. c #E1E1E1",
|
||||
"S. c #969696",
|
||||
"T. c #2C2C2C",
|
||||
"U. c #B1B1B1",
|
||||
"V. c #B7B7B7",
|
||||
"W. c #9B9B9B",
|
||||
"X. c #C5C5C5",
|
||||
"Y. c #999999",
|
||||
"Z. c #D1D1D1",
|
||||
"`. c #DEDEDE",
|
||||
" + c #DADADA",
|
||||
".+ c #A5A5A5",
|
||||
"++ c #181818",
|
||||
"@+ c #2A2A2A",
|
||||
"#+ c #A9A9A9",
|
||||
"$+ c #D8D8D8",
|
||||
"%+ c #D7D7D7",
|
||||
"&+ c #D6D6D6",
|
||||
"*+ c #CACACA",
|
||||
"=+ c #B5B5B5",
|
||||
"-+ c #878787",
|
||||
";+ c #525252",
|
||||
">+ c #272727",
|
||||
",+ c #080808",
|
||||
"'+ c #838383",
|
||||
")+ c #ABABAB",
|
||||
"!+ c #D4D4D4",
|
||||
"~+ c #D3D3D3",
|
||||
"{+ c #D2D2D2",
|
||||
"]+ c #505050",
|
||||
"^+ c #1D1D1D",
|
||||
"/+ c #8C8C8C",
|
||||
"(+ c #7D7D7D",
|
||||
"_+ c #4A4A4A",
|
||||
":+ c #353535",
|
||||
"<+ c #1E1E1E",
|
||||
" ",
|
||||
" ",
|
||||
" . + ",
|
||||
" @ # $ % & * = . ",
|
||||
" - ; > , ' ) ! ~ { ] ^ / ",
|
||||
" ( _ : < [ } | 1 2 3 4 5 6 7 8 9 0 ",
|
||||
" a b c d e f g h i j k l m n o p q r 0 ",
|
||||
" 0 s t u v w x y z A B C D E F G H I J 0 ",
|
||||
" + K L M N O P Q R S T U V W X Y Z ` .0 ",
|
||||
" a ..v +.@.#.$.%.&.*.=.-.;.>.,.'.).).!.0 ",
|
||||
" a ~.{.].^./.(._.:.<.,.'.).).).).).[.!.0 ",
|
||||
" _ ~.}.|.1.2.,.'.[.[.[.[.3.3.4.5.5.6.7.0 ",
|
||||
" 8.9.0.a.b.4.4.5.6.6.c.d.e.e.f.g.h.h.i.0 ",
|
||||
" j.k.l.m.n.o.8 g.h.p.q.q.r.s.t t t.u.v.0 ",
|
||||
" w.O x.r.y.0 Y t.z.x.A.B./.C.D.D.E.F.a.0 ",
|
||||
" o.G.H.I.J.K.L.M.0 N.!.O.P.Q.Q.R.7.z.S.0 ",
|
||||
" T.U.V.P.W.Q.X.Y.Z.z.`.b.I.i. + +a..+++ ",
|
||||
" @+#+U.I.I.i. +m.$+%+%+&+*+=+-+;+>+,+ ",
|
||||
" 0 '+)+v.!+!+~+{+x.U.L ]+>+,+ ",
|
||||
" ^+/+a.c #+(+_+a ,+ ",
|
||||
" n.:+<+0 ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
209
wx/xpm/fileopen.xpm
Normal file
209
wx/xpm/fileopen.xpm
Normal file
|
@ -0,0 +1,209 @@
|
|||
/* XPM */
|
||||
static char * fileopen_xpm[] = {
|
||||
"24 24 182 2",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #1E1A12",
|
||||
"@ c #5C5038",
|
||||
"# c #9B865F",
|
||||
"$ c #AB956A",
|
||||
"% c #0E0D09",
|
||||
"& c #4C422F",
|
||||
"* c #897655",
|
||||
"= c #79684B",
|
||||
"- c #7B6441",
|
||||
"; c #8C8069",
|
||||
"> c #DABD86",
|
||||
", c #FADA9B",
|
||||
"' c #FCDB9D",
|
||||
") c #FDDC9E",
|
||||
"! c #FCDB9E",
|
||||
"~ c #9C8761",
|
||||
"{ c #1E1A13",
|
||||
"] c #C5AA7A",
|
||||
"^ c #F2D096",
|
||||
"/ c #F1CE94",
|
||||
"( c #EFCC93",
|
||||
"_ c #EECB92",
|
||||
": c #1D1912",
|
||||
"< c #FEEDCE",
|
||||
"[ c #FBDA9D",
|
||||
"} c #F9D89B",
|
||||
"| c #F7D69A",
|
||||
"1 c #F5D498",
|
||||
"2 c #F4D297",
|
||||
"3 c #ECC991",
|
||||
"4 c #EBC890",
|
||||
"5 c #E9C68F",
|
||||
"6 c #E8C58E",
|
||||
"7 c #544732",
|
||||
"8 c #1F1F1E",
|
||||
"9 c #5F5F5B",
|
||||
"0 c #FDF4E5",
|
||||
"a c #E0BE84",
|
||||
"b c #D6B578",
|
||||
"c c #CCAD6D",
|
||||
"d c #B69654",
|
||||
"e c #83775C",
|
||||
"f c #8F8E8A",
|
||||
"g c #CDC8BB",
|
||||
"h c #F9EBD0",
|
||||
"i c #F3DBB1",
|
||||
"j c #3C352A",
|
||||
"k c #CCC6BA",
|
||||
"l c #EDCB92",
|
||||
"m c #C0A15E",
|
||||
"n c #BD9F63",
|
||||
"o c #D2BE95",
|
||||
"p c #DCD0B6",
|
||||
"q c #FBF0D8",
|
||||
"r c #F7E3BF",
|
||||
"s c #F1D3A0",
|
||||
"t c #EDCA92",
|
||||
"u c #EAC78F",
|
||||
"v c #CBAC7C",
|
||||
"w c #BFBFBD",
|
||||
"x c #C3A461",
|
||||
"y c #BC9D5D",
|
||||
"z c #CBB483",
|
||||
"A c #D8C7A5",
|
||||
"B c #EFE3CB",
|
||||
"C c #FAEBCD",
|
||||
"D c #F6DFB4",
|
||||
"E c #F1CF95",
|
||||
"F c #E5C18B",
|
||||
"G c #E3BF8A",
|
||||
"H c #544733",
|
||||
"I c #8F8F8D",
|
||||
"J c #D0B072",
|
||||
"K c #C1A35F",
|
||||
"L c #BE9F5B",
|
||||
"M c #C5AD7C",
|
||||
"N c #E6D9C0",
|
||||
"O c #FCF1DA",
|
||||
"P c #F9E4BC",
|
||||
"Q c #F6D8A3",
|
||||
"R c #E9C68E",
|
||||
"S c #E6C28C",
|
||||
"T c #E3C08A",
|
||||
"U c #E2BE89",
|
||||
"V c #E1BD88",
|
||||
"W c #D3B17F",
|
||||
"X c #7F7F7D",
|
||||
"Y c #E7CA9E",
|
||||
"Z c #BD9F5B",
|
||||
"` c #C0A25E",
|
||||
" . c #BCA170",
|
||||
".. c #FCEED4",
|
||||
"+. c #F6D499",
|
||||
"@. c #F3D196",
|
||||
"#. c #F0CD94",
|
||||
"$. c #E7C48D",
|
||||
"%. c #E4C08B",
|
||||
"&. c #E2BE88",
|
||||
"*. c #E0BC87",
|
||||
"=. c #DFBB86",
|
||||
"-. c #8B7453",
|
||||
";. c #7F7F7C",
|
||||
">. c #E4CA9F",
|
||||
",. c #B1924E",
|
||||
"'. c #A78542",
|
||||
"). c #E8DEC9",
|
||||
"!. c #F1CE95",
|
||||
"~. c #E0BC86",
|
||||
"{. c #DEBA85",
|
||||
"]. c #DCB883",
|
||||
"^. c #DAB680",
|
||||
"/. c #433827",
|
||||
"(. c #D7BD90",
|
||||
"_. c #A48441",
|
||||
":. c #9C7C43",
|
||||
"<. c #F6E6C9",
|
||||
"[. c #DFBB85",
|
||||
"}. c #DDB984",
|
||||
"|. c #DBB781",
|
||||
"1. c #D8B47E",
|
||||
"2. c #D5B17A",
|
||||
"3. c #C4A26F",
|
||||
"4. c #3F3F3D",
|
||||
"5. c #D3B98B",
|
||||
"6. c #977634",
|
||||
"7. c #B19B77",
|
||||
"8. c #E9CB9E",
|
||||
"9. c #DEBA84",
|
||||
"0. c #DCB882",
|
||||
"a. c #D9B57F",
|
||||
"b. c #D6B27C",
|
||||
"c. c #D2AE77",
|
||||
"d. c #CEAA73",
|
||||
"e. c #C9A56D",
|
||||
"f. c #CEB486",
|
||||
"g. c #7F5C1F",
|
||||
"h. c #E1D7C3",
|
||||
"i. c #E1BD87",
|
||||
"j. c #D7B37D",
|
||||
"k. c #D3AF79",
|
||||
"l. c #CFAB74",
|
||||
"m. c #CAA66F",
|
||||
"n. c #C5A168",
|
||||
"o. c #BE9A61",
|
||||
"p. c #B79359",
|
||||
"q. c #2D2416",
|
||||
"r. c #CAB081",
|
||||
"s. c #80602D",
|
||||
"t. c #F3E4CB",
|
||||
"u. c #D1AD76",
|
||||
"v. c #CCA871",
|
||||
"w. c #C6A26B",
|
||||
"x. c #C09C64",
|
||||
"y. c #B9955C",
|
||||
"z. c #927546",
|
||||
"A. c #624E2D",
|
||||
"B. c #B99F6E",
|
||||
"C. c #98815F",
|
||||
"D. c #E8D1AC",
|
||||
"E. c #D6B27B",
|
||||
"F. c #CDA972",
|
||||
"G. c #C8A46D",
|
||||
"H. c #C29E66",
|
||||
"I. c #A58654",
|
||||
"J. c #685333",
|
||||
"K. c #382D1B",
|
||||
"L. c #0B0805",
|
||||
"M. c #5F5E5B",
|
||||
"N. c #9C8051",
|
||||
"O. c #D4C9B7",
|
||||
"P. c #D6B480",
|
||||
"Q. c #CAA66E",
|
||||
"R. c #B99762",
|
||||
"S. c #79623F",
|
||||
"T. c #473924",
|
||||
"U. c #3F3F3C",
|
||||
"V. c #D5CBB7",
|
||||
"W. c #E7D6B8",
|
||||
"X. c #967B51",
|
||||
"Y. c #56462E",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . + @ # $ % . % & * = . ",
|
||||
" - ; > , ' ) ! ~ { & * ] ^ / ( _ : ",
|
||||
" . < ! [ } | 1 2 ^ / ( _ 3 4 5 6 7 . - 8 9 - ",
|
||||
" - 0 1 2 ^ / ( _ 3 4 5 6 a b c d e f g h i j ",
|
||||
" - k ( l 3 4 5 6 a b c m n o p q r s t u v - ",
|
||||
" - w 5 6 a b c x y z A B C D E _ 4 6 F G H ",
|
||||
" I F J K L M N O P Q ^ ( 3 R S T U V W - ",
|
||||
" X Y Z ` ...+.@.#.t u $.%.U &.V *.=.-. ",
|
||||
" ;.>.,.'.).!._ 4 6 F G U V V ~.{.].^./. ",
|
||||
" ;.(._.:.<.R S T U V V *.[.}.|.1.2.3.- ",
|
||||
" 4.5.6.7.8.U V V *.=.9.0.a.b.c.d.e.- ",
|
||||
" 4.f.g.h.V i.~.{.].^.j.k.l.m.n.o.p.q. ",
|
||||
" 4.r.s.t.[.}.|.1.2.u.v.w.x.y.z.A.- ",
|
||||
" 4.B.C.D.a.E.c.F.G.H.I.J.K.L. ",
|
||||
" M.N.O.P.l.Q.R.S.T.- ",
|
||||
" U.V.W.X.Y.- . ",
|
||||
" . U.- . ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
82
wx/xpm/gtk-properties.xpm
Normal file
82
wx/xpm/gtk-properties.xpm
Normal file
|
@ -0,0 +1,82 @@
|
|||
/* XPM */
|
||||
static char * gtk_properties_xpm[] = {
|
||||
"24 24 55 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #5D5D5D",
|
||||
"@ c #B4B4B4",
|
||||
"# c #BABABA",
|
||||
"$ c #161616",
|
||||
"% c #747474",
|
||||
"& c #B3B3B3",
|
||||
"* c #A7A7A7",
|
||||
"= c #222222",
|
||||
"- c #181818",
|
||||
"; c #B2B2B2",
|
||||
"> c #505050",
|
||||
", c #0E0E0E",
|
||||
"' c #353535",
|
||||
") c #BDBDBD",
|
||||
"! c #B9B9B9",
|
||||
"~ c #787878",
|
||||
"{ c #0F0F0F",
|
||||
"] c #646464",
|
||||
"^ c #C5C5C5",
|
||||
"/ c #C1C1C1",
|
||||
"( c #7C7C7C",
|
||||
"_ c #454545",
|
||||
": c #E5E5E5",
|
||||
"< c #565656",
|
||||
"[ c #D1D1D1",
|
||||
"} c #AFAFAF",
|
||||
"| c #BFBFBF",
|
||||
"1 c #CFCFCF",
|
||||
"2 c #D7D7D7",
|
||||
"3 c #DFDFDF",
|
||||
"4 c #8F8F8F",
|
||||
"5 c #A9A9A9",
|
||||
"6 c #B0B0B0",
|
||||
"7 c #C8C8C8",
|
||||
"8 c #DEDEDE",
|
||||
"9 c #E4E4E4",
|
||||
"0 c #BBBBBB",
|
||||
"a c #E3E3E3",
|
||||
"b c #6E6E6E",
|
||||
"c c #727272",
|
||||
"d c #393939",
|
||||
"e c #535353",
|
||||
"f c #242424",
|
||||
"g c #C2C2C2",
|
||||
"h c #AEAEAE",
|
||||
"i c #A8A8A8",
|
||||
"j c #B8B8B8",
|
||||
"k c #DDDDDD",
|
||||
"l c #7D7D7D",
|
||||
"m c #6F6F6F",
|
||||
"n c #383838",
|
||||
"o c #E0E0E0",
|
||||
"p c #474747",
|
||||
" ",
|
||||
" .... ",
|
||||
" .+@#$ ",
|
||||
" .%&*= ",
|
||||
" -#;>. ,. ",
|
||||
" ')!~. {!. ",
|
||||
" .]^/!(_#:. ",
|
||||
" .<[}|123:4. ",
|
||||
" .<[567289#{ ",
|
||||
" .<[560abcd. ",
|
||||
" .<[560ae. ",
|
||||
" .<[560ae. ",
|
||||
" .<[560ae. ",
|
||||
" .<[560ae. ",
|
||||
" .f'][560ae. ",
|
||||
" .%##gh60ae. ",
|
||||
" +&;!/)7ae. ",
|
||||
" .i*>~j1kl. ",
|
||||
" .#= .m28c ",
|
||||
" .$ no9p ",
|
||||
" {#:#. ",
|
||||
" ,!:4{ ",
|
||||
" .... ",
|
||||
" "};
|
48
wx/xpm/gtk-remove.xpm
Normal file
48
wx/xpm/gtk-remove.xpm
Normal file
|
@ -0,0 +1,48 @@
|
|||
/* XPM */
|
||||
static char * gtk_remove_xpm[] = {
|
||||
"24 24 21 1",
|
||||
" c None",
|
||||
". c #141414",
|
||||
"+ c #4E3329",
|
||||
"@ c #FF8E66",
|
||||
"# c #FF8761",
|
||||
"$ c #FF805C",
|
||||
"% c #FF7856",
|
||||
"& c #FF6F50",
|
||||
"* c #FF664A",
|
||||
"= c #FF5D43",
|
||||
"- c #FF543D",
|
||||
"; c #FF4B36",
|
||||
"> c #FF412F",
|
||||
", c #FF3727",
|
||||
"' c #FF2D20",
|
||||
") c #4E3228",
|
||||
"! c #FF2219",
|
||||
"~ c #4E3027",
|
||||
"{ c #FF1711",
|
||||
"] c #4E2E25",
|
||||
"^ c #FF0D09",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" .............. ",
|
||||
" +@#$%&*=-;>,'. ",
|
||||
" )#$%&*=-;>,'!. ",
|
||||
" ~$%&*=-;>,'!{. ",
|
||||
" ]%&*=-;>,'!{^. ",
|
||||
" .............. ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
167
wx/xpm/stop.xpm
Normal file
167
wx/xpm/stop.xpm
Normal file
|
@ -0,0 +1,167 @@
|
|||
/* XPM */
|
||||
static char * stop_xpm[] = {
|
||||
"24 24 140 2",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #972827",
|
||||
"@ c #F23F3E",
|
||||
"# c #EC3C3A",
|
||||
"$ c #E33635",
|
||||
"% c #DB312F",
|
||||
"& c #D32C2A",
|
||||
"* c #CB2725",
|
||||
"= c #C42320",
|
||||
"- c #B11C19",
|
||||
"; c #220404",
|
||||
"> c #E43433",
|
||||
", c #AA0803",
|
||||
"' c #A60500",
|
||||
") c #A70601",
|
||||
"! c #A10C08",
|
||||
"~ c #1F0302",
|
||||
"{ c #DD3533",
|
||||
"] c #910B07",
|
||||
"^ c #8C0704",
|
||||
"/ c #9F0501",
|
||||
"( c #940703",
|
||||
"_ c #8F0905",
|
||||
": c #980A06",
|
||||
"< c #A40D09",
|
||||
"[ c #DD3433",
|
||||
"} c #821B19",
|
||||
"| c #BA8C8B",
|
||||
"1 c #C29B9A",
|
||||
"2 c #8A3533",
|
||||
"3 c #920603",
|
||||
"4 c #860805",
|
||||
"5 c #9A5251",
|
||||
"6 c #CAA9A8",
|
||||
"7 c #AA6F6E",
|
||||
"8 c #800B08",
|
||||
"9 c #AA110E",
|
||||
"0 c #972727",
|
||||
"a c #E23331",
|
||||
"b c #8A0B08",
|
||||
"c c #F6F6F6",
|
||||
"d c #F4F4F4",
|
||||
"e c #EAE3E3",
|
||||
"f c #930703",
|
||||
"g c #870805",
|
||||
"h c #A2615F",
|
||||
"i c #F5F5F5",
|
||||
"j c #F2F2F2",
|
||||
"k c #B01511",
|
||||
"l c #B11612",
|
||||
"m c #E13331",
|
||||
"n c #820805",
|
||||
"o c #D2B8B7",
|
||||
"p c #FEFEFE",
|
||||
"q c #B27E7D",
|
||||
"r c #B41815",
|
||||
"s c #CF201C",
|
||||
"t c #67100E",
|
||||
"u c #C61E1B",
|
||||
"v c #822725",
|
||||
"w c #C51E1B",
|
||||
"x c #D62421",
|
||||
"y c #6D1312",
|
||||
"z c #C11B18",
|
||||
"A c #AF1916",
|
||||
"B c #D82522",
|
||||
"C c #DD2926",
|
||||
"D c #701514",
|
||||
"E c #BD1815",
|
||||
"F c #A70501",
|
||||
"G c #870906",
|
||||
"H c #F8F8F8",
|
||||
"I c #FFFFFF",
|
||||
"J c #B01A17",
|
||||
"K c #D92623",
|
||||
"L c #DF2A27",
|
||||
"M c #E52E2B",
|
||||
"N c #741817",
|
||||
"O c #B81612",
|
||||
"P c #A80601",
|
||||
"Q c #AB0803",
|
||||
"R c #880906",
|
||||
"S c #FAFAFA",
|
||||
"T c #B31C19",
|
||||
"U c #E02B28",
|
||||
"V c #E62F2C",
|
||||
"W c #EC3230",
|
||||
"X c #781A19",
|
||||
"Y c #B4130F",
|
||||
"Z c #AC0804",
|
||||
"` c #890A07",
|
||||
" . c #BB211F",
|
||||
".. c #ED3331",
|
||||
"+. c #F23634",
|
||||
"@. c #791B1A",
|
||||
"#. c #B2120E",
|
||||
"$. c #AD0904",
|
||||
"%. c #990A07",
|
||||
"&. c #E2312F",
|
||||
"*. c #F33735",
|
||||
"=. c #A60F0C",
|
||||
"-. c #B10C08",
|
||||
";. c #870B08",
|
||||
">. c #F9F9F9",
|
||||
",. c #D32B29",
|
||||
"'. c #6A1817",
|
||||
"). c #210201",
|
||||
"!. c #AB0F0B",
|
||||
"~. c #8D0D0A",
|
||||
"{. c #B41C1A",
|
||||
"]. c #9C1614",
|
||||
"^. c #972221",
|
||||
"/. c #230302",
|
||||
"(. c #AB1310",
|
||||
"_. c #801917",
|
||||
":. c #B51D1B",
|
||||
"<. c #E22C29",
|
||||
"[. c #E72F2D",
|
||||
"}. c #A11917",
|
||||
"|. c #8B1210",
|
||||
"1. c #250504",
|
||||
"2. c #B51A17",
|
||||
"3. c #A31614",
|
||||
"4. c #A61816",
|
||||
"5. c #D12523",
|
||||
"6. c #E32D2A",
|
||||
"7. c #E9302E",
|
||||
"8. c #EF3432",
|
||||
"9. c #CB2826",
|
||||
"0. c #B3201E",
|
||||
"a. c #C32624",
|
||||
"b. c #8F1F1E",
|
||||
"c. c #270606",
|
||||
"d. c #CC2421",
|
||||
"e. c #EB312F",
|
||||
"f. c #F03533",
|
||||
"g. c #2A0807",
|
||||
"h. c #721715",
|
||||
"i. c #751917",
|
||||
" ",
|
||||
" ",
|
||||
" . . . . . . . . . ",
|
||||
" . + @ # $ % & * = - ; ",
|
||||
" . + > , ' ' ' ' ' ' ) ! ~ ",
|
||||
" . + { ] ^ / ' ' ' ' ( _ : < ~ ",
|
||||
" . + [ } | 1 2 3 ' ' 4 5 6 7 8 9 ~ ",
|
||||
" . 0 a b 6 c d e 2 f g h d i j h k l ~ ",
|
||||
" . m , n o c p d e 2 h d p c j q r s t . ",
|
||||
" . u ' 3 5 j c p d e d p c j e v w x y . ",
|
||||
" . z ' ' 4 h j c p c p c j e 2 A B C D . ",
|
||||
" . E ' ' F G h j H I H j e 2 J K L M N . ",
|
||||
" . O ' P Q R h d p S p d e 2 T U V W X . ",
|
||||
" . Y P Z ` h d p c j c p d e 2 ...+.@.. ",
|
||||
" . #.$.%.5 d p c j e j c p d e v &.*.@.. ",
|
||||
" . =.-.;.o >.c j e 2 h j c c j q ,.*.'.. ",
|
||||
" ).!.~.6 j j e 2 {.].h j j j h ,.^.. ",
|
||||
" /.(._.| 1 2 :.<.[.}.5 6 7 |.^.. ",
|
||||
" 1.2.3.4.5.6.7.8.+.9.0.a.b.. ",
|
||||
" c.d.L M e.f.+.*.*.*.^.. ",
|
||||
" g.h.i.X @.@.@.@.'.. ",
|
||||
" . . . . . . . . ",
|
||||
" ",
|
||||
" "};
|
1323
wx/xpm/transmission.xpm
Normal file
1323
wx/xpm/transmission.xpm
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue