From: <geo...@us...> - 2014-08-15 13:10:32
|
Revision: 7462 http://sourceforge.net/p/freeorion/code/7462 Author: geoffthemedio Date: 2014-08-15 13:10:26 +0000 (Fri, 15 Aug 2014) Log Message: ----------- Fixed issue where setting the default save filename in a FileDlg would be overwritten when the working directory was set. Modified Paths: -------------- trunk/FreeOrion/GG/GG/dialogs/FileDlg.h trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp Modified: trunk/FreeOrion/GG/GG/dialogs/FileDlg.h =================================================================== --- trunk/FreeOrion/GG/GG/dialogs/FileDlg.h 2014-08-15 10:58:14 UTC (rev 7461) +++ trunk/FreeOrion/GG/GG/dialogs/FileDlg.h 2014-08-15 13:10:26 UTC (rev 7462) @@ -162,7 +162,7 @@ static const Y DEFAULT_HEIGHT; ///< default height for the dialog private: - void CreateChildren(const std::string& filename, bool multi); + void CreateChildren(bool multi); void PlaceLabelsAndEdits(X button_width, Y button_height); void AttachSignalChildren(); void DetachSignalChildren(); Modified: trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-15 10:58:14 UTC (rev 7461) +++ trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-15 13:10:26 UTC (rev 7462) @@ -168,8 +168,18 @@ m_files_label(0), m_file_types_label(0) { - CreateChildren(filename, multi); + CreateChildren(multi); Init(directory); + + if (!filename.empty()) { +#if defined(BOOST_FILESYSTEM_VERSION) && BOOST_FILESYSTEM_VERSION == 3 + fs::path filename_path = fs::system_complete(fs::path(filename)); + m_files_edit->SetText(filename_path.leaf().string()); +#else + fs::path filename_path = fs::complete(fs::path(filename)); + m_files_edit->SetText(filename_path.leaf()); +#endif + } } std::set<std::string> FileDlg::Result() const @@ -321,7 +331,7 @@ const fs::path& FileDlg::WorkingDirectory() { return s_working_dir; } -void FileDlg::CreateChildren(const std::string& filename, bool multi) +void FileDlg::CreateChildren(bool multi) { if (m_save) multi = false; @@ -331,20 +341,9 @@ boost::shared_ptr<StyleFactory> style = GetStyleFactory(); -#if defined(BOOST_FILESYSTEM_VERSION) && BOOST_FILESYSTEM_VERSION == 3 - fs::path filename_path = fs::system_complete(fs::path(filename)); -#else - fs::path filename_path = fs::complete(fs::path(filename)); -#endif m_files_edit = style->NewEdit(X0, Y0, X1, "", m_font, m_border_color, m_text_color); -#if defined(BOOST_FILESYSTEM_VERSION) && BOOST_FILESYSTEM_VERSION == 3 - m_files_edit->SetText(filename_path.leaf().string()); -#else - m_files_edit->SetText(filename_path.leaf()); -#endif m_filter_list = style->NewDropDownList(X0, Y0, X(100), m_font->Lineskip(), m_font->Lineskip() * 3, m_border_color); m_filter_list->SetStyle(LIST_NOSORT); - m_files_edit->Resize(Pt(X(100), m_font->Height() + 2 * 5)); m_files_edit->MoveTo(Pt()); m_filter_list->Resize(Pt(X(100), m_filter_list->Height())); |
From: <mar...@us...> - 2014-08-15 15:36:09
|
Revision: 7469 http://sourceforge.net/p/freeorion/code/7469 Author: marcel_metz Date: 2014-08-15 15:36:01 +0000 (Fri, 15 Aug 2014) Log Message: ----------- Removed unused GG::StateButtonStyle::SBSTYLE_3D(XBOX|BUTTON|ROUND_BUTTON). Modified Paths: -------------- trunk/FreeOrion/GG/GG/Base.h trunk/FreeOrion/GG/GG/Button.h trunk/FreeOrion/GG/GG/DrawUtil.h trunk/FreeOrion/GG/src/Button.cpp trunk/FreeOrion/GG/src/DrawUtil.cpp Modified: trunk/FreeOrion/GG/GG/Base.h =================================================================== --- trunk/FreeOrion/GG/GG/Base.h 2014-08-15 15:35:37 UTC (rev 7468) +++ trunk/FreeOrion/GG/GG/Base.h 2014-08-15 15:36:01 UTC (rev 7469) @@ -101,11 +101,8 @@ /** The built-in visual styles of state buttons. */ GG_ENUM(StateButtonStyle, - SBSTYLE_3D_XBOX, ///< Draws a down-beveled box with a 3D x-mark inside. SBSTYLE_3D_CHECKBOX, ///< Draws a down-beveled box with a 3D check-mark inside. SBSTYLE_3D_RADIO, ///< Draws a down-beveled circle with a 3D "dot" or "bubble" inside. - SBSTYLE_3D_BUTTON, ///< Draws a button that toggles bewtween popped up and pushed down. - SBSTYLE_3D_ROUND_BUTTON, ///< Draws a down-beveled circle with an up-beveled circle inside. /** Draws an up-beveled rectagular tab that is brighter and larger when pressed; it's bottom is unbeveled. */ Modified: trunk/FreeOrion/GG/GG/Button.h =================================================================== --- trunk/FreeOrion/GG/GG/Button.h 2014-08-15 15:35:37 UTC (rev 7468) +++ trunk/FreeOrion/GG/GG/Button.h 2014-08-15 15:36:01 UTC (rev 7469) @@ -143,7 +143,7 @@ /** \name Structors */ ///@{ StateButton(X x, Y y, X w, Y h, const std::string& str, const boost::shared_ptr<Font>& font, Flags<TextFormat> format, - Clr color, Clr text_color = CLR_BLACK, Clr interior = CLR_ZERO, StateButtonStyle style = SBSTYLE_3D_XBOX, + Clr color, Clr text_color = CLR_BLACK, Clr interior = CLR_ZERO, StateButtonStyle style = SBSTYLE_3D_CHECKBOX, Flags<WndFlag> flags = INTERACTIVE); ///< Ctor //@} Modified: trunk/FreeOrion/GG/GG/DrawUtil.h =================================================================== --- trunk/FreeOrion/GG/GG/DrawUtil.h 2014-08-15 15:35:37 UTC (rev 7468) +++ trunk/FreeOrion/GG/GG/DrawUtil.h 2014-08-15 15:36:01 UTC (rev 7469) @@ -129,9 +129,6 @@ /** Draws an X-mark used to draw state buttons. */ GG_API void FlatX(Pt ul, Pt lr, Clr color); - /** Like FlatX(), but with a raised appearance. */ - GG_API void BeveledX(Pt ul, Pt lr, Clr color); - /** Draws a disk that appears to be a portion of a lit sphere. The portion may appear raised or depressed. */ GG_API void Bubble(Pt ul, Pt lr, Clr color, bool up = true); Modified: trunk/FreeOrion/GG/src/Button.cpp =================================================================== --- trunk/FreeOrion/GG/src/Button.cpp 2014-08-15 15:35:37 UTC (rev 7468) +++ trunk/FreeOrion/GG/src/Button.cpp 2014-08-15 15:36:01 UTC (rev 7469) @@ -237,7 +237,7 @@ // GG::StateButton //////////////////////////////////////////////// StateButton::StateButton(X x, Y y, X w, Y h, const std::string& str, const boost::shared_ptr<Font>& font, Flags<TextFormat> format, - Clr color, Clr text_color/* = CLR_BLACK*/, Clr interior/* = CLR_ZERO*/, StateButtonStyle style/* = SBSTYLE_3D_XBOX*/, + Clr color, Clr text_color/* = CLR_BLACK*/, Clr interior/* = CLR_ZERO*/, StateButtonStyle style/* = SBSTYLE_3D_CHECKBOX*/, Flags<WndFlag> flags/* = INTERACTIVE*/) : TextControl(x, y, w, h, str, font, text_color, format, flags), m_checked(false), @@ -282,15 +282,6 @@ const Pt DOUBLE_BEVEL(X(2 * BEVEL), Y(2 * BEVEL)); switch (m_style) { - case SBSTYLE_3D_XBOX: - BeveledRectangle(bn_ul, bn_lr, - Disabled() ? DisabledColor(m_int_color) : m_int_color, - Disabled() ? DisabledColor(m_color) : m_color, - false, BEVEL); - if (m_checked) - BeveledX(bn_ul + DOUBLE_BEVEL, bn_lr - DOUBLE_BEVEL, - m_disabled ? DisabledColor(m_color) : m_color); - break; case SBSTYLE_3D_CHECKBOX: BeveledRectangle(bn_ul, bn_lr, Disabled() ? DisabledColor(m_int_color) : m_int_color, @@ -309,18 +300,6 @@ Bubble(bn_ul + DOUBLE_BEVEL, bn_lr - DOUBLE_BEVEL, Disabled() ? DisabledColor(m_color) : m_color); break; - case SBSTYLE_3D_BUTTON: - BeveledRectangle(bn_ul, bn_lr, - Disabled() ? DisabledColor(m_color) : m_color, - Disabled() ? DisabledColor(m_color) : m_color, - !m_checked, BEVEL); - break; - case SBSTYLE_3D_ROUND_BUTTON: - BeveledCircle(bn_ul, bn_lr, - Disabled() ? DisabledColor(m_color) : m_color, - Disabled() ? DisabledColor(m_color) : Color(), - !m_checked, BEVEL); - break; case SBSTYLE_3D_TOP_ATTACHED_TAB: { Clr color_to_use = m_checked ? m_color : DarkColor(m_color); color_to_use = Disabled() ? DisabledColor(color_to_use) : color_to_use; Modified: trunk/FreeOrion/GG/src/DrawUtil.cpp =================================================================== --- trunk/FreeOrion/GG/src/DrawUtil.cpp 2014-08-15 15:35:37 UTC (rev 7468) +++ trunk/FreeOrion/GG/src/DrawUtil.cpp 2014-08-15 15:36:01 UTC (rev 7469) @@ -753,9 +753,6 @@ void FlatX(Pt ul, Pt lr, Clr color) { XMark(ul, lr, color, color, color); } - void BeveledX(Pt ul, Pt lr, Clr color) - { XMark(ul, lr, color, LightColor(color), DarkColor(color)); } - void Bubble(Pt ul, Pt lr, Clr color, bool up/* = true*/) { BubbleArc(ul, lr, color, |
From: <mar...@us...> - 2014-08-16 21:17:24
|
Revision: 7479 http://sourceforge.net/p/freeorion/code/7479 Author: marcel_metz Date: 2014-08-16 21:17:20 +0000 (Sat, 16 Aug 2014) Log Message: ----------- Removed unused GG::ColorDlg constructor. Modified Paths: -------------- trunk/FreeOrion/GG/GG/dialogs/ColorDlg.h trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp Modified: trunk/FreeOrion/GG/GG/dialogs/ColorDlg.h =================================================================== --- trunk/FreeOrion/GG/GG/dialogs/ColorDlg.h 2014-08-16 15:30:58 UTC (rev 7478) +++ trunk/FreeOrion/GG/GG/dialogs/ColorDlg.h 2014-08-16 21:17:20 UTC (rev 7479) @@ -184,10 +184,6 @@ /** \name Structors */ ///@{ /** ctor */ - ColorDlg(X x, Y y, const boost::shared_ptr<Font>& font, - Clr dialog_color, Clr border_color, Clr text_color = CLR_BLACK); - - /** ctor */ ColorDlg(X x, Y y, Clr original_color, const boost::shared_ptr<Font>& font, Clr dialog_color, Clr border_color, Clr text_color = CLR_BLACK); //@} Modified: trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp 2014-08-16 15:30:58 UTC (rev 7478) +++ trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp 2014-08-16 21:17:20 UTC (rev 7479) @@ -399,41 +399,6 @@ std::vector<Clr> ColorDlg::s_custom_colors; const std::size_t ColorDlg::INVALID_COLOR_BUTTON = std::numeric_limits<std::size_t>::max(); -ColorDlg::ColorDlg(X x, Y y, const boost::shared_ptr<Font>& font, - Clr dialog_color, Clr border_color, Clr text_color/* = CLR_BLACK*/) : - Wnd(x, y, X(315), Y(300), INTERACTIVE | DRAGABLE | MODAL), - m_original_color(CLR_ZERO), - m_original_color_specified(false), - m_color_was_picked(false), - m_new_str("New"), - m_old_str("Old"), - m_red_str("R:"), - m_green_str("G:"), - m_blue_str("B:"), - m_hue_str("H:"), - m_saturation_str("S:"), - m_value_str("V:"), - m_alpha_str("A:"), - m_ok_str("Ok"), - m_cancel_str("Cancel"), - m_hue_saturation_picker(0), - m_value_picker(0), - m_pickers_layout(0), - m_new_color_square(0), - m_old_color_square(0), - m_new_color_square_text(0), - m_old_color_square_text(0), - m_color_squares_layout(0), - m_color_buttons_layout(0), - m_current_color_button(INVALID_COLOR_BUTTON), - m_ok(0), - m_cancel(0), - m_sliders_ok_cancel_layout(0), - m_color(dialog_color), - m_border_color(border_color), - m_text_color(text_color) -{ Init(font); } - ColorDlg::ColorDlg(X x, Y y, Clr original_color, const boost::shared_ptr<Font>& font, Clr dialog_color, Clr border_color, Clr text_color/* = CLR_BLACK*/) : Wnd(x, y, X(315), Y(300), INTERACTIVE | DRAGABLE | MODAL), |
From: <mar...@us...> - 2014-08-18 14:17:20
|
Revision: 7497 http://sourceforge.net/p/freeorion/code/7497 Author: marcel_metz Date: 2014-08-18 14:17:11 +0000 (Mon, 18 Aug 2014) Log Message: ----------- Removed position parameters from GG::StyleFactory::NewTextControl. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/Menu.cpp trunk/FreeOrion/GG/src/StyleFactory.cpp trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-18 07:44:45 UTC (rev 7496) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-18 14:17:11 UTC (rev 7497) @@ -127,7 +127,7 @@ Flags<TextFormat> format = FORMAT_NONE, Flags<WndFlag> flags = NO_WND_FLAGS) const; /** Returns a new GG TextControl whose size is exactly that required to hold its text. */ - virtual TextControl* NewTextControl(X x, Y y, const std::string& str, const boost::shared_ptr<Font>& font, + virtual TextControl* NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, Clr color = CLR_BLACK, Flags<TextFormat> format = FORMAT_NONE, Flags<WndFlag> flags = NO_WND_FLAGS) const; Modified: trunk/FreeOrion/GG/src/Menu.cpp =================================================================== --- trunk/FreeOrion/GG/src/Menu.cpp 2014-08-18 07:44:45 UTC (rev 7496) +++ trunk/FreeOrion/GG/src/Menu.cpp 2014-08-18 14:17:11 UTC (rev 7497) @@ -341,7 +341,7 @@ // create any needed labels for (std::size_t i = m_menu_labels.size(); i < m_menu_data.next_level.size(); ++i) { - m_menu_labels.push_back(GetStyleFactory()->NewTextControl(X0, Y0, m_menu_data.next_level[i].label, m_font, m_text_color)); + m_menu_labels.push_back(GetStyleFactory()->NewTextControl(m_menu_data.next_level[i].label, m_font, m_text_color)); m_menu_labels.back()->Resize(Pt(m_menu_labels.back()->Width() + 2 * MENU_SEPARATION, m_font->Lineskip())); AttachChild(m_menu_labels.back()); } Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-18 07:44:45 UTC (rev 7496) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-18 14:17:11 UTC (rev 7497) @@ -112,9 +112,9 @@ Flags<TextFormat> format/* = FORMAT_NONE*/, Flags<WndFlag> flags/* = NO_WND_FLAGS*/) const { return new TextControl(x, y, w, h, str, font, color, format, flags); } -TextControl* StyleFactory::NewTextControl(X x, Y y, const std::string& str, const boost::shared_ptr<Font>& font, +TextControl* StyleFactory::NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, Clr color/* = CLR_BLACK*/, Flags<TextFormat> format/* = FORMAT_NONE*/, Flags<WndFlag> flags/* = NO_WND_FLAGS*/) const -{ return new TextControl(x, y, str, font, color, format, flags); } +{ return new TextControl(X0, Y0, str, font, color, format, flags); } TabBar* StyleFactory::NewTabBar(X x, Y y, X w, const boost::shared_ptr<Font>& font, Clr color, Clr text_color/* = CLR_BLACK*/, TabBarStyle style/* = TAB_BAR_ATTACHED*/, Flags<WndFlag> flags/* = INTERACTIVE*/) const Modified: trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-18 07:44:45 UTC (rev 7496) +++ trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-18 14:17:11 UTC (rev 7497) @@ -351,7 +351,7 @@ const Y BUTTON_HEIGHT = m_files_edit->Height(); // use the edit's height for the buttons as well - m_curr_dir_text = style->NewTextControl(H_SPACING, V_SPACING / 2, "", m_font, m_text_color); + m_curr_dir_text = style->NewTextControl("", m_font, m_text_color); m_files_label = style->NewTextControl(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 2, Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT, "File(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); m_file_types_label = style->NewTextControl(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 1, Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT, "Type(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); @@ -372,6 +372,8 @@ void FileDlg::PlaceLabelsAndEdits(X button_width, Y button_height) { + m_curr_dir_text->MoveTo(GG::Pt(H_SPACING, V_SPACING / 2)); + Y file_list_top = m_curr_dir_text->Height() + V_SPACING; m_files_list->Resize(Pt(Width() - 2 * H_SPACING, Height() - (button_height + V_SPACING) * 2 - file_list_top - V_SPACING)); @@ -622,7 +624,7 @@ } else { for (std::size_t i = 0; i < m_file_filters.size(); ++i) { ListBox::Row* row = new ListBox::Row(); - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, m_file_filters[i].first, m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl(m_file_filters[i].first, m_font, m_text_color)); m_filter_list->Insert(row); } m_filter_list->Select(m_filter_list->begin()); @@ -678,13 +680,13 @@ Win32Paths()) { ListBox::Row* row = new ListBox::Row(); - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, "[..]", m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl("[..]", m_font, m_text_color)); m_files_list->Insert(row); } // current directory selector { ListBox::Row* row = new ListBox::Row(); - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, "[.]", m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl("[.]", m_font, m_text_color)); m_files_list->Insert(row); } try { @@ -721,7 +723,7 @@ #else std::string row_text = "[" + it->filename() + "]"; #endif - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, row_text, m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl(row_text, m_font, m_text_color)); sorted_rows.insert(std::make_pair(row_text, row)); } } catch (const fs::filesystem_error&) { @@ -756,7 +758,7 @@ if (meets_filters) { ListBox::Row* row = new ListBox::Row(); #if defined(BOOST_FILESYSTEM_VERSION) && BOOST_FILESYSTEM_VERSION == 3 - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, it->path().filename().string(), m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl(it->path().filename().string(), m_font, m_text_color)); sorted_rows.insert(std::make_pair(it->path().filename().string(), row)); #else row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, it->filename(), m_font, m_text_color)); @@ -778,7 +780,7 @@ if (fs::exists(path)) { ListBox::Row* row = new ListBox::Row(); #if defined(BOOST_FILESYSTEM_VERSION) && BOOST_FILESYSTEM_VERSION == 3 - row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, "[" + path.root_name().string() + "]", m_font, m_text_color)); + row->push_back(GetStyleFactory()->NewTextControl("[" + path.root_name().string() + "]", m_font, m_text_color)); #else row->push_back(GetStyleFactory()->NewTextControl(X0, Y0, "[" + path.root_name() + "]", m_font, m_text_color)); #endif |
From: <mar...@us...> - 2014-08-21 08:11:07
|
Revision: 7536 http://sourceforge.net/p/freeorion/code/7536 Author: marcel_metz Date: 2014-08-21 08:11:02 +0000 (Thu, 21 Aug 2014) Log Message: ----------- Removed position parameters from GG::StyleFactory::NewMultiEdit(H|V)Scroll. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/MultiEdit.cpp trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-20 22:32:39 UTC (rev 7535) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-21 08:11:02 UTC (rev 7536) @@ -145,11 +145,11 @@ Flags<WndFlag> flags = INTERACTIVE | REPEAT_BUTTON_DOWN) const; /** Returns a new vertical Scroll, to be used in a MultiEdit. */ - virtual Scroll* NewMultiEditVScroll(X x, Y y, X w, Y h, Clr color, Clr interior, + virtual Scroll* NewMultiEditVScroll(Clr color, Clr interior, Flags<WndFlag> flags = INTERACTIVE | REPEAT_BUTTON_DOWN) const; /** Returns a new horizontal Scroll, to be used in a MultiEdit. */ - virtual Scroll* NewMultiEditHScroll(X x, Y y, X w, Y h, Clr color, Clr interior, + virtual Scroll* NewMultiEditHScroll(Clr color, Clr interior, Flags<WndFlag> flags = INTERACTIVE | REPEAT_BUTTON_DOWN) const; /** Returns a new up (decrease) Button, to be used in a vertical Scroll. */ Modified: trunk/FreeOrion/GG/src/MultiEdit.cpp =================================================================== --- trunk/FreeOrion/GG/src/MultiEdit.cpp 2014-08-20 22:32:39 UTC (rev 7535) +++ trunk/FreeOrion/GG/src/MultiEdit.cpp 2014-08-21 08:11:02 UTC (rev 7536) @@ -1185,11 +1185,9 @@ scroll_y + cl_sz.y + 2 * INT_GAP - (need_horz ? INT_SCROLL_WIDTH : 0))); } } else if (!m_vscroll && need_vert) { // if scroll doesn't exist but is needed - m_vscroll = - style->NewMultiEditVScroll( - cl_sz.x + INT_GAP - INT_SCROLL_WIDTH, Y(-GAP), - X(SCROLL_WIDTH), cl_sz.y + 2 * INT_GAP - (need_horz ? INT_SCROLL_WIDTH : 0), - m_color, CLR_SHADOW); + m_vscroll = style->NewMultiEditVScroll(m_color, CLR_SHADOW); + m_vscroll->MoveTo(Pt(cl_sz.x + INT_GAP - INT_SCROLL_WIDTH, Y(-GAP))); + m_vscroll->Resize(Pt(X(SCROLL_WIDTH), cl_sz.y + 2 * INT_GAP - (need_horz ? INT_SCROLL_WIDTH : 0))); unsigned int line_size = (m_vscroll_wheel_scroll_increment != 0 ? m_vscroll_wheel_scroll_increment @@ -1223,17 +1221,16 @@ scroll_y + INT_SCROLL_WIDTH)); } } else if (!m_hscroll && need_horz) { // if scroll doesn't exist but is needed - m_hscroll = - style->NewMultiEditHScroll( - X(-GAP), cl_sz.y + GAP - INT_SCROLL_WIDTH, - cl_sz.x + 2 * GAP - (need_vert ? INT_SCROLL_WIDTH : 0), Y(SCROLL_WIDTH), - m_color, CLR_SHADOW); - unsigned int line_size = (m_hscroll_wheel_scroll_increment != 0 - ? m_hscroll_wheel_scroll_increment - : Value(GetFont()->Lineskip())*4); + m_hscroll = style->NewMultiEditHScroll(m_color, CLR_SHADOW); + m_hscroll->MoveTo(Pt(X(-GAP), cl_sz.y + GAP - INT_SCROLL_WIDTH)); + m_hscroll->Resize(Pt(cl_sz.x + 2 * GAP - (need_vert ? INT_SCROLL_WIDTH : 0), Y(SCROLL_WIDTH))); - unsigned int page_size = std::abs(Value(cl_sz.x - (need_vert ? INT_SCROLL_WIDTH : 0))); + unsigned int line_size = (m_hscroll_wheel_scroll_increment != 0 + ? m_hscroll_wheel_scroll_increment + : Value(GetFont()->Lineskip())*4); + unsigned int page_size = std::abs(Value(cl_sz.x - (need_vert ? INT_SCROLL_WIDTH : 0))); + m_hscroll->SizeScroll(Value(hscroll_min), Value(hscroll_max), line_size, std::max(line_size, page_size)); AttachChild(m_hscroll); Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-20 22:32:39 UTC (rev 7535) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-21 08:11:02 UTC (rev 7536) @@ -132,13 +132,13 @@ Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const { return NewScroll(x, y, w, h, HORIZONTAL, color, interior, flags); } -Scroll* StyleFactory::NewMultiEditVScroll(X x, Y y, X w, Y h, Clr color, Clr interior, +Scroll* StyleFactory::NewMultiEditVScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const -{ return NewScroll(x, y, w, h, VERTICAL, color, interior, flags); } +{ return NewScroll(X0, Y0, X1, Y1, VERTICAL, color, interior, flags); } -Scroll* StyleFactory::NewMultiEditHScroll(X x, Y y, X w, Y h, Clr color, Clr interior, +Scroll* StyleFactory::NewMultiEditHScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const -{ return NewScroll(x, y, w, h, HORIZONTAL, color, interior, flags); } +{ return NewScroll(X0, Y0, X1, Y1, HORIZONTAL, color, interior, flags); } Button* StyleFactory::NewScrollUpButton(const std::string& str, Clr color, Clr text_color/* = CLR_BLACK*/, |
From: <mar...@us...> - 2014-08-21 08:11:23
|
Revision: 7537 http://sourceforge.net/p/freeorion/code/7537 Author: marcel_metz Date: 2014-08-21 08:11:19 +0000 (Thu, 21 Aug 2014) Log Message: ----------- Removed position parameters from GG::StyleFactory::NewListBox(H|V)Scroll. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/ListBox.cpp trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-21 08:11:02 UTC (rev 7536) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-21 08:11:19 UTC (rev 7537) @@ -137,11 +137,11 @@ Flags<WndFlag> flags = INTERACTIVE) const; /** Returns a new vertical Scroll, to be used in a ListBox. */ - virtual Scroll* NewListBoxVScroll(X x, Y y, X w, Y h, Clr color, Clr interior, + virtual Scroll* NewListBoxVScroll(Clr color, Clr interior, Flags<WndFlag> flags = INTERACTIVE | REPEAT_BUTTON_DOWN) const; /** Returns a new horizontal Scroll, to be used in a ListBox. */ - virtual Scroll* NewListBoxHScroll(X x, Y y, X w, Y h, Clr color, Clr interior, + virtual Scroll* NewListBoxHScroll(Clr color, Clr interior, Flags<WndFlag> flags = INTERACTIVE | REPEAT_BUTTON_DOWN) const; /** Returns a new vertical Scroll, to be used in a MultiEdit. */ Modified: trunk/FreeOrion/GG/src/ListBox.cpp =================================================================== --- trunk/FreeOrion/GG/src/ListBox.cpp 2014-08-21 08:11:02 UTC (rev 7536) +++ trunk/FreeOrion/GG/src/ListBox.cpp 2014-08-21 08:11:19 UTC (rev 7537) @@ -1881,11 +1881,9 @@ MoveChildUp(m_vscroll); } } else if (!m_vscroll && vertical_needed) { // if scroll doesn't exist but is needed - m_vscroll = - style->NewListBoxVScroll( - cl_sz.x - SCROLL_WIDTH, Y0, - X(SCROLL_WIDTH), cl_sz.y - (horizontal_needed ? SCROLL_WIDTH : 0), - m_color, CLR_SHADOW); + m_vscroll = style->NewListBoxVScroll(m_color, CLR_SHADOW); + m_vscroll->MoveTo(Pt(cl_sz.x - SCROLL_WIDTH, Y0)); + m_vscroll->Resize(Pt(X(SCROLL_WIDTH), cl_sz.y - (horizontal_needed ? SCROLL_WIDTH : 0))); unsigned int line_size = m_vscroll_wheel_scroll_increment; if (line_size == 0 && !this->Empty()) { @@ -1927,11 +1925,9 @@ MoveChildUp(m_hscroll); } } else if (!m_hscroll && horizontal_needed) { // if scroll doesn't exist but is needed - m_hscroll = - style->NewListBoxHScroll( - X0, cl_sz.y - SCROLL_WIDTH, - cl_sz.x - (vertical_needed ? SCROLL_WIDTH : 0), Y(SCROLL_WIDTH), - m_color, CLR_SHADOW); + m_hscroll = style->NewListBoxHScroll(m_color, CLR_SHADOW); + m_hscroll->MoveTo(Pt(X0, cl_sz.y - SCROLL_WIDTH)); + m_hscroll->Resize(Pt(cl_sz.x - (vertical_needed ? SCROLL_WIDTH : 0), Y(SCROLL_WIDTH))); unsigned int line_size = m_hscroll_wheel_scroll_increment; if (line_size == 0 && !this->Empty()) { Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-21 08:11:02 UTC (rev 7536) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-21 08:11:19 UTC (rev 7537) @@ -124,13 +124,13 @@ Flags<WndFlag> flags/* = INTERACTIVE*/) const { return NewListBox(color, interior, flags); } -Scroll* StyleFactory::NewListBoxVScroll(X x, Y y, X w, Y h, Clr color, Clr interior, +Scroll* StyleFactory::NewListBoxVScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const -{ return NewScroll(x, y, w, h, VERTICAL, color, interior, flags); } +{ return NewScroll(X0, Y0, X1, Y1, VERTICAL, color, interior, flags); } -Scroll* StyleFactory::NewListBoxHScroll(X x, Y y, X w, Y h, Clr color, Clr interior, +Scroll* StyleFactory::NewListBoxHScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const -{ return NewScroll(x, y, w, h, HORIZONTAL, color, interior, flags); } +{ return NewScroll(X0, Y0, X1, Y1, HORIZONTAL, color, interior, flags); } Scroll* StyleFactory::NewMultiEditVScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const |
From: <mar...@us...> - 2014-08-21 11:31:56
|
Revision: 7540 http://sourceforge.net/p/freeorion/code/7540 Author: marcel_metz Date: 2014-08-21 11:31:48 +0000 (Thu, 21 Aug 2014) Log Message: ----------- Removed duplicate GG::StyleFactory::NewTextControl function. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/BrowseInfoWnd.cpp trunk/FreeOrion/GG/src/GroupBox.cpp trunk/FreeOrion/GG/src/StyleFactory.cpp trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-21 11:31:48 UTC (rev 7540) @@ -122,11 +122,6 @@ Flags<WndFlag> flags = INTERACTIVE) const; /** Returns a new GG TextControl. */ - virtual TextControl* NewTextControl(X x, Y y, X w, Y h, const std::string& str, - const boost::shared_ptr<Font>& font, Clr color = CLR_BLACK, - Flags<TextFormat> format = FORMAT_NONE, Flags<WndFlag> flags = NO_WND_FLAGS) const; - - /** Returns a new GG TextControl whose size is exactly that required to hold its text. */ virtual TextControl* NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, Clr color = CLR_BLACK, Flags<TextFormat> format = FORMAT_NONE, Flags<WndFlag> flags = NO_WND_FLAGS) const; Modified: trunk/FreeOrion/GG/src/BrowseInfoWnd.cpp =================================================================== --- trunk/FreeOrion/GG/src/BrowseInfoWnd.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/BrowseInfoWnd.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -86,8 +86,9 @@ m_border_color(border_color), m_border_width(border_width), m_preferred_width(w), - m_text_control(GetStyleFactory()->NewTextControl(X0, Y0, w, Y1, "", m_font, text_color, format)) + m_text_control(GetStyleFactory()->NewTextControl("", m_font, text_color, format)) { + m_text_control->Resize(Pt(w, m_text_control->Height())); AttachChild(m_text_control); GridLayout(); SetLayoutBorderMargin(text_margin); Modified: trunk/FreeOrion/GG/src/GroupBox.cpp =================================================================== --- trunk/FreeOrion/GG/src/GroupBox.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/GroupBox.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -56,10 +56,13 @@ m_text_color(text_color), m_int_color(interior), m_font(font), - m_label(label.empty() ? 0 : GUI::GetGUI()->GetStyleFactory()->NewTextControl(X0, -m_font->Lineskip(), X1, m_font->Lineskip(), - label, m_font, m_text_color, FORMAT_LEFT | FORMAT_TOP)), + m_label(label.empty() ? 0 : GUI::GetGUI()->GetStyleFactory()->NewTextControl(label, m_font, m_text_color, FORMAT_LEFT | FORMAT_TOP)), m_set_client_corners_equal_to_box_corners(false) -{ AttachChild(m_label); } +{ + m_label->MoveTo(Pt(X0, -m_font->Lineskip())); + m_label->MoveTo(Pt(X1, m_font->Lineskip())); + AttachChild(m_label); +} Pt GroupBox::ClientUpperLeft() const { @@ -159,11 +162,8 @@ delete m_label; if (!str.empty()) { - m_label = GUI::GetGUI()->GetStyleFactory()->NewTextControl(X(FRAME_THICK + PIXEL_MARGIN), Y0, - X1, m_font->Lineskip(), - str, m_font, m_text_color); + m_label = GUI::GetGUI()->GetStyleFactory()->NewTextControl(str, m_font, m_text_color); + m_label->MoveTo(Pt(X(FRAME_THICK + PIXEL_MARGIN), Y0)); + m_label->Resize(Pt(X1, m_font->Lineskip())); } - - if (m_set_client_corners_equal_to_box_corners && m_label) - m_label->MoveTo(Pt(X(FRAME_THICK + PIXEL_MARGIN), Y0)); } Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -107,11 +107,6 @@ Flags<WndFlag> flags/* = INTERACTIVE*/) const { return new Slider<int>(GG::X0, GG::Y0, GG::X1, GG::Y1, min, max, orientation, style, color, tab_width, line_width, flags); } -TextControl* StyleFactory::NewTextControl(X x, Y y, X w, Y h, const std::string& str, - const boost::shared_ptr<Font>& font, Clr color/* = CLR_BLACK*/, - Flags<TextFormat> format/* = FORMAT_NONE*/, Flags<WndFlag> flags/* = NO_WND_FLAGS*/) const -{ return new TextControl(x, y, w, h, str, font, color, format, flags); } - TextControl* StyleFactory::NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, Clr color/* = CLR_BLACK*/, Flags<TextFormat> format/* = FORMAT_NONE*/, Flags<WndFlag> flags/* = NO_WND_FLAGS*/) const { return new TextControl(X0, Y0, X1, Y1, str, font, color, format, flags); } Modified: trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/dialogs/ColorDlg.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -590,10 +590,10 @@ 1, 1, 0, 4); m_new_color_square = new ColorDisplay(color); if (m_original_color_specified) { - m_new_color_square_text = style->NewTextControl(X0, Y0, X1, Y1, m_new_str, font, m_text_color, FORMAT_RIGHT); + m_new_color_square_text = style->NewTextControl(m_new_str, font, m_text_color, FORMAT_RIGHT); m_color_squares_layout->Add(m_new_color_square_text, 0, 0); m_color_squares_layout->Add(m_new_color_square, 0, 1); - m_old_color_square_text = style->NewTextControl(X0, Y0, X1, Y1, m_old_str, font, m_text_color, FORMAT_RIGHT); + m_old_color_square_text = style->NewTextControl(m_old_str, font, m_text_color, FORMAT_RIGHT); m_color_squares_layout->Add(m_old_color_square_text, 1, 0); m_old_color_square = new ColorDisplay(m_original_color); m_color_squares_layout->Add(m_old_color_square, 1, 1); @@ -619,63 +619,63 @@ m_sliders_ok_cancel_layout->SetMinimumColumnWidth(0, X(15)); m_sliders_ok_cancel_layout->SetMinimumColumnWidth(1, X(30)); m_sliders_ok_cancel_layout->SetColumnStretch(2, 1); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_red_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_red_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 0, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(color.r)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(color.r)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 0, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(color.r); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 0, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_green_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_green_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 1, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(color.g)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(color.g)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 1, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(color.g); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 1, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_blue_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_blue_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 2, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(color.b)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(color.b)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 2, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(color.b); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 2, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_alpha_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_alpha_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 3, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(color.a)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(color.a)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 3, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(color.a); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 3, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_hue_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_hue_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 4, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(m_current_color.h * 359)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(m_current_color.h * 359)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 4, 1); m_sliders.push_back(style->NewIntSlider(0, 359, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(static_cast<int>(m_current_color.h * 359)); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 4, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_saturation_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_saturation_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 5, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(m_current_color.s * 255)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(m_current_color.s * 255)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 5, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); m_sliders.back()->SlideTo(static_cast<int>(m_current_color.s * 255)); m_sliders_ok_cancel_layout->Add(m_sliders.back(), 5, 2); - m_slider_labels.push_back(style->NewTextControl(X0, Y0, X1, Y1, m_value_str, font, m_text_color, FORMAT_RIGHT)); + m_slider_labels.push_back(style->NewTextControl(m_value_str, font, m_text_color, FORMAT_RIGHT)); m_sliders_ok_cancel_layout->Add(m_slider_labels.back(), 6, 0); - m_slider_values.push_back(style->NewTextControl(X0, Y0, X1, Y1, lexical_cast<std::string>(static_cast<int>(m_current_color.v * 255)), + m_slider_values.push_back(style->NewTextControl(lexical_cast<std::string>(static_cast<int>(m_current_color.v * 255)), font, m_text_color, FORMAT_LEFT)); m_sliders_ok_cancel_layout->Add(m_slider_values.back(), 6, 1); m_sliders.push_back(style->NewIntSlider(0, 255, HORIZONTAL, RAISED, m_color, 10)); Modified: trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -336,37 +336,41 @@ if (m_save) multi = false; - const X USABLE_WIDTH = Width() - 4 * H_SPACING; - const X BUTTON_WIDTH = USABLE_WIDTH / 4; - boost::shared_ptr<StyleFactory> style = GetStyleFactory(); m_files_edit = style->NewEdit("", m_font, m_border_color, m_text_color); m_filter_list = style->NewDropDownList(3, m_border_color); m_filter_list->SetStyle(LIST_NOSORT); + + m_curr_dir_text = style->NewTextControl("", m_font, m_text_color, FORMAT_NOWRAP); + m_files_label = style->NewTextControl("File(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); + m_file_types_label = style->NewTextControl("Type(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); + + m_ok_button = style->NewButton(m_save ? m_save_str : m_open_str, m_font, m_color, m_text_color); + m_cancel_button = style->NewButton(m_cancel_str, m_font, m_color, m_text_color); + + // finally, we can create the listbox with the files in it, sized to fill the available space + m_files_list = style->NewListBox(m_border_color); + m_files_list->SetStyle(LIST_NOSORT | (multi ? LIST_NONE : LIST_SINGLESEL)); + + const X USABLE_WIDTH = Width() - 4 * H_SPACING; + const X BUTTON_WIDTH = USABLE_WIDTH / 4; + m_files_edit->Resize(Pt(X(100), m_font->Height() + 2 * 5)); m_files_edit->MoveTo(Pt()); m_filter_list->Resize(Pt(X(100), m_font->Lineskip())); m_filter_list->MoveTo(Pt()); const Y BUTTON_HEIGHT = m_files_edit->Height(); // use the edit's height for the buttons as well - - m_curr_dir_text = style->NewTextControl("", m_font, m_text_color, FORMAT_NOWRAP); - m_files_label = style->NewTextControl(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 2, Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT, "File(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); - m_file_types_label = style->NewTextControl(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 1, Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT, "Type(s):", m_font, m_text_color, FORMAT_RIGHT | FORMAT_VCENTER); - - m_ok_button = style->NewButton(m_save ? m_save_str : m_open_str, m_font, m_color, m_text_color); - m_cancel_button = style->NewButton(m_cancel_str, m_font, m_color, m_text_color); - + m_files_label->MoveTo(Pt(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 2)); + m_files_label->Resize(Pt(Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT)); + m_file_types_label->MoveTo(Pt(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 1)); + m_file_types_label->Resize(Pt(Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT)); m_ok_button->Resize(Pt(BUTTON_WIDTH, BUTTON_HEIGHT)); m_ok_button->MoveTo(Pt(Width() - (BUTTON_WIDTH + H_SPACING), Height() - (BUTTON_HEIGHT + V_SPACING) * 2)); m_cancel_button->Resize(Pt(BUTTON_WIDTH, BUTTON_HEIGHT)); m_cancel_button->MoveTo(Pt(Width() - (BUTTON_WIDTH + H_SPACING), Height() - (BUTTON_HEIGHT + V_SPACING))); - // finally, we can create the listbox with the files in it, sized to fill the available space - m_files_list = style->NewListBox(m_border_color); - m_files_list->SetStyle(LIST_NOSORT | (multi ? LIST_NONE : LIST_SINGLESEL)); - PlaceLabelsAndEdits(BUTTON_WIDTH, BUTTON_HEIGHT); } Modified: trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp 2014-08-21 08:57:40 UTC (rev 7539) +++ trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp 2014-08-21 11:31:48 UTC (rev 7540) @@ -158,8 +158,9 @@ boost::shared_ptr<StyleFactory> style = GetStyleFactory(); - TextControl* message_text = style->NewTextControl(X0, Y0, ClientWidth() - 2 * SPACING, Height(), msg, font, m_text_color, + TextControl* message_text = style->NewTextControl(msg, font, m_text_color, FORMAT_CENTER | FORMAT_VCENTER | FORMAT_WORDBREAK); + message_text->Resize(Pt(ClientWidth() - 2 * SPACING, Height())); message_text->SetMinSize(true); layout->Add(message_text, 0, 0); layout->SetRowStretch(0, 1); |
From: <mar...@us...> - 2014-08-21 11:32:20
|
Revision: 7541 http://sourceforge.net/p/freeorion/code/7541 Author: marcel_metz Date: 2014-08-21 11:32:11 +0000 (Thu, 21 Aug 2014) Log Message: ----------- Renamed GG::FileDlg::PlaceLabelsAndEdits function to DoLayout. Simplified layout code of GG::FileDlg. Modified Paths: -------------- trunk/FreeOrion/GG/GG/dialogs/FileDlg.h trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp Modified: trunk/FreeOrion/GG/GG/dialogs/FileDlg.h =================================================================== --- trunk/FreeOrion/GG/GG/dialogs/FileDlg.h 2014-08-21 11:31:48 UTC (rev 7540) +++ trunk/FreeOrion/GG/GG/dialogs/FileDlg.h 2014-08-21 11:32:11 UTC (rev 7541) @@ -163,7 +163,7 @@ private: void CreateChildren(bool multi); - void PlaceLabelsAndEdits(X button_width, Y button_height); + void DoLayout(); void AttachSignalChildren(); void DetachSignalChildren(); void Init(const std::string& directory); Modified: trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-21 11:31:48 UTC (rev 7540) +++ trunk/FreeOrion/GG/src/dialogs/FileDlg.cpp 2014-08-21 11:32:11 UTC (rev 7541) @@ -273,13 +273,13 @@ void FileDlg::SetFilesString(const std::string& str) { m_files_label->SetText(str); - PlaceLabelsAndEdits(Width() / 4 - H_SPACING, m_files_edit->Height()); + DoLayout(); } void FileDlg::SetFileTypesString(const std::string& str) { m_file_types_label->SetText(str); - PlaceLabelsAndEdits(Width() / 4 - H_SPACING, m_files_edit->Height()); + DoLayout(); } void FileDlg::SetSaveString(const std::string& str) @@ -353,46 +353,42 @@ m_files_list = style->NewListBox(m_border_color); m_files_list->SetStyle(LIST_NOSORT | (multi ? LIST_NONE : LIST_SINGLESEL)); - const X USABLE_WIDTH = Width() - 4 * H_SPACING; - const X BUTTON_WIDTH = USABLE_WIDTH / 4; - - m_files_edit->Resize(Pt(X(100), m_font->Height() + 2 * 5)); - m_files_edit->MoveTo(Pt()); - m_filter_list->Resize(Pt(X(100), m_font->Lineskip())); - m_filter_list->MoveTo(Pt()); - - const Y BUTTON_HEIGHT = m_files_edit->Height(); // use the edit's height for the buttons as well - m_files_label->MoveTo(Pt(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 2)); - m_files_label->Resize(Pt(Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT)); - m_file_types_label->MoveTo(Pt(X0, Height() - (BUTTON_HEIGHT + V_SPACING) * 1)); - m_file_types_label->Resize(Pt(Width() - (3 * BUTTON_WIDTH + 3 * H_SPACING), BUTTON_HEIGHT)); - m_ok_button->Resize(Pt(BUTTON_WIDTH, BUTTON_HEIGHT)); - m_ok_button->MoveTo(Pt(Width() - (BUTTON_WIDTH + H_SPACING), Height() - (BUTTON_HEIGHT + V_SPACING) * 2)); - m_cancel_button->Resize(Pt(BUTTON_WIDTH, BUTTON_HEIGHT)); - m_cancel_button->MoveTo(Pt(Width() - (BUTTON_WIDTH + H_SPACING), Height() - (BUTTON_HEIGHT + V_SPACING))); - - PlaceLabelsAndEdits(BUTTON_WIDTH, BUTTON_HEIGHT); + DoLayout(); } -void FileDlg::PlaceLabelsAndEdits(X button_width, Y button_height) +void FileDlg::DoLayout() { + X button_width = Width() / 4 - H_SPACING; + Y button_height = m_font->Height() + 2 * 5; + m_curr_dir_text->MoveTo(GG::Pt(H_SPACING, V_SPACING / 2)); - Y file_list_top = m_curr_dir_text->Height() + V_SPACING; + m_files_list->MoveTo(Pt(H_SPACING, m_curr_dir_text->Height() + V_SPACING)); m_files_list->Resize(Pt(Width() - 2 * H_SPACING, - Height() - (button_height + V_SPACING) * 2 - file_list_top - V_SPACING)); - m_files_list->MoveTo(Pt(H_SPACING, file_list_top)); + Height() - (button_height + V_SPACING) * 2 - m_curr_dir_text->Height())); // determine the space needed to display both text labels in the chosen font; use this to expand the edit as far as // possible X labels_width = std::max(m_font->TextExtent(m_files_label->Text()).x, m_font->TextExtent(m_file_types_label->Text()).x) + H_SPACING; - m_files_label->Resize(Pt(labels_width - H_SPACING / 2, m_files_label->Height())); - m_file_types_label->Resize(Pt(labels_width - H_SPACING / 2, m_file_types_label->Height())); + + m_files_label->MoveTo(Pt(X0, Height() - (button_height + V_SPACING) * 2)); + m_files_label->Resize(Pt(labels_width - H_SPACING / 2, button_height)); + + m_file_types_label->MoveTo(Pt(X0, Height() - (button_height + V_SPACING) * 1)); + m_file_types_label->Resize(Pt(labels_width - H_SPACING / 2, button_height)); + m_files_edit->SizeMove(Pt(labels_width, Height() - (button_height + V_SPACING) * 2), Pt(Width() - (button_width + 2 * H_SPACING), Height() - (button_height + 2 * V_SPACING))); + m_filter_list->SizeMove(Pt(labels_width, Height() - (button_height + V_SPACING)), Pt(Width() - (button_width + 2 * H_SPACING), Height() - V_SPACING)); + + m_ok_button->MoveTo(Pt(Width() - (button_width + H_SPACING), Height() - (button_height + V_SPACING) * 2)); + m_ok_button->Resize(Pt(button_width, button_height)); + + m_cancel_button->MoveTo(Pt(Width() - (button_width + H_SPACING), Height() - (button_height + V_SPACING))); + m_cancel_button->Resize(Pt(button_width, button_height)); } void FileDlg::Init(const std::string& directory) @@ -810,7 +806,6 @@ #else std::string str = s_working_dir.native_directory_string(); #endif - const X H_SPACING(10); while (m_font->TextExtent(str).x > Width() - 2 * H_SPACING) { std::string::size_type slash_idx = str.find('/', 1); std::string::size_type backslash_idx = str.find('\\', 1); @@ -825,7 +820,7 @@ } } *m_curr_dir_text << str; - PlaceLabelsAndEdits(Width() / 4 - H_SPACING, m_files_edit->Height()); + DoLayout(); } void FileDlg::OpenDirectory() @@ -862,7 +857,7 @@ m_files_edit->Clear(); FilesEditChanged(m_files_edit->Text()); m_curr_dir_text->SetText(""); - PlaceLabelsAndEdits(Width() / 4 - H_SPACING, m_files_edit->Height()); + DoLayout(); UpdateList(); } @@ -888,7 +883,7 @@ m_files_edit->Clear(); FilesEditChanged(m_files_edit->Text()); m_curr_dir_text->SetText(""); - PlaceLabelsAndEdits(Width() / 4 - H_SPACING, m_files_edit->Height()); + DoLayout(); UpdateList(); boost::shared_ptr<ThreeButtonDlg> dlg( GetStyleFactory()->NewThreeButtonDlg(X(175), Y(75), |
From: <geo...@us...> - 2014-08-24 06:45:33
|
Revision: 7583 http://sourceforge.net/p/freeorion/code/7583 Author: geoffthemedio Date: 2014-08-24 06:45:24 +0000 (Sun, 24 Aug 2014) Log Message: ----------- Made mousewheel scrolling pan the tabs list. Modified Paths: -------------- trunk/FreeOrion/GG/GG/TabWnd.h trunk/FreeOrion/GG/src/TabWnd.cpp Modified: trunk/FreeOrion/GG/GG/TabWnd.h =================================================================== --- trunk/FreeOrion/GG/GG/TabWnd.h 2014-08-24 06:02:12 UTC (rev 7582) +++ trunk/FreeOrion/GG/GG/TabWnd.h 2014-08-24 06:45:24 UTC (rev 7583) @@ -130,43 +130,43 @@ //@} /** \name Accessors */ ///@{ - virtual Pt MinUsableSize() const; + virtual Pt MinUsableSize() const; /** Returns true iff NumWnds() == 0. */ - bool Empty() const; + bool Empty() const; /** Returns the number of tabs currently in this TabWnd. */ - std::size_t NumWnds() const; + std::size_t NumWnds() const; /** Returns the Wnd currently visible in the TabWnd, or 0 if there is none. */ - Wnd* CurrentWnd() const; + Wnd* CurrentWnd() const; /** Returns the index into the sequence of Wnds in this TabWnd of the Wnd currently shown. NO_WND is returned if there is no Wnd currently visible. */ - std::size_t CurrentWndIndex() const; + std::size_t CurrentWndIndex() const; //@} /** \name Mutators */ ///@{ /** Adds \a wnd to the sequence of Wnds in this TabWnd, with name \a name. \a name can be used later to remove the Wnd (\a name is not checked for uniqueness). Returns the index at which \a wnd is placed. */ - std::size_t AddWnd(Wnd* wnd, const std::string& name); + std::size_t AddWnd(Wnd* wnd, const std::string& name); /** Adds \a wnd to the sequence of Wnds in this TabWnd, inserting it at the \a index location within the sequence. \a name can be used later to remove the Wnd (\a name is not checked for uniqueness). Not range checked. */ - void InsertWnd(std::size_t index, Wnd* wnd, const std::string& name); + void InsertWnd(std::size_t index, Wnd* wnd, const std::string& name); /** Removes and returns the first Wnd previously added witht he name \a name from the sequence of Wnds in this TabWnd, or 0 if no such Wnd is found. */ - Wnd* RemoveWnd(const std::string& name); + Wnd* RemoveWnd(const std::string& name); /** Sets the currently visible Wnd in the sequence to the Wnd in the \a index position within the sequence. Not range checked. */ - void SetCurrentWnd(std::size_t index); + void SetCurrentWnd(std::size_t index); //@} mutable WndChangedSignalType WndChangedSignal; ///< The Wnd change signal object for this TabWnd @@ -178,18 +178,18 @@ protected: /** \name Accessors */ ///@{ /** Returns the TabBar at the top of this TabWnd. */ - const TabBar* GetTabBar() const; + const TabBar* GetTabBar() const; /** Returns the OverlayWnd in this TabWnd. */ - const OverlayWnd* GetOverlayWnd() const; + const OverlayWnd* GetOverlayWnd() const; /** Returns the set of Wnds currently controlled by this TabWnd, indexed by name. */ - const std::map<std::string, Wnd*>& WndNames() const; + const std::map<std::string, Wnd*>& WndNames() const; //@} private: - void TabChanged(std::size_t tab_index, bool signal); + void TabChanged(std::size_t tab_index, bool signal); TabBar* m_tab_bar; OverlayWnd* m_overlay; @@ -219,46 +219,47 @@ //@} /** \name Accessors */ ///@{ - virtual Pt MinUsableSize() const; + virtual Pt MinUsableSize() const; /** Returns true iff NumWnds() == 0. */ - bool Empty() const; + bool Empty() const; /** Returns the number of tabs currently in this TabWnd. */ - std::size_t NumTabs() const; + std::size_t NumTabs() const; /** Returns the index into the sequence of tabs in this TabBar of the tab currently selected. NO_TAB is returned if there is no tab currently selected. */ - std::size_t CurrentTabIndex() const; + std::size_t CurrentTabIndex() const; /** Returns the color used to render the text in this TabBar. */ - Clr TextColor() const; + Clr TextColor() const; //@} /** \name Mutators */ ///@{ - virtual void SizeMove(const Pt& ul, const Pt& lr); - virtual void DoLayout(); - virtual void Render(); + virtual void MouseWheel(const Pt& pt, int move, Flags<ModKey> mod_keys); + virtual void SizeMove(const Pt& ul, const Pt& lr); + virtual void DoLayout(); + virtual void Render(); /** Adds a tab called \a name to the sequence of tabs in this TabBar. \a name can be used later to remove the tab (\a name is not checked for uniqueness). Returns the index at which the tab is placed. */ - std::size_t AddTab(const std::string& name); + std::size_t AddTab(const std::string& name); /** Adds tab to the sequence of tabs in this TabBar, inserting it at the \a index location within the sequence. \a name can be used later to remove the tab (\a name is not checked for uniqueness). Not range checked. */ - void InsertTab(std::size_t index, const std::string& name); + void InsertTab(std::size_t index, const std::string& name); /** Removes the first tab previously added witht he name \a name from the sequence of tab in this TabBar. */ - void RemoveTab(const std::string& name); + void RemoveTab(const std::string& name); /** Sets the current tab in the sequence to the tab in the \a index position within the sequence. Not range checked. */ - void SetCurrentTab(std::size_t index); + void SetCurrentTab(std::size_t index); //@} mutable TabChangedSignalType TabChangedSignal; ///< The tab change signal object for this TabBar @@ -272,16 +273,16 @@ protected: /** \name Accessors */ ///@{ - const Button* LeftButton() const; - const Button* RightButton() const; + const Button* LeftButton() const; + const Button* RightButton() const; //@} /** \name Mutators */ ///@{ - virtual bool EventFilter(Wnd* w, const WndEvent& event); + virtual bool EventFilter(Wnd* w, const WndEvent& event); /** Brings the currently-selected tab button to the top within the tab button group. */ - void RaiseCurrentTabButton(); + void RaiseCurrentTabButton(); //@} private: Modified: trunk/FreeOrion/GG/src/TabWnd.cpp =================================================================== --- trunk/FreeOrion/GG/src/TabWnd.cpp 2014-08-24 06:02:12 UTC (rev 7582) +++ trunk/FreeOrion/GG/src/TabWnd.cpp 2014-08-24 06:45:24 UTC (rev 7583) @@ -324,6 +324,18 @@ Clr TabBar::TextColor() const { return m_text_color; } +void TabBar::MouseWheel(const Pt& pt, int move, Flags<ModKey> mod_keys) +{ + if (move < 0 && m_right_button && !m_right_button->Disabled()) { + RightClicked(); + return; + } + if (move > 0 && m_left_button && !m_left_button->Disabled()) { + LeftClicked(); + return; + } +} + void TabBar::SizeMove(const Pt& ul, const Pt& lr) { Pt old_size = Size(); @@ -464,7 +476,7 @@ { if (event.Type() == WndEvent::LButtonDown || event.Type() == WndEvent::RButtonDown) - MoveChildUp(m_left_right_button_layout); + { MoveChildUp(m_left_right_button_layout); } return false; } |
From: <mar...@us...> - 2014-08-29 10:22:56
|
Revision: 7645 http://sourceforge.net/p/freeorion/code/7645 Author: marcel_metz Date: 2014-08-29 10:22:48 +0000 (Fri, 29 Aug 2014) Log Message: ----------- Removed window flags parameter from GG::StyleFactory::NewDropDownListListBox. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 05:45:03 UTC (rev 7644) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 10:22:48 UTC (rev 7645) @@ -128,8 +128,7 @@ /** \name Subcontrols */ ///@{ /** Returns a new ListBox, to be used in a DropDownList. */ - virtual ListBox* NewDropDownListListBox(Clr color, Clr interior = CLR_ZERO, - Flags<WndFlag> flags = INTERACTIVE) const; + virtual ListBox* NewDropDownListListBox(Clr color, Clr interior = CLR_ZERO) const; /** Returns a new vertical Scroll, to be used in a ListBox. */ virtual Scroll* NewListBoxVScroll(Clr color, Clr interior, Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 05:45:03 UTC (rev 7644) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:22:48 UTC (rev 7645) @@ -115,9 +115,8 @@ TabBarStyle style/* = TAB_BAR_ATTACHED*/, Flags<WndFlag> flags/* = INTERACTIVE*/) const { return new TabBar(X0, Y0, X1, font, color, text_color, style, flags); } -ListBox* StyleFactory::NewDropDownListListBox(Clr color, Clr interior/* = CLR_ZERO*/, - Flags<WndFlag> flags/* = INTERACTIVE*/) const -{ return NewListBox(color, interior, flags); } +ListBox* StyleFactory::NewDropDownListListBox(Clr color, Clr interior/* = CLR_ZERO*/) const +{ return NewListBox(color, interior, INTERACTIVE); } Scroll* StyleFactory::NewListBoxVScroll(Clr color, Clr interior, Flags<WndFlag> flags/* = INTERACTIVE | REPEAT_BUTTON_DOWN*/) const |
From: <mar...@us...> - 2014-08-29 10:24:11
|
Revision: 7649 http://sourceforge.net/p/freeorion/code/7649 Author: marcel_metz Date: 2014-08-29 10:24:07 +0000 (Fri, 29 Aug 2014) Log Message: ----------- Removed window flags parameter from GG::StyleFactory::NewSpinEdit. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 10:23:51 UTC (rev 7648) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 10:24:07 UTC (rev 7649) @@ -173,8 +173,7 @@ /** Returns a new Edit, to be used in an editable Spin. */ virtual Edit* NewSpinEdit(const std::string& str, const boost::shared_ptr<Font>& font, - Clr color, Clr text_color = CLR_BLACK, Clr interior = CLR_ZERO, - Flags<WndFlag> flags = INTERACTIVE | REPEAT_KEY_PRESS) const; + Clr color, Clr text_color = CLR_BLACK, Clr interior = CLR_ZERO) const; /** Returns a new StateButton, to be used in a TabBar. */ virtual StateButton* NewTabBarTab(const std::string& str, Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:23:51 UTC (rev 7648) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:24:07 UTC (rev 7649) @@ -161,9 +161,8 @@ { return NewButton("-", font, color, text_color, flags); } Edit* StyleFactory::NewSpinEdit(const std::string& str, const boost::shared_ptr<Font>& font, - Clr color, Clr text_color/* = CLR_BLACK*/, Clr interior/* = CLR_ZERO*/, - Flags<WndFlag> flags/* = INTERACTIVE*/) const -{ return NewEdit(str, font, color, text_color, interior, flags); } + Clr color, Clr text_color/* = CLR_BLACK*/, Clr interior/* = CLR_ZERO*/) const +{ return NewEdit(str, font, color, text_color, interior, INTERACTIVE | REPEAT_KEY_PRESS); } StateButton* StyleFactory::NewTabBarTab(const std::string& str, const boost::shared_ptr<Font>& font, Flags<TextFormat> format, Clr color, |
From: <mar...@us...> - 2014-08-29 10:25:22
|
Revision: 7653 http://sourceforge.net/p/freeorion/code/7653 Author: marcel_metz Date: 2014-08-29 10:25:20 +0000 (Fri, 29 Aug 2014) Log Message: ----------- Removed window flags parameter from GG::StyleFactory::NewTextControl. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 10:25:04 UTC (rev 7652) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 10:25:20 UTC (rev 7653) @@ -118,8 +118,7 @@ /** Returns a new GG TextControl. */ virtual TextControl* NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, - Clr color = CLR_BLACK, Flags<TextFormat> format = FORMAT_NONE, - Flags<WndFlag> flags = NO_WND_FLAGS) const; + Clr color = CLR_BLACK, Flags<TextFormat> format = FORMAT_NONE) const; /** \name Subcontrols */ ///@{ /** Returns a new ListBox, to be used in a DropDownList. */ Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:25:04 UTC (rev 7652) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:25:20 UTC (rev 7653) @@ -104,8 +104,8 @@ { return new Slider<int>(GG::X0, GG::Y0, GG::X1, GG::Y1, min, max, orientation, style, color, tab_width, line_width, INTERACTIVE); } TextControl* StyleFactory::NewTextControl(const std::string& str, const boost::shared_ptr<Font>& font, - Clr color/* = CLR_BLACK*/, Flags<TextFormat> format/* = FORMAT_NONE*/, Flags<WndFlag> flags/* = NO_WND_FLAGS*/) const -{ return new TextControl(X0, Y0, X1, Y1, str, font, color, format, flags); } + Clr color/* = CLR_BLACK*/, Flags<TextFormat> format/* = FORMAT_NONE*/) const +{ return new TextControl(X0, Y0, X1, Y1, str, font, color, format, NO_WND_FLAGS); } TabBar* StyleFactory::NewTabBar(const boost::shared_ptr<Font>& font, Clr color, Clr text_color/* = CLR_BLACK*/, TabBarStyle style/* = TAB_BAR_ATTACHED*/) const |
From: <mar...@us...> - 2014-08-29 10:27:45
|
Revision: 7661 http://sourceforge.net/p/freeorion/code/7661 Author: marcel_metz Date: 2014-08-29 10:27:38 +0000 (Fri, 29 Aug 2014) Log Message: ----------- Removed window flags parameter from GG::DropDownList. Modified Paths: -------------- trunk/FreeOrion/GG/GG/DropDownList.h trunk/FreeOrion/GG/src/DropDownList.cpp trunk/FreeOrion/GG/src/StyleFactory.cpp Modified: trunk/FreeOrion/GG/GG/DropDownList.h =================================================================== --- trunk/FreeOrion/GG/GG/DropDownList.h 2014-08-29 10:27:18 UTC (rev 7660) +++ trunk/FreeOrion/GG/GG/DropDownList.h 2014-08-29 10:27:38 UTC (rev 7661) @@ -67,7 +67,7 @@ /** \name Structors */ ///@{ /** basic ctor. DropDownList retains ownership of \a lb, if it is non-null. */ - DropDownList(size_t num_shown_elements, Clr color, Flags<WndFlag> flags = INTERACTIVE); + DropDownList(size_t num_shown_elements, Clr color); ~DropDownList(); ///< dtor //@} Modified: trunk/FreeOrion/GG/src/DropDownList.cpp =================================================================== --- trunk/FreeOrion/GG/src/DropDownList.cpp 2014-08-29 10:27:18 UTC (rev 7660) +++ trunk/FreeOrion/GG/src/DropDownList.cpp 2014-08-29 10:27:38 UTC (rev 7661) @@ -141,8 +141,8 @@ //////////////////////////////////////////////// // GG::DropDownList //////////////////////////////////////////////// -DropDownList::DropDownList(size_t num_shown_elements, Clr color, Flags<WndFlag> flags/* = INTERACTIVE*/) : - Control(X0, Y0, X1, Y1, flags), +DropDownList::DropDownList(size_t num_shown_elements, Clr color) : + Control(X0, Y0, X1, Y1, INTERACTIVE), m_modal_picker(new ModalListPicker(color, this)), m_num_shown_elements(num_shown_elements) { Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:27:18 UTC (rev 7660) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 10:27:38 UTC (rev 7661) @@ -86,7 +86,7 @@ { return new RadioButtonGroup(orientation); } DropDownList* StyleFactory::NewDropDownList(size_t num_shown_elements, Clr color) const -{ return new DropDownList(num_shown_elements, color, INTERACTIVE); } +{ return new DropDownList(num_shown_elements, color); } Edit* StyleFactory::NewEdit(const std::string& str, const boost::shared_ptr<Font>& font, Clr color, Clr text_color/* = CLR_BLACK*/, Clr interior/* = CLR_ZERO*/) const |
From: <mar...@us...> - 2014-08-29 18:58:16
|
Revision: 7675 http://sourceforge.net/p/freeorion/code/7675 Author: marcel_metz Date: 2014-08-29 18:58:13 +0000 (Fri, 29 Aug 2014) Log Message: ----------- Removed unused GG::ThreeButtonDlg constructor. Modified Paths: -------------- trunk/FreeOrion/GG/GG/StyleFactory.h trunk/FreeOrion/GG/GG/dialogs/ThreeButtonDlg.h trunk/FreeOrion/GG/src/StyleFactory.cpp trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp Modified: trunk/FreeOrion/GG/GG/StyleFactory.h =================================================================== --- trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 17:03:55 UTC (rev 7674) +++ trunk/FreeOrion/GG/GG/StyleFactory.h 2014-08-29 18:58:13 UTC (rev 7675) @@ -183,12 +183,6 @@ //@} /** \name Dialogs */ ///@{ - /** Returns a new GG ThreeButtonDlg. */ - virtual ThreeButtonDlg* NewThreeButtonDlg(X x, Y y, X w, Y h, const std::string& msg, - const boost::shared_ptr<Font>& font, Clr color, Clr border_color, - Clr button_color, Clr text_color, int buttons, const std::string& zero = "", - const std::string& one = "", const std::string& two = "") const; - /** Returns a new GG ThreeButtonDlg that automatically centers itself in the app. */ virtual ThreeButtonDlg* NewThreeButtonDlg(X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, Modified: trunk/FreeOrion/GG/GG/dialogs/ThreeButtonDlg.h =================================================================== --- trunk/FreeOrion/GG/GG/dialogs/ThreeButtonDlg.h 2014-08-29 17:03:55 UTC (rev 7674) +++ trunk/FreeOrion/GG/GG/dialogs/ThreeButtonDlg.h 2014-08-29 18:58:13 UTC (rev 7675) @@ -58,11 +58,6 @@ { public: /** \name Structors */ ///@{ - /** Basic ctor*/ - ThreeButtonDlg(X x, Y y, X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, Clr color, - Clr border_color, Clr button_color, Clr text_color, std::size_t buttons, const std::string& zero = "", - const std::string& one = "", const std::string& two = ""); - /** Ctor that automatically centers the dialog in the app's area*/ ThreeButtonDlg(X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, Clr color, Clr border_color, Clr button_color, Clr text_color, std::size_t buttons, const std::string& zero = "", Modified: trunk/FreeOrion/GG/src/StyleFactory.cpp =================================================================== --- trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 17:03:55 UTC (rev 7674) +++ trunk/FreeOrion/GG/src/StyleFactory.cpp 2014-08-29 18:58:13 UTC (rev 7675) @@ -175,16 +175,6 @@ Button* StyleFactory::NewTabBarRightButton(const boost::shared_ptr<Font>& font, Clr color, Clr text_color/* = CLR_BLACK*/) const { return NewButton(">", font, color, text_color, INTERACTIVE); } -ThreeButtonDlg* StyleFactory::NewThreeButtonDlg(X x, Y y, X w, Y h, const std::string& msg, - const boost::shared_ptr<Font>& font, Clr color, Clr border_color, - Clr button_color, Clr text_color, int buttons, - const std::string& zero/* = ""*/, const std::string& one/* = ""*/, - const std::string& two/* = ""*/) const -{ - return new ThreeButtonDlg(x, y, w, h, msg, font, color, border_color, button_color, text_color, - buttons, zero, one, two); -} - ThreeButtonDlg* StyleFactory::NewThreeButtonDlg(X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, Clr color, Clr border_color, Clr button_color, Clr text_color, int buttons, const std::string& zero/* = ""*/, Modified: trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp =================================================================== --- trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp 2014-08-29 17:03:55 UTC (rev 7674) +++ trunk/FreeOrion/GG/src/dialogs/ThreeButtonDlg.cpp 2014-08-29 18:58:13 UTC (rev 7675) @@ -37,23 +37,6 @@ const std::size_t ThreeButtonDlg::NO_BUTTON = std::numeric_limits<std::size_t>::max(); -ThreeButtonDlg::ThreeButtonDlg(X x, Y y, X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, - Clr color, Clr border_color, Clr button_color, Clr text_color, std::size_t buttons, - const std::string& zero/* = ""*/, const std::string& one/* = ""*/, - const std::string& two/* = ""*/) : - Wnd(x, y, w, h, INTERACTIVE | DRAGABLE | MODAL), - m_color(color), - m_border_color(border_color), - m_text_color(text_color), - m_button_color(button_color), - m_default(0), - m_escape(buttons - 1), - m_result(0), - m_button_0(0), - m_button_1(0), - m_button_2(0) -{ Init(msg, font, buttons, zero, one, two); } - ThreeButtonDlg::ThreeButtonDlg(X w, Y h, const std::string& msg, const boost::shared_ptr<Font>& font, Clr color, Clr border_color, Clr button_color, Clr text_color, std::size_t buttons, const std::string& zero/* = ""*/, const std::string& one/* = ""*/, const std::string& two/* = ""*/) : |
From: <dil...@us...> - 2014-11-10 19:11:01
|
Revision: 7765 http://sourceforge.net/p/freeorion/code/7765 Author: dilvish-fo Date: 2014-11-10 19:10:48 +0000 (Mon, 10 Nov 2014) Log Message: ----------- patch by Mitten.O adding back underline capability removed in the GG rendering revamp of r[7756] Modified Paths: -------------- trunk/FreeOrion/GG/GG/Font.h trunk/FreeOrion/GG/src/Font.cpp Modified: trunk/FreeOrion/GG/GG/Font.h =================================================================== --- trunk/FreeOrion/GG/GG/Font.h 2014-11-10 19:08:12 UTC (rev 7764) +++ trunk/FreeOrion/GG/GG/Font.h 2014-11-10 19:10:48 UTC (rev 7765) @@ -41,6 +41,7 @@ #include <stack> #include <boost/unordered_map.hpp> +#include <boost/graph/graph_concepts.hpp> struct FT_FaceRec_; @@ -353,6 +354,9 @@ boost::scoped_ptr<GLTexCoordBuffer> coordinates; boost::scoped_ptr<GLRGBAColorBuffer> colors; + boost::scoped_ptr<GLPtBuffer> underline_vertices; + boost::scoped_ptr<GLRGBAColorBuffer> underline_colors; + RenderCache(); ~RenderCache(); Modified: trunk/FreeOrion/GG/src/Font.cpp =================================================================== --- trunk/FreeOrion/GG/src/Font.cpp 2014-11-10 19:08:12 UTC (rev 7764) +++ trunk/FreeOrion/GG/src/Font.cpp 2014-11-10 19:10:48 UTC (rev 7765) @@ -637,7 +637,9 @@ Font::RenderCache::RenderCache() : vertices(new GG::GLPtBuffer()), coordinates(new GG::GLTexCoordBuffer()), -colors(new GG::GLRGBAColorBuffer()) +colors(new GG::GLRGBAColorBuffer()), +underline_vertices(new GG::GLPtBuffer()), +underline_colors(new GG::GLRGBAColorBuffer()) {} // Must be here for scoped_ptr deleter to work @@ -914,12 +916,20 @@ glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_TEXTURE_COORD_ARRAY); glEnableClientState(GL_COLOR_ARRAY); + cache.vertices->activate(); cache.coordinates->activate(); cache.colors->activate(); glDrawArrays(GL_QUADS, 0, cache.vertices->size()); + + glBindTexture(GL_TEXTURE_2D, 0); + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + + cache.underline_vertices->activate(); + cache.underline_colors->activate(); + glDrawArrays(GL_QUADS, 0, cache.underline_vertices->size()); + glDisableClientState(GL_VERTEX_ARRAY); - glDisableClientState(GL_TEXTURE_COORD_ARRAY); glDisableClientState(GL_COLOR_ARRAY); glColor4dv(orig_color); } @@ -1636,6 +1646,22 @@ cache.vertices->store(pt.x + glyph.left_bearing - offset, pt.y + glyph.sub_texture.Height() + glyph.y_offset); cache.colors->store(render_state->CurrentColor()); + if (render_state && render_state->draw_underline) { + X x1 = pt.x; + Y y1(pt.y + m_height + m_descent - m_underline_offset); + X x2 = x1 + glyph.advance; + Y y2(y1 + m_underline_height); + + cache.underline_vertices->store(x1, y1); + cache.underline_colors->store(render_state->CurrentColor()); + cache.underline_vertices->store(x2, y1); + cache.underline_colors->store(render_state->CurrentColor()); + cache.underline_vertices->store(x2, y2); + cache.underline_colors->store(render_state->CurrentColor()); + cache.underline_vertices->store(x1, y2); + cache.underline_colors->store(render_state->CurrentColor()); + } + return glyph.advance; } |
From: <dil...@us...> - 2014-11-14 03:59:25
|
Revision: 7767 http://sourceforge.net/p/freeorion/code/7767 Author: dilvish-fo Date: 2014-11-14 03:59:20 +0000 (Fri, 14 Nov 2014) Log Message: ----------- fixed a memory leak in GG::TextControl Modified Paths: -------------- trunk/FreeOrion/GG/GG/TextControl.h trunk/FreeOrion/GG/src/TextControl.cpp Modified: trunk/FreeOrion/GG/GG/TextControl.h =================================================================== --- trunk/FreeOrion/GG/GG/TextControl.h 2014-11-12 13:03:02 UTC (rev 7766) +++ trunk/FreeOrion/GG/GG/TextControl.h 2014-11-14 03:59:20 UTC (rev 7767) @@ -75,6 +75,7 @@ Clr color = CLR_BLACK, Flags<TextFormat> format = FORMAT_NONE, Flags<WndFlag> flags = NO_WND_FLAGS); //@} + ~TextControl(); /** \name Accessors */ ///@{ virtual Pt MinUsableSize() const; Modified: trunk/FreeOrion/GG/src/TextControl.cpp =================================================================== --- trunk/FreeOrion/GG/src/TextControl.cpp 2014-11-12 13:03:02 UTC (rev 7766) +++ trunk/FreeOrion/GG/src/TextControl.cpp 2014-11-14 03:59:20 UTC (rev 7767) @@ -53,6 +53,9 @@ SetText(str); } +TextControl::~TextControl() +{ delete m_render_cache; } + Pt TextControl::MinUsableSize() const { return m_text_lr - m_text_ul; } |