Mailinglist Archive: opensuse-commit (689 mails)

< Previous Next >
commit yast2-core
  • From: root@xxxxxxxxxxxxxxx (h_root)
  • Date: Tue, 18 Dec 2007 18:20:43 +0100
  • Message-id: <20071218172044.46495678337@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package yast2-core
checked in at Tue Dec 18 18:20:43 CET 2007.

--------
--- yast2-core/yast2-core.changes 2007-12-10 18:44:24.000000000 +0100
+++ /mounts/work_src_done/STABLE/yast2-core/yast2-core.changes 2007-12-18
17:15:45.228989000 +0100
@@ -1,0 +2,18 @@
+Tue Dec 18 17:14:00 CET 2007 - coolo@xxxxxxx
+
+- adding another optional widget: timezone selector
+- V 2.16.16
+
+-------------------------------------------------------------------
+Tue Dec 11 18:39:03 CET 2007 - sh@xxxxxxx
+
+- Fixed bug #347634: Cannot pass empty string to editable ComboBox
+
+-------------------------------------------------------------------
+Tue Dec 11 18:22:22 CET 2007 - sh@xxxxxxx
+
+- Fixed byproduct of fix for bug #346158 and bug #346165:
+ All YSimpleEvents returned strings now, even predefined IDs
+ `cancel, `timeout, `debugConsole; now returning correct IDs again
+
+-------------------------------------------------------------------

Old:
----
yast2-core-2.16.15.tar.bz2

New:
----
yast2-core-2.16.16.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ yast2-core.spec ++++++
--- /var/tmp/diff_new_pack.O17139/_old 2007-12-18 18:19:52.000000000 +0100
+++ /var/tmp/diff_new_pack.O17139/_new 2007-12-18 18:19:52.000000000 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-core (Version 2.16.15)
+# spec file for package yast2-core (Version 2.16.16)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,12 +11,12 @@
# norootforbuild

Name: yast2-core
-Version: 2.16.15
+Version: 2.16.16
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-core-2.16.15.tar.bz2
+Source0: yast2-core-2.16.16.tar.bz2
Prefix: /usr
# obviously
BuildRequires: gcc-c++
@@ -86,7 +86,7 @@
Stanislav Visnovsky <visnov@xxxxxxx>

%prep
-%setup -n yast2-core-2.16.15
+%setup -n yast2-core-2.16.16

%build
%{prefix}/bin/y2tool y2autoconf
@@ -163,6 +163,15 @@
%doc %{prefix}/share/doc/packages/yast2-core
/usr/share/YaST2/data/devtools/bin/generateYCPWrappers
%changelog
+* Tue Dec 18 2007 - coolo@xxxxxxx
+- adding another optional widget: timezone selector
+- V 2.16.16
+* Tue Dec 11 2007 - sh@xxxxxxx
+- Fixed bug #347634: Cannot pass empty string to editable ComboBox
+* Tue Dec 11 2007 - sh@xxxxxxx
+- Fixed byproduct of fix for bug #346158 and bug #346165:
+ All YSimpleEvents returned strings now, even predefined IDs
+ `cancel, `timeout, `debugConsole; now returning correct IDs again
* Mon Dec 10 2007 - sh@xxxxxxx
- Moved file and directory dialogs from YUI to YApplication:
- askForExistingDirectory(),

++++++ yast2-core-2.16.15.tar.bz2 -> yast2-core-2.16.16.tar.bz2 ++++++
++++ 46611 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/configure.in new/yast2-core-2.16.16/configure.in
--- old/yast2-core-2.16.15/configure.in 2007-11-22 16:31:18.000000000 +0100
+++ new/yast2-core-2.16.16/configure.in 2007-11-23 11:06:45.000000000 +0100
@@ -116,14 +116,6 @@
fi


-# libycp/testsuite: links against efence
-yast_found_efence=no
-AC_CHECK_LIB(efence,EF_Print,[yast_found_efence=yes])
-if [[ "$yast_found_efence" = "no" ]]; then
- AC_MSG_ERROR(efence lib is missing. Please install the package ElectricFence.)
-fi
-
-
Y2UTIL_CFLAGS='-I$(top_srcdir)/liby2util-r/src/include'
Y2UTIL_LIBS='$(top_builddir)/liby2util-r/src/liby2util.la'
AC_SUBST(Y2UTIL_CFLAGS)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/ComboBox-set-empty.ycp
new/yast2-core-2.16.16/libyui/doc/examples/ComboBox-set-empty.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/ComboBox-set-empty.ycp
1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/ComboBox-set-empty.ycp
2007-12-12 10:30:17.000000000 +0100
@@ -0,0 +1,48 @@
+// Create a combo box with three entries.
+// All entries have IDs to identify them independent of locale
+// (The texts might have to be translated!).
+// Entry "Funghi" will be selected by default.
+{
+ UI::OpenDialog(
+ `VBox(
+ `ComboBox(`id(`pizza), `opt(`editable),
+ "Select your Pizza:",
+ [
+ `item(`id(`nap), "Napoli" ),
+ `item(`id(`fun), "Funghi", true ),
+ `item(`id(`sal), "Salami" )
+ ] ),
+ `HBox(
+ `PushButton(`id(`empty), "&Empty"),
+ `PushButton(`id(42), "42"),
+ `PushButton(`id(`ok),"&OK")
+ )
+ )
+ );
+
+ any button = nil;
+
+ repeat
+ {
+ y2debug( "Waiting" );
+ button = UI::UserInput();
+ y2debug( "button: %1", button );
+
+ if ( button == 42 )
+ UI::ChangeWidget(`pizza, `Value, 42 );
+
+ if ( button == `empty )
+ UI::ChangeWidget(`pizza, `Value, "" );
+ } until ( button == `ok );
+
+
+ // Get the input from the selection box.
+ //
+ // Notice: The return value of UI::UserInput() does NOT return this value!
+ // Rather, it returns the ID of the widget (normally the PushButton)
+ // that caused UI::UserInput() to return.
+ any pizza=UI::QueryWidget(`id(`pizza), `Value);
+ y2milestone( "Selected %1", pizza );
+
+ UI::CloseDialog();
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/HelloWorld.ycp
new/yast2-core-2.16.16/libyui/doc/examples/HelloWorld.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/HelloWorld.ycp 2007-11-27
15:07:30.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/HelloWorld.ycp 2007-12-18
17:12:24.000000000 +0100
@@ -1,10 +1,10 @@
{
UI::OpenDialog(
- `VBox(
- `Label("Hello, World!"),
- `PushButton(`opt(`default), "&OK")
- )
- );
+ `VBox(
+ `Label("Hello, World!"),
+ `PushButton(`opt(`default), "&OK")
+ )
+ );
UI::UserInput();
UI::CloseDialog();
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/PushButton1.ycp
new/yast2-core-2.16.16/libyui/doc/examples/PushButton1.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/PushButton1.ycp 2007-11-27
15:07:30.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/PushButton1.ycp 2007-12-18
17:12:24.000000000 +0100
@@ -4,8 +4,8 @@
// then close the dialog and terminate.

UI::OpenDialog(
- `PushButton( "&OK" )
- );
+ `PushButton( "&OK" )
+ );

UI::UserInput();
UI::CloseDialog();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/PushButton2.ycp
new/yast2-core-2.16.16/libyui/doc/examples/PushButton2.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/PushButton2.ycp 2007-11-27
15:07:30.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/PushButton2.ycp 2007-12-18
17:12:24.000000000 +0100
@@ -4,12 +4,12 @@
// activate it.

UI::OpenDialog(
- `HBox(
- `PushButton( `id(`ok), "&OK" ),
- `PushButton( `id(`cancel), `opt(`default), "&Cancel" ),
- `PushButton( `id(`help), "&Help" )
- )
- );
+ `HBox(
+ `PushButton( `id(`ok), "&OK" ),
+ `PushButton( `id(`cancel), `opt(`default), "&Cancel" ),
+ `PushButton( `id(`help), "&Help" )
+ )
+ );

// Wait for user input. The value returned is the ID of the widget
// that makes UI::UserInput() terminate, i.e. the respective button ID.
@@ -27,11 +27,11 @@

// Pop up a new dialog to display what button was clicked.
UI::OpenDialog(
- `VBox(
- `Label( "You clicked button \"" + button_name + "\"."),
- `PushButton( `opt(`default), "&OK" )
- )
- );
+ `VBox(
+ `Label( "You clicked button \"" + button_name + "\"."),
+ `PushButton( `opt(`default), "&OK" )
+ )
+ );
UI::UserInput();
UI::CloseDialog();
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/radioButtonGroup.ycp
new/yast2-core-2.16.16/libyui/doc/examples/radioButtonGroup.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/radioButtonGroup.ycp
1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/radioButtonGroup.ycp
2007-12-03 10:52:18.000000000 +0100
@@ -0,0 +1,17 @@
+{
+ textdomain "bogus";
+
+ UI::OpenDialog(
+ `RadioButtonGroup(`id (`rbg),
+ `VBox(
+ `RadioButton (`id ("users"),
`opt(`notify), _("&Users")),
+ `RadioButton (`id ("groups"),
`opt(`notify), _("&Groups")),
+ `Right (`Label
(`id(`current_filter), _( "Filter" ) ))
+ )
+ )
+ );
+ UI::UserInput();
+ string val = (string)UI::QueryWidget (`id(`rbg), `Value);
+ y2internal ("val: %1", val);
+ UI::CloseDialog();
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/doc/examples/TimezoneSelector.ycp
new/yast2-core-2.16.16/libyui/doc/examples/TimezoneSelector.ycp
--- old/yast2-core-2.16.15/libyui/doc/examples/TimezoneSelector.ycp
1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/doc/examples/TimezoneSelector.ycp
2007-12-18 17:12:24.000000000 +0100
@@ -0,0 +1,108 @@
+{
+ import "Directory";
+
+ // Build a dialog with a "special" widget - one that may not be supported
+ // by all UIs.
+
+ map examples = $[
+ "Europe/Amsterdam" : "Netherlands",
+ "Europe/Athens" : "Greece",
+ "Europe/Berlin" : "Germany",
+ "Europe/Bratislava" : "Slovakia",
+ "Europe/Brussels" : "Belgium",
+ "Europe/Helsinki" : "Finland",
+ "Europe/Istanbul" : "Turkey",
+ // time zone
+ "Europe/Kaliningrad" : "Russia (Kaliningrad)",
+ "Europe/Kiev" : "Ukraine",
+ "Europe/Malta" : "Malta",
+ // time zone
+ "Europe/Minsk" : "Belarus",
+ "Europe/Monaco" : "Monaco",
+ // time zone
+ "Europe/Moscow" : "Russia (Moscow)",
+ "Europe/Oslo" : "Norway",
+ "Europe/Paris" : "France",
+ "Europe/Prague" : "Czech Republic",
+ "Europe/Riga" : "Latvia",
+ "Europe/Rome" : "Italy",
+ // time zone
+ "Europe/San_Marino" : "San Marino",
+ // time zone
+ "Europe/Samara" : "Russia (Samara)",
+ "Europe/Sarajevo" : "Bosnia & Herzegovina",
+ "US/Aleutian" : "Aleutian",
+ "US/Arizona" : "Arizona",
+ "US/Central" : "Central",
+ "US/East-Indiana" : "East Indiana",
+ "US/Hawaii" : "Hawaii",
+ "US/Indiana-Starke" : "Indiana Starke",
+ "US/Michigan" : "Michigan",
+ "US/Mountain" : "Mountain",
+ "US/Pacific" : "Pacific",
+ "US/Samoa" : "Samoa",
+ "US/Eastern" : "Eastern",
+ "Europe/London" : "United Kingdom",
+ "America/New_York" : "Eastern"
+
+ ];
+
+
+ // Ask the UI whether or not it supports this widget.
+
+ if ( UI::HasSpecialWidget(`TimezoneSelector) )
+ {
+ // Only create a dialog with this kind of widget if it is supported
+ UI::OpenDialog(
+ `VBox(
+ `TimezoneSelector(`id(`timezone), `opt(`notify),
Directory::themedir + "/current/worldmap/GLOBALeb10colshade.jpg", examples),
+ `PushButton(`id(`ok), `opt(`default), "&Close"),
+ `ComboBox(`id(`combozone), `opt(`notify),
+ "",
+ [
+ `item("Please select your timezone"),
+ `item(`id(`london), "Europe/London"
),
+ `item(`id(`prag), "Europe/Prague" ),
+ `item(`id(`ny), "America/New_York" )
+ ] )
+ )
+ );
+ }
+ else
+ {
+ // Always provide a fallback: Either try to create a simpler dialog
+ // without the special widget, or terminate with an error message.
+ UI::OpenDialog(
+ `VBox(
+ `Label("Timezone Selector not supported!"),
+ `PushButton(`opt(`default), "&Oops!")
+ )
+ );
+ }
+
+ while( true )
+ {
+ symbol button = (symbol)UI::UserInput();
+ if ( button == `ok || button == `cancel )
+ break;
+
+ if ( button == `combozone )
+ {
+ any zone=UI::QueryWidget(`id(`combozone), `Value);
+ if (zone == `london)
+ UI::ChangeWidget(`id(`timezone), `Value, "Europe/London" );
+ if (zone == `prag)
+ UI::ChangeWidget(`id(`timezone), `Value, "Europe/Prague" );
+ if (zone == `ny)
+ UI::ChangeWidget(`id(`timezone), `Value, "America/New_York" );
+ }
+
+ if ( button == `timezone )
+ {
+ string zone=(string)UI::QueryWidget(`id(`timezone), `Value);
+ UI::ChangeWidget(`id(`combozone), `Value, zone);
+ }
+ }
+
+ UI::CloseDialog();
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/Makefile.am
new/yast2-core-2.16.16/libyui/src/Makefile.am
--- old/yast2-core-2.16.15/libyui/src/Makefile.am 2007-11-29
15:41:30.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/Makefile.am 2007-12-18
17:12:25.000000000 +0100
@@ -87,6 +87,7 @@
YSquash.cc \
YTable.cc \
YTimeField.cc \
+ YTimezoneSelector.cc \
YTree.cc \
YWizard.cc \
\
@@ -187,6 +188,7 @@
YSquash.h \
YTable.h \
YTimeField.h \
+ YTimezoneSelector.h \
YTree.h \
YWizard.h \
\
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YCPDialogParser.cc
new/yast2-core-2.16.16/libyui/src/YCPDialogParser.cc
--- old/yast2-core-2.16.15/libyui/src/YCPDialogParser.cc 2007-12-06
16:32:59.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YCPDialogParser.cc 2007-12-18
17:12:25.000000000 +0100
@@ -79,6 +79,7 @@
#include "YTimeField.h"
#include "YTree.h"
#include "YWizard.h"
+#include "YTimezoneSelector.h"

using std::string;

@@ -280,6 +281,7 @@
else if ( s == YUISpecialWidget_Time ) w =
parseTimeField ( p, opt, term, ol, n );
else if ( s == YUISpecialWidget_TimeField ) w =
parseTimeField ( p, opt, term, ol, n );
else if ( s == YUISpecialWidget_Wizard ) w = parseWizard
( p, opt, term, ol, n );
+ else if ( s == YUISpecialWidget_TimezoneSelector ) w =
parseTimezoneSelector ( p, opt, term, ol, n );
else
{
YUI_THROW( YUIException( string( "Unknown widget type " ) + s.c_str() )
);
@@ -3259,6 +3261,51 @@
return wizard;
}

+/**
+ * @widgets TimezoneSelector
+ * @short Timezone selector map
+ * @class YTimezoneSelector
+ *
+ * @arg string pixmap path to a jpg or png of a world map -
with 0°0° being the
+ * middle of the picture
+ * @arg map timezones a map of timezones. The map should be
between e.g. Europe/London
+ * and the tooltip to be displayed ("United
Kingdom")
+ *
+ * @usage if ( HasSpecialWidget( `TimezoneSelector ) {...
+ * `TimezoneSelector( "world.jpg", timezones )
+ *
+ * @description
+ * An graphical timezone selector map
+ *
+ * @note This is a "special" widget, i.e. not all UIs necessarily support it.
Check
+ * for availability with <tt>HasSpecialWidget( `TimezoneSelector)</tt> before
using it.
+ **/
+YWidget *
+YCPDialogParser::parseTimezoneSelector( YWidget * parent, YWidgetOpt & opt,
+ const YCPTerm & term, const YCPList &
optList, int argnr )
+{
+
+ if ( term->size() - argnr != 2
+ || !term->value(argnr)->isString()
+ || !term->value(argnr+1)->isMap() )
+ {
+ y2error( "Invalid arguments for the TimezoneSelector widget: %s",
+ term->toString().c_str() );
+ return 0;
+ }
+
+ rejectAllOptions( term, optList );
+
+ string pixmap = term->value( argnr )->asString()->value();
+ map<string,string> zones;
+ YCPMap secondArg = term->value( argnr+1 )->asMap();
+ for ( YCPMapIterator it = secondArg.begin(); it != secondArg.end(); ++it )
+ zones[ it.key()->asString()->value() ] =
it.value()->asString()->value();
+
+ YTimezoneSelector * selector =
YUI::optionalWidgetFactory()->createTimezoneSelector( parent, pixmap, zones );
+
+ return selector;
+}



diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YCPDialogParser.h
new/yast2-core-2.16.16/libyui/src/YCPDialogParser.h
--- old/yast2-core-2.16.15/libyui/src/YCPDialogParser.h 2007-12-06
14:38:28.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YCPDialogParser.h 2007-12-18
17:12:25.000000000 +0100
@@ -265,6 +265,9 @@
static YWidget * parseSimplePatchSelector( YWidget *parent, YWidgetOpt &
opt, const YCPTerm & term,
const YCPList & optList, int
argnr );

+ static YWidget * parseTimezoneSelector ( YWidget *parent, YWidgetOpt &
opt, const YCPTerm & term,
+ const YCPList & optList, int argnr
);
+
/**
* Look for a widget id in a widget term. If it finds one, returns
* it and sets argnr to 1, otherwise it creates a new unique widget
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YCPPropertyHandler.cc
new/yast2-core-2.16.16/libyui/src/YCPPropertyHandler.cc
--- old/yast2-core-2.16.15/libyui/src/YCPPropertyHandler.cc 2007-12-03
12:44:15.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YCPPropertyHandler.cc 2007-12-12
10:30:17.000000000 +0100
@@ -387,7 +387,12 @@
{
if ( comboBox->editable() )
{
- if ( val->isString() || val->isInteger() )
+ if ( val->isString() )
+ {
+ comboBox->setValue( val->asString()->value() );
+ return true;
+ }
+ else if ( val->isInteger() )
{
comboBox->setValue( val->toString() );
return true;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YDialog.cc
new/yast2-core-2.16.16/libyui/src/YDialog.cc
--- old/yast2-core-2.16.15/libyui/src/YDialog.cc 2007-11-30
16:55:44.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YDialog.cc 2007-12-18
17:12:25.000000000 +0100
@@ -39,6 +39,7 @@
: dialogType( dialogType )
, colorMode( colorMode )
, shortcutCheckPostponed( false )
+ , defaultButton( 0 )
{}

YDialogType dialogType;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YEvent.h
new/yast2-core-2.16.16/libyui/src/YEvent.h
--- old/yast2-core-2.16.15/libyui/src/YEvent.h 2007-11-16 12:43:24.000000000
+0100
+++ new/yast2-core-2.16.16/libyui/src/YEvent.h 2007-12-12 10:30:17.000000000
+0100
@@ -38,7 +38,7 @@
class YEvent
{
public:
-
+
enum EventType
{
NoEvent = 0,
@@ -59,7 +59,7 @@
SelectionChanged,
ValueChanged
};
-
+

/**
* Constructor.
@@ -68,7 +68,7 @@

/**
* Virtual desctructor to force a polymorph object
- * so dynamic_cast can be used
+ * so dynamic_cast can be used
**/
virtual ~YEvent();

@@ -87,12 +87,12 @@
* Returns the character representation of an event type.
**/
static const char * toString( EventType eventType );
-
+
/**
* Returns the character representation of an event reason.
**/
static const char * toString( EventReason reason );
-
+
/**
* Constructs a YCP map to be returned upon UI::WaitForEvent().
**/
@@ -107,12 +107,12 @@
**/
virtual YCPValue userInput();

-
+
protected:

EventType _eventType;
unsigned long _serial;
-
+
static unsigned long _nextSerial;
static int _activeEvents;
};
@@ -122,12 +122,12 @@
class YWidgetEvent: public YEvent
{
public:
-
+
/**
* Constructor.
**/
YWidgetEvent( YWidget * widget = 0,
- EventReason reason = Activated,
+ EventReason reason = Activated,
EventType eventType = WidgetEvent );

/**
@@ -155,7 +155,7 @@
* Reimplemented from YEvent.
**/
virtual YCPValue userInput();
-
+
protected:

YWidget * _widget;
@@ -166,7 +166,7 @@
class YKeyEvent: public YEvent
{
public:
-
+
/**
* Constructor.
*
@@ -186,7 +186,7 @@
/**
* Returns the widget that currently has the keyboard focus.
*
- * This might as well be 0 if no widget has the focus or if the creator of
+ * This might as well be 0 if no widget has the focus or if the creator of
* this event could not obtain that information.
**/
YWidget * focusWidget() const { return _focusWidget; }
@@ -205,7 +205,7 @@
* Reimplemented from YEvent.
**/
virtual YCPValue userInput();
-
+
protected:

string _keySymbol;
@@ -219,7 +219,7 @@
class YSimpleEvent: public YEvent
{
public:
-
+
/**
* Constructors.
**/
@@ -247,7 +247,7 @@
**/
virtual YCPValue userInput();

-
+
protected:

YCPValue _id;
@@ -260,12 +260,12 @@
class YMenuEvent: public YSimpleEvent
{
public:
-
+
YMenuEvent( YItem * item )
: YSimpleEvent( MenuEvent, YCPVoid() ),
_item( item )
{}
-
+
YMenuEvent( const YCPValue & id ) : YSimpleEvent( MenuEvent, id ),
_item(0) {}
YMenuEvent( const char * id ) : YSimpleEvent( MenuEvent, id ),
_item(0) {}
YMenuEvent( const string & id ) : YSimpleEvent( MenuEvent, id
), _item(0) {}
@@ -290,8 +290,8 @@
class YCancelEvent: public YSimpleEvent
{
public:
-
- YCancelEvent() : YSimpleEvent( CancelEvent, "cancel" ) {}
+
+ YCancelEvent() : YSimpleEvent( CancelEvent, YCPSymbol( "cancel" ) ) {}
};


@@ -302,8 +302,8 @@
class YDebugEvent: public YSimpleEvent
{
public:
-
- YDebugEvent() : YSimpleEvent( DebugEvent, "debugHotkey" ) {}
+
+ YDebugEvent() : YSimpleEvent( DebugEvent, YCPSymbol( "debugHotkey" ) ) {}
};


@@ -314,8 +314,8 @@
class YTimeoutEvent: public YSimpleEvent
{
public:
-
- YTimeoutEvent() : YSimpleEvent( TimeoutEvent, "timeout" ) {}
+
+ YTimeoutEvent() : YSimpleEvent( TimeoutEvent, YCPSymbol( "timeout" ) ) {}
};


diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YOptionalWidgetFactory.cc
new/yast2-core-2.16.16/libyui/src/YOptionalWidgetFactory.cc
--- old/yast2-core-2.16.15/libyui/src/YOptionalWidgetFactory.cc 2007-11-23
17:26:20.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YOptionalWidgetFactory.cc 2007-12-18
17:12:25.000000000 +0100
@@ -228,3 +228,15 @@
return YUI::widgetFactory()->createOutputField( parent,
"YDummySpecialWidget" );
}

+bool YOptionalWidgetFactory::hasTimezoneSelector()
+{
+ return false;
+}
+
+YTimezoneSelector *
+YOptionalWidgetFactory::createTimezoneSelector( YWidget * parent,
+ const string & map,
+ const map<string, string>&
zones)
+{
+ THROW_UNSUPPORTED( "YTimezoneSelector" );
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YOptionalWidgetFactory.h
new/yast2-core-2.16.16/libyui/src/YOptionalWidgetFactory.h
--- old/yast2-core-2.16.15/libyui/src/YOptionalWidgetFactory.h 2007-11-23
17:25:09.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YOptionalWidgetFactory.h 2007-12-18
17:12:25.000000000 +0100
@@ -38,7 +38,7 @@
class YSlider;
class YTimeField;
class YWidget;
-
+class YTimezoneSelector;

/**
* Abstract widget factory for optional ("special") widgets.
@@ -115,7 +115,10 @@
bool hasDummySpecialWidget();
YWidget * createDummySpecialWidget( YWidget *
parent );

-
+ virtual bool hasTimezoneSelector();
+ virtual YTimezoneSelector * createTimezoneSelector( YWidget *
parent,
+ const string &
pixmap,
+ const
map<string,string> & timezones );

protected:

diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YPushButton.cc
new/yast2-core-2.16.16/libyui/src/YPushButton.cc
--- old/yast2-core-2.16.15/libyui/src/YPushButton.cc 2007-11-30
16:33:02.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YPushButton.cc 2007-12-18
17:12:25.000000000 +0100
@@ -32,16 +32,15 @@

struct YPushButtonPrivate
{
- string label;
- bool isDefaultButton;
-
- /**
- * Constructor.
- **/
YPushButtonPrivate( const string & label )
: label( label )
, isDefaultButton( false )
+ , setDefaultButtonRecursive( false )
{}
+
+ string label;
+ bool isDefaultButton;
+ bool setDefaultButtonRecursive;
};


@@ -85,9 +84,32 @@
}


-void YPushButton::setDefaultButton( bool def )
+void YPushButton::setDefaultButton( bool isDefaultButton )
{
- priv->isDefaultButton = def;
+ priv->isDefaultButton = isDefaultButton;
+
+ if ( ! priv->setDefaultButtonRecursive )
+ {
+ // Prevent endless recursion if dialog->setDefaultButton()
+ // calls this function again
+
+ priv->setDefaultButtonRecursive = true;
+
+ YDialog * dialog = findDialog();
+
+ if ( dialog )
+ {
+ if ( isDefaultButton )
+ dialog->setDefaultButton( this );
+ else
+ {
+ if ( dialog->defaultButton() == this )
+ dialog->setDefaultButton( 0 );
+ }
+ }
+
+ priv->setDefaultButtonRecursive = false;
+ }
}


diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YTimezoneSelector.cc
new/yast2-core-2.16.16/libyui/src/YTimezoneSelector.cc
--- old/yast2-core-2.16.15/libyui/src/YTimezoneSelector.cc 1970-01-01
01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YTimezoneSelector.cc 2007-12-18
17:12:25.000000000 +0100
@@ -0,0 +1,89 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ ____ _____ ____ |
+| \ \ / /_ _/ ___|_ _|___ \ |
+| \ V / _` \___ \ | | __) | |
+| | | (_| |___) || | / __/ |
+| |_|\__,_|____/ |_| |_____| |
+| |
+| core system |
+| (C) SuSE GmbH |
+\----------------------------------------------------------------------/
+
+ File: YTimezoneSelector.cc
+
+ Author: Stephan Kulow <coolo@xxxxxxx>
+
+/-*/
+
+
+#define y2log_component "ui"
+#include <ycp/y2log.h>
+
+#include "YUISymbols.h"
+#include "YTimezoneSelector.h"
+
+class YTimezoneSelectorPrivate
+{
+ bool dummy;
+};
+
+
+YTimezoneSelector::YTimezoneSelector( YWidget * parent,
+ const string &pixmap,
+ const map<string, string> &timezones )
+ : YWidget( parent )
+{
+}
+
+
+YTimezoneSelector::~YTimezoneSelector()
+{
+ // NOP
+}
+
+
+const YPropertySet &
+YTimezoneSelector::propertySet()
+{
+ static YPropertySet propSet;
+
+ if ( propSet.isEmpty() )
+ {
+ propSet.add( YProperty( YUIProperty_Value, YStringProperty ) );
+ propSet.add( YWidget::propertySet() );
+ }
+
+ return propSet;
+}
+
+
+bool
+YTimezoneSelector::setProperty( const string & propertyName, const
YPropertyValue & val )
+{
+ propertySet().check( propertyName, val.type() ); // throws exceptions if
not found or type mismatch
+
+ if ( propertyName == YUIProperty_Value )
+ {
+ setCurrentZone( val.stringVal() );
+ return true; // success -- no special handling necessary
+ }
+ else
+ {
+ return YWidget::setProperty( propertyName, val );
+ }
+}
+
+
+YPropertyValue
+YTimezoneSelector::getProperty( const string & propertyName )
+{
+ propertySet().check( propertyName ); // throws exceptions if not found
+
+ if ( propertyName == YUIProperty_Value ) return YPropertyValue(
currentZone() );
+ else
+ {
+ return YWidget::getProperty( propertyName );
+ }
+}
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YTimezoneSelector.h
new/yast2-core-2.16.16/libyui/src/YTimezoneSelector.h
--- old/yast2-core-2.16.15/libyui/src/YTimezoneSelector.h 1970-01-01
01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YTimezoneSelector.h 2007-12-18
17:12:25.000000000 +0100
@@ -0,0 +1,98 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ ____ _____ ____ |
+| \ \ / /_ _/ ___|_ _|___ \ |
+| \ V / _` \___ \ | | __) | |
+| | | (_| |___) || | / __/ |
+| |_|\__,_|____/ |_| |_____| |
+| |
+| core system |
+| (C) SuSE GmbH |
+\----------------------------------------------------------------------/
+
+ File: YTimezoneSelector.h
+
+ Author: Stephan Kulow <coolo@xxxxxxx>
+
+/-*/
+
+#ifndef YTimezoneSelector_h
+#define YTimezoneSelector_h
+
+#include "YWidget.h"
+
+class YTimezoneSelectorPrivate;
+
+class YTimezoneSelector : public YWidget
+{
+protected:
+ /**
+ * Constructor. This widget isn't doing much on it's own, but the
+ * UI may have some fancy use. @arg pixmap should be a png or jpg
+ * of a world map with centered 0°0° and the timezones are a map
+ * between zone.tab entry and user visible string.
+ *
+ * The widget is only displaying timezones/cities in that map
+ **/
+ YTimezoneSelector( YWidget *parent,
+ const string &pixmap,
+ const map<string, string> &timezones );
+
+public:
+ /**
+ * Destructor.
+ **/
+ virtual ~YTimezoneSelector();
+
+ /**
+ * Return a descriptive name of this widget class for logging,
+ * debugging etc.
+ **/
+ virtual const char * widgetClass() const { return "YTimezoneSelector"; }
+
+ /**
+ * Set a property.
+ * Reimplemented from YWidget.
+ *
+ * This function may throw YUIPropertyExceptions.
+ *
+ * This function returns 'true' if the value was successfully set and
+ * 'false' if that value requires special handling (not in error cases:
+ * those are covered by exceptions).
+ **/
+ virtual bool setProperty( const string & propertyName,
+ const YPropertyValue & val );
+
+ /**
+ * Get a property.
+ * Reimplemented from YWidget.
+ *
+ * This method may throw YUIPropertyExceptions.
+ **/
+ virtual YPropertyValue getProperty( const string & propertyName );
+
+ /**
+ * Return this class's property set.
+ * This also initializes the property upon the first call.
+ *
+ * Reimplemented from YWidget.
+ **/
+ virtual const YPropertySet & propertySet();
+
+ /**
+ * subclasses have to implement this to return value
+ */
+ virtual std::string currentZone() const = 0;
+
+ /**
+ * subclasses have to implement this to set value
+ */
+ virtual void setCurrentZone( const std::string &zone ) = 0;
+
+private:
+ ImplPtr<YTimezoneSelectorPrivate> priv;
+
+};
+
+
+#endif // YMultiProgressMeter_h
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YUI_builtins.cc
new/yast2-core-2.16.16/libyui/src/YUI_builtins.cc
--- old/yast2-core-2.16.15/libyui/src/YUI_builtins.cc 2007-12-10
16:58:13.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YUI_builtins.cc 2007-12-18
17:12:25.000000000 +0100
@@ -98,6 +98,7 @@
else if ( symbol == YUISpecialWidget_Wizard )
hasWidget = fact->hasWizard();
else if ( symbol == YUISpecialWidget_Date )
hasWidget = fact->hasDateField();
else if ( symbol == YUISpecialWidget_Time )
hasWidget = fact->hasTimeField();
+ else if ( symbol == YUISpecialWidget_TimezoneSelector )
hasWidget = fact->hasTimezoneSelector();
else
{
y2error( "HasSpecialWidget(): Unknown special widget: %s",
symbol.c_str() );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/libyui/src/YUISymbols.h
new/yast2-core-2.16.16/libyui/src/YUISymbols.h
--- old/yast2-core-2.16.15/libyui/src/YUISymbols.h 2007-11-29
15:37:52.000000000 +0100
+++ new/yast2-core-2.16.16/libyui/src/YUISymbols.h 2007-12-18
17:12:25.000000000 +0100
@@ -143,6 +143,7 @@
#define YUISpecialWidget_Time "Time"
#define YUISpecialWidget_TimeField "TimeField"
#define YUISpecialWidget_Wizard "Wizard"
+#define YUISpecialWidget_TimezoneSelector "TimezoneSelector"


// Widget properties
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/missing new/yast2-core-2.16.16/missing
--- old/yast2-core-2.16.15/missing 2007-11-22 16:31:36.000000000 +0100
+++ new/yast2-core-2.16.16/missing 2007-11-23 11:06:56.000000000 +0100
@@ -1,9 +1,9 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.

-scriptversion=2005-06-08.21
+scriptversion=2006-05-10.23

-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@xxxxxxxxxxxxxxxx>, 1996.

@@ -33,6 +33,8 @@
fi

run=:
+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'

# In the cases where this matters, `missing' is being run in the
# srcdir already.
@@ -44,7 +46,7 @@

msg="missing on your system"

-case "$1" in
+case $1 in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
@@ -77,6 +79,7 @@
aclocal touch file \`aclocal.m4'
autoconf touch file \`configure'
autoheader touch file \`config.h.in'
+ autom4te touch the output file, or create a stub one
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
@@ -106,7 +109,7 @@
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program).
-case "$1" in
+case $1 in
lex|yacc)
# Not GNU programs, they don't have --version.
;;
@@ -135,7 +138,7 @@

# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case "$1" in
+case $1 in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -164,7 +167,7 @@
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
- case "$f" in
+ case $f in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
@@ -192,8 +195,8 @@
You can get \`$1' as part of \`Autoconf' from any GNU
archive site."

- file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
- test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
@@ -214,25 +217,25 @@
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
- if [ ! -f y.tab.h ]; then
+ if test ! -f y.tab.h; then
echo >y.tab.h
fi
- if [ ! -f y.tab.c ]; then
+ if test ! -f y.tab.c; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
@@ -244,18 +247,18 @@
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
- if [ ! -f lex.yy.c ]; then
+ if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
@@ -267,11 +270,9 @@
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."

- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
- if test -z "$file"; then
- file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
- fi
- if [ -f "$file" ]; then
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+ if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
@@ -289,11 +290,17 @@
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then
# ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ file=`sed -n '
+ /^@setfilename/{
+ s/.* \([^ ]*\) *$/\1/
+ p
+ q
+ }' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi
@@ -317,13 +324,13 @@
fi
firstarg="$1"
if shift; then
- case "$firstarg" in
+ case $firstarg in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
- case "$firstarg" in
+ case $firstarg in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/VERSION new/yast2-core-2.16.16/VERSION
--- old/yast2-core-2.16.15/VERSION 2007-12-10 18:33:26.000000000 +0100
+++ new/yast2-core-2.16.16/VERSION 2007-12-18 17:12:55.000000000 +0100
@@ -1 +1 @@
-2.16.15
+2.16.16
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-core-2.16.15/ylwrap new/yast2-core-2.16.16/ylwrap
--- old/yast2-core-2.16.15/ylwrap 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-core-2.16.16/ylwrap 2007-11-23 11:07:02.000000000 +0100
@@ -0,0 +1,223 @@
+#! /bin/sh
+# ylwrap - wrapper for lex/yacc invocations.
+
+scriptversion=2005-05-14.22
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# Written by Tom Tromey <tromey@xxxxxxxxxx>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@xxxxxxx> or send patches to
+# <automake-patches@xxxxxxx>.
+
+case "$1" in
+ '')
+ echo "$0: No files given. Try \`$0 --help' for more information." 1>&2
+ exit 1
+ ;;
+ --basedir)
+ basedir=$2
+ shift 2
+ ;;
+ -h|--h*)
+ cat <<\EOF
+Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]...
+
+Wrapper for lex/yacc invocations, renaming files as desired.
+
+ INPUT is the input file
+ OUTPUT is one file PROG generates
+ DESIRED is the file we actually want instead of OUTPUT
+ PROGRAM is program to run
+ ARGS are passed to PROG
+
+Any number of OUTPUT,DESIRED pairs may be used.
+
+Report bugs to <bug-automake@xxxxxxx>.
+EOF
+ exit $?
+ ;;
+ -v|--v*)
+ echo "ylwrap $scriptversion"
+ exit $?
+ ;;
+esac
+
+
+# The input.
+input="$1"
+shift
+case "$input" in
+ [\\/]* | ?:[\\/]*)
+ # Absolute path; do nothing.
+ ;;
+ *)
+ # Relative path. Make it absolute.
+ input="`pwd`/$input"
+ ;;
+esac
+
+pairlist=
+while test "$#" -ne 0; do
+ if test "$1" = "--"; then
+ shift
+ break
+ fi
+ pairlist="$pairlist $1"
+ shift
+done
+
+# The program to run.
+prog="$1"
+shift
+# Make any relative path in $prog absolute.
+case "$prog" in
+ [\\/]* | ?:[\\/]*) ;;
+ *[\\/]*) prog="`pwd`/$prog" ;;
+esac
+
+# FIXME: add hostname here for parallel makes that run commands on
+# other machines. But that might take us over the 14-char limit.
+dirname=ylwrap$$
+trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15
+mkdir $dirname || exit 1
+
+cd $dirname
+
+case $# in
+ 0) $prog "$input" ;;
+ *) $prog "$@" "$input" ;;
+esac
+ret=$?
+
+if test $ret -eq 0; then
+ set X $pairlist
+ shift
+ first=yes
+ # Since DOS filename conventions don't allow two dots,
+ # the DOS version of Bison writes out y_tab.c instead of y.tab.c
+ # and y_tab.h instead of y.tab.h. Test to see if this is the case.
+ y_tab_nodot="no"
+ if test -f y_tab.c || test -f y_tab.h; then
+ y_tab_nodot="yes"
+ fi
+
+ # The directory holding the input.
+ input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'`
+ # Quote $INPUT_DIR so we can use it in a regexp.
+ # FIXME: really we should care about more than `.' and `\'.
+ input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'`
+
+ while test "$#" -ne 0; do
+ from="$1"
+ # Handle y_tab.c and y_tab.h output by DOS
+ if test $y_tab_nodot = "yes"; then
+ if test $from = "y.tab.c"; then
+ from="y_tab.c"
+ else
+ if test $from = "y.tab.h"; then
+ from="y_tab.h"
+ fi
+ fi
+ fi
+ if test -f "$from"; then
+ # If $2 is an absolute path name, then just use that,
+ # otherwise prepend `../'.
+ case "$2" in
+ [\\/]* | ?:[\\/]*) target="$2";;
+ *) target="../$2";;
+ esac
+
+ # We do not want to overwrite a header file if it hasn't
+ # changed. This avoid useless recompilations. However the
+ # parser itself (the first file) should always be updated,
+ # because it is the destination of the .y.c rule in the
+ # Makefile. Divert the output of all other files to a temporary
+ # file so we can compare them to existing versions.
+ if test $first = no; then
+ realtarget="$target"
+ target="tmp-`echo $target | sed s/.*[\\/]//g`"
+ fi
+ # Edit out `#line' or `#' directives.
+ #
+ # We don't want the resulting debug information to point at
+ # an absolute srcdir; it is better for it to just mention the
+ # .y file with no path.
+ #
+ # We want to use the real output file name, not yy.lex.c for
+ # instance.
+ #
+ # We want the include guards to be adjusted too.
+ FROM=`echo "$from" | sed \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
+ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
+ TARGET=`echo "$2" | sed \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
+ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
+
+ sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \
+ -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$?
+
+ # Check whether header files must be updated.
+ if test $first = no; then
+ if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
+ echo "$2" is unchanged
+ rm -f "$target"
+ else
+ echo updating "$2"
+ mv -f "$target" "$realtarget"
+ fi
+ fi
+ else
+ # A missing file is only an error for the first file. This
+ # is a blatant hack to let us support using "yacc -d". If -d
+ # is not specified, we don't want an error when the header
+ # file is "missing".
+ if test $first = yes; then
+ ret=1
+ fi
+ fi
+ shift
+ shift
+ first=no
+ done
+else
+ ret=$?
+fi
+
+# Remove the directory.
+cd ..
+rm -rf $dirname
+
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >