all repos — fluxbox @ bb013f5c75120df0f86a7a17cbae61bdca2618f4

custom fork of the fluxbox windowmanager

fix compiler warning about std::auto_ptr

fluxbox uses std::unique_ptr<> where it previously used std::auto_ptr<>.

C++0X was approved in 2011. among other things, it deprecates std::auto_ptr.
5 years is long enough for compilers to catch up the standard.
Mathias Gumz akira@fluxbox.org
commit

bb013f5c75120df0f86a7a17cbae61bdca2618f4

parent

1e235e3f01733e3282a76e6be8862206d1504bdf

M src/FbCommands.hhsrc/FbCommands.hh

@@ -127,7 +127,7 @@ private:

const int m_option; const ClientPattern m_pat; std::list<FluxboxWindow *> m_list; - std::auto_ptr<ClientMenu> m_menu; + std::unique_ptr<ClientMenu> m_menu; }; class ShowCustomMenuCmd: public FbTk::Command<void> {

@@ -137,7 +137,7 @@ void execute();

void reload(); private: std::string custom_menu_file; - std::auto_ptr<FbMenu> m_menu; + std::unique_ptr<FbMenu> m_menu; }; class ShowRootMenuCmd: public FbTk::Command<void> {
M src/FbMenu.hhsrc/FbMenu.hh

@@ -56,7 +56,7 @@ FbTk::AutoReloadHelper *reloadHelper() { return m_reloader.get(); }

private: FbTk::LayerItem m_layeritem; - std::auto_ptr<FbTk::AutoReloadHelper> m_reloader; + std::unique_ptr<FbTk::AutoReloadHelper> m_reloader; }; #endif // FBMENU_HH
M src/FbTk/FbWindow.hhsrc/FbTk/FbWindow.hh

@@ -241,7 +241,7 @@ unsigned int m_border_width; ///< border size

unsigned long m_border_color; ///< border color unsigned int m_depth; ///< bit depth bool m_destroy; ///< wheter the x window was created before - std::auto_ptr<FbTk::Transparent> m_transparent; + std::unique_ptr<FbTk::Transparent> m_transparent; bool m_lastbg_color_set; unsigned long m_lastbg_color; Pixmap m_lastbg_pm;
M src/FbTk/KeyUtil.ccsrc/FbTk/KeyUtil.cc

@@ -60,7 +60,7 @@ }

namespace FbTk { -std::auto_ptr<KeyUtil> KeyUtil::s_keyutil; +std::unique_ptr<KeyUtil> KeyUtil::s_keyutil; KeyUtil &KeyUtil::instance() { if (s_keyutil.get() == 0)
M src/FbTk/KeyUtil.hhsrc/FbTk/KeyUtil.hh

@@ -93,7 +93,7 @@ void loadModmap();

XModifierKeymap *m_modmap; int m_numlock, m_scrolllock; - static std::auto_ptr<KeyUtil> s_keyutil; + static std::unique_ptr<KeyUtil> s_keyutil; }; } // end namespace FbTk
M src/FbTk/Menu.ccsrc/FbTk/Menu.cc

@@ -95,7 +95,6 @@ m_need_update(true),

m_active_index(-1), m_theme(tm), m_image_ctrl(imgctrl), - m_shape(0), m_alignment(ALIGNDONTCARE) { Display* disp = FbTk::App::instance()->display();
M src/FbTk/Menu.hhsrc/FbTk/Menu.hh

@@ -189,7 +189,7 @@

Menu *m_parent; std::vector<MenuItem*> m_items; - std::auto_ptr<MenuSearch> m_search; + std::unique_ptr<MenuSearch> m_search; struct State { bool moving;

@@ -239,7 +239,7 @@ unsigned int m_item_w;

FbTk::ThemeProxy<MenuTheme>& m_theme; ImageControl& m_image_ctrl; - std::auto_ptr<FbTk::Shape> m_shape; // the corners + std::unique_ptr<FbTk::Shape> m_shape; // the corners Pixmap m_hilite_pixmap; Alignment m_alignment;
M src/FbTk/MenuItem.hhsrc/FbTk/MenuItem.hh

@@ -155,10 +155,10 @@ bool m_enabled, m_selected;

bool m_close_on_click, m_toggle_item; struct Icon { - std::auto_ptr<PixmapWithMask> pixmap; + std::unique_ptr<PixmapWithMask> pixmap; std::string filename; }; - std::auto_ptr<Icon> m_icon; + std::unique_ptr<Icon> m_icon; }; } // end namespace FbTk
M src/FbTk/ThemeItems.ccsrc/FbTk/ThemeItems.cc

@@ -205,7 +205,7 @@ m_value.pixmap() = 0;

return; } - std::auto_ptr<PixmapWithMask> pm(Image::load(pixmap_name, m_tm.screenNum())); + std::unique_ptr<PixmapWithMask> pm(Image::load(pixmap_name, m_tm.screenNum())); if (pm.get() == 0) { if (ThemeManager::instance().verbose()) {

@@ -255,7 +255,7 @@

StringUtil::removeFirstWhitespace(filename); StringUtil::removeTrailingWhitespace(filename); - std::auto_ptr<PixmapWithMask> pm(Image::load(filename, m_tm.screenNum())); + std::unique_ptr<PixmapWithMask> pm(Image::load(filename, m_tm.screenNum())); if (pm.get() == 0) setDefaultValue(); else {
M src/FocusableList.ccsrc/FocusableList.cc

@@ -74,7 +74,7 @@ &scr.focusControl().focusedOrderList();

} FocusableList::FocusableList(BScreen &scr, const string & pat): - m_pat(0), m_parent(0), m_screen(scr) { + m_parent(0), m_screen(scr) { int options = 0; string pattern;
M src/FocusableList.hhsrc/FocusableList.hh

@@ -48,7 +48,7 @@ LIST_GROUPS = 0x01, //< list groups instead of clients

STATIC_ORDER = 0x02 ///< use creation order instead of focused order }; - FocusableList(BScreen &scr): m_pat(0), m_parent(0), m_screen(scr) { } + FocusableList(BScreen &scr): m_parent(0), m_screen(scr) { } FocusableList(BScreen &scr, const std::string & pat); FocusableList(BScreen &scr, const FocusableList &parent, const std::string & pat);

@@ -102,7 +102,7 @@ void parentWindowRemoved(Focusable* win);

void windowUpdated(FluxboxWindow &fbwin); - std::auto_ptr<ClientPattern> m_pat; + std::unique_ptr<ClientPattern> m_pat; const FocusableList *m_parent; BScreen &m_screen; std::list<Focusable *> m_list;
M src/GenericTool.hhsrc/GenericTool.hh

@@ -65,7 +65,7 @@

private: void themeReconfigured(); - std::auto_ptr<FbTk::FbWindow> m_window; + std::unique_ptr<FbTk::FbWindow> m_window; FbTk::ThemeProxy<ToolTheme> &m_theme; FbTk::SignalTracker m_tracker; };
M src/HeadArea.hhsrc/HeadArea.hh

@@ -40,7 +40,7 @@ return m_available_workspace_area.get();

} private: - std::auto_ptr<Strut> m_available_workspace_area; + std::unique_ptr<Strut> m_available_workspace_area; std::list<Strut*> m_strutlist; };
M src/IconbarTool.hhsrc/IconbarTool.hh

@@ -108,7 +108,7 @@ FbTk::CachedPixmap m_empty_pm; ///< pixmap for empty container

FbTk::SignalTracker m_tracker; - std::auto_ptr<FocusableList> m_winlist; + std::unique_ptr<FocusableList> m_winlist; IconMap m_icons; std::string m_mode; FbTk::Resource<std::string> m_rc_mode;
M src/Remember.hhsrc/Remember.hh

@@ -155,7 +155,7 @@ static Remember &instance() { return *s_instance; }

private: - std::auto_ptr<Patterns> m_pats; + std::unique_ptr<Patterns> m_pats; Clients m_clients; Startups m_startups;
M src/Screen.ccsrc/Screen.cc

@@ -193,7 +193,6 @@ int scrn, int num_layers,

unsigned int opts) : m_layermanager(num_layers), root_colormap_installed(false), - m_image_control(0), m_current_workspace(0), m_focused_windowtheme(new FbWinFrameTheme(scrn, ".focus", ".Focus")), m_unfocused_windowtheme(new FbWinFrameTheme(scrn, ".unfocus", ".Unfocus")),

@@ -215,7 +214,6 @@ m_name(screenname),

m_altname(altscreenname), m_focus_control(new FocusControl(*this)), m_placement_strategy(new ScreenPlacement(*this)), - m_cycle_opts(0), m_opts(opts) {

@@ -643,7 +641,7 @@ True, XA_STRING, &xa_ret_type, &ret_format, &ret_nitems,

&ret_bytes_after, (unsigned char **)&str); } - static std::auto_ptr<FbTk::Command<void> > cmd(0); + static std::unique_ptr<FbTk::Command<void> > cmd; cmd.reset(FbTk::CommandParser<void>::instance().parse(str, false)); if (cmd.get()) { cmd->execute();
M src/Screen.hhsrc/Screen.hh

@@ -492,31 +492,31 @@ FbTk::MultLayers m_layermanager;

bool root_colormap_installed; - std::auto_ptr<FbTk::ImageControl> m_image_control; - std::auto_ptr<FbMenu> m_configmenu, m_rootmenu, m_workspacemenu, m_windowmenu; + std::unique_ptr<FbTk::ImageControl> m_image_control; + std::unique_ptr<FbMenu> m_configmenu, m_rootmenu, m_workspacemenu, m_windowmenu; Icons m_icon_list; - std::auto_ptr<Slit> m_slit; - std::auto_ptr<Toolbar> m_toolbar; - std::auto_ptr<ToolButtonMap> m_toolButtonMap; + std::unique_ptr<Slit> m_slit; + std::unique_ptr<Toolbar> m_toolbar; + std::unique_ptr<ToolButtonMap> m_toolButtonMap; Workspace *m_current_workspace; WorkspaceNames m_workspace_names; Workspaces m_workspaces_list; - std::auto_ptr<FbWinFrameTheme> m_focused_windowtheme, + std::unique_ptr<FbWinFrameTheme> m_focused_windowtheme, m_unfocused_windowtheme; - std::auto_ptr<WinButtonTheme> m_focused_winbutton_theme, + std::unique_ptr<WinButtonTheme> m_focused_winbutton_theme, m_unfocused_winbutton_theme, m_pressed_winbutton_theme; - std::auto_ptr<FbTk::MenuTheme> m_menutheme; - std::auto_ptr<RootTheme> m_root_theme; + std::unique_ptr<FbTk::MenuTheme> m_menutheme; + std::unique_ptr<RootTheme> m_root_theme; FbRootWindow m_root_window; - std::auto_ptr<OSDWindow> m_geom_window; - std::auto_ptr<OSDWindow> m_pos_window; - std::auto_ptr<TooltipWindow> m_tooltip_window; + std::unique_ptr<OSDWindow> m_geom_window; + std::unique_ptr<OSDWindow> m_pos_window; + std::unique_ptr<TooltipWindow> m_tooltip_window; FbTk::FbWindow m_dummy_window; ScreenResource resource;
M src/ScreenPlacement.ccsrc/ScreenPlacement.cc

@@ -53,7 +53,6 @@ m_placement_policy(screen.resourceManager(), ROWMINOVERLAPPLACEMENT,

screen.name()+".windowPlacement", screen.altName()+".WindowPlacement"), m_old_policy(ROWSMARTPLACEMENT), - m_strategy(0), m_screen(screen) { }
M src/ScreenPlacement.hhsrc/ScreenPlacement.hh

@@ -80,8 +80,8 @@ FbTk::Resource<RowDirection> m_row_direction; ///< row direction resource

FbTk::Resource<ColumnDirection> m_col_direction; ///< column direction resource FbTk::Resource<PlacementPolicy> m_placement_policy; ///< placement policy resource PlacementPolicy m_old_policy; ///< holds old policy, used to determine if resources has changed - std::auto_ptr<PlacementStrategy> m_strategy; ///< main strategy - std::auto_ptr<PlacementStrategy> m_fallback_strategy; ///< a fallback strategy if the main strategy fails + std::unique_ptr<PlacementStrategy> m_strategy; ///< main strategy + std::unique_ptr<PlacementStrategy> m_fallback_strategy; ///< a fallback strategy if the main strategy fails BScreen& m_screen; };
M src/Slit.ccsrc/Slit.cc

@@ -225,8 +225,6 @@ "KWM_DOCKWINDOW", False)), //KDE v1.x

m_kwm2_dockwindow(XInternAtom(FbTk::App::instance()->display(), "_KDE_NET_WM_SYSTEM_TRAY_WINDOW_FOR", False)), //KDE v2.x - m_layeritem(0), - m_slit_theme(new SlitTheme(scr.rootWindow().screenNumber())), m_strut(0), // resources
M src/Slit.hhsrc/Slit.hh

@@ -152,7 +152,7 @@ BScreen &m_screen;

FbTk::Timer m_timer; SlitClients m_client_list; - std::auto_ptr<LayerMenu> m_layermenu; + std::unique_ptr<LayerMenu> m_layermenu; FbMenu m_clientlist_menu, m_slitmenu; #ifdef XINERAMA XineramaHeadMenu<Slit> *m_xineramaheadmenu;

@@ -178,8 +178,8 @@

// for KDE Atom m_kwm1_dockwindow, m_kwm2_dockwindow; - std::auto_ptr<FbTk::LayerItem> m_layeritem; - std::auto_ptr<SlitTheme> m_slit_theme; + std::unique_ptr<FbTk::LayerItem> m_layeritem; + std::unique_ptr<SlitTheme> m_slit_theme; static unsigned int s_eventmask; Strut *m_strut;
M src/SystemTray.hhsrc/SystemTray.hh

@@ -106,7 +106,7 @@ FbTk::ThemeProxy<ToolTheme> &m_theme;

BScreen& m_screen; Pixmap m_pixmap; - std::auto_ptr<AtomHandler> m_handler; + std::unique_ptr<AtomHandler> m_handler; ClientList m_clients; size_t m_num_visible_clients;
M src/ToolFactory.hhsrc/ToolFactory.hh

@@ -52,9 +52,9 @@

private: BScreen &m_screen; ToolTheme m_clock_theme; - std::auto_ptr<ToolTheme> m_button_theme; - std::auto_ptr<ToolTheme> m_workspace_theme; - std::auto_ptr<ToolTheme> m_systray_theme; + std::unique_ptr<ToolTheme> m_button_theme; + std::unique_ptr<ToolTheme> m_workspace_theme; + std::unique_ptr<ToolTheme> m_systray_theme; IconbarTheme m_iconbar_theme, m_focused_iconbar_theme, m_unfocused_iconbar_theme; };
M src/Toolbar.hhsrc/Toolbar.hh

@@ -197,7 +197,7 @@ FbTk::Resource<int> m_rc_on_head;

FbTk::Resource<Placement> m_rc_placement; FbTk::Resource<int> m_rc_height; FbTk::Resource<std::string> m_rc_tools; - std::auto_ptr<FbTk::Shape> m_shape; + std::unique_ptr<FbTk::Shape> m_shape; typedef std::list<std::string> StringList; StringList m_tools;
M src/fluxbox.hhsrc/fluxbox.hh

@@ -229,7 +229,7 @@

//--- Resources - std::auto_ptr<FbAtoms> m_fbatoms; + std::unique_ptr<FbAtoms> m_fbatoms; FbTk::ResourceManager m_resourcemanager; FbTk::ResourceManager& m_screen_rm;

@@ -260,7 +260,7 @@ FbTk::Resource<time_t> auto_raise_delay;

} m_config; - std::auto_ptr<Keys> m_key; + std::unique_ptr<Keys> m_key; AtomHandlerContainer m_atomhandler; AttentionNoticeHandler m_attention_handler;
M src/tests/texturetest.ccsrc/tests/texturetest.cc

@@ -83,7 +83,7 @@ unsigned int next_x = 5;

unsigned int next_y = 5; TestTheme tm(screenNumber()); - std::auto_ptr<ThemeItem<Texture> > text; + std::unique_ptr<ThemeItem<Texture> > text; char value[18]; for (int i=0; i<m_num; ++i) { sprintf(value, "%d", i);