void Widget::SetDimensions(const Point &position, const Point &size) { m_position = position; SetSize(size); SetActiveArea(size); }
/** * \brief Set the size of the widget */ void MythUIImage::SetSize(int width, int height) { SetSize(QSize(width,height)); }
ApplicationFolder::ApplicationFolder(wxWizard* parent, wxWizardPageSimple* prev, wxWizardPageSimple* next) { //(*Initialize(ApplicationFolder) wxBoxSizer* BoxSizer4; wxBoxSizer* BoxSizer6; wxBoxSizer* BoxSizer19; wxBoxSizer* BoxSizer5; wxBoxSizer* BoxSizer10; wxBoxSizer* BoxSizer7; wxBoxSizer* BoxSizer8; wxStaticText* StaticText2; wxBoxSizer* BoxSizer13; wxStaticBitmap* StaticBitmap1; wxStaticText* StaticText8; wxStaticText* StaticText1; wxBoxSizer* BoxSizer2; wxBoxSizer* BoxSizer11; wxBoxSizer* BoxSizer12; wxBoxSizer* BoxSizer14; wxStaticText* StaticText5; wxStaticText* StaticText7; wxBoxSizer* BoxSizer1; wxBoxSizer* BoxSizer9; wxBoxSizer* BoxSizer3; Create(parent, prev, next); BoxSizer1 = new wxBoxSizer(wxVERTICAL); Panel1 = new wxPanel(this, ID_PANEL1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL1")); Panel1->SetBackgroundColour( wxColour( 255, 255, 255)); BoxSizer4 = new wxBoxSizer(wxHORIZONTAL); BoxSizer5 = new wxBoxSizer(wxVERTICAL); BoxSizer6 = new wxBoxSizer(wxHORIZONTAL); BoxSizer6->Add(35,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText2 = new wxStaticText(Panel1, ID_STATICTEXT2, _("Application Folder"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT2")); wxFont StaticText2Font(10,wxFONTFAMILY_SWISS,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_BOLD,false,wxEmptyString,wxFONTENCODING_DEFAULT); StaticText2->SetFont(StaticText2Font); BoxSizer6->Add(StaticText2, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer5->Add(BoxSizer6, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer7 = new wxBoxSizer(wxHORIZONTAL); BoxSizer7->Add(35,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText1 = new wxStaticText(Panel1, ID_STATICTEXT1, _(" Please specify folder information about your application."), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT1")); BoxSizer7->Add(StaticText1, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer5->Add(BoxSizer7, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer4->Add(BoxSizer5, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer4->Add(-1,-1,1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticBitmap1 = new wxStaticBitmap(Panel1, wxID_ANY, wxBitmap(LinksOben_xpm), wxDefaultPosition, wxDefaultSize, 0, _T("wxID_ANY")); BoxSizer4->Add(StaticBitmap1, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); Panel1->SetSizer(BoxSizer4); BoxSizer4->Fit(Panel1); BoxSizer4->SetSizeHints(Panel1); BoxSizer1->Add(Panel1, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticLine1 = new wxStaticLine(this, ID_STATICLINE1, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE1")); BoxSizer1->Add(StaticLine1, 0, wxBOTTOM|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2 = new wxBoxSizer(wxVERTICAL); BoxSizer3 = new wxBoxSizer(wxHORIZONTAL); BoxSizer3->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); text1 = new wxStaticText(this, ID_STATICTEXT3, _("Application destination base folder:"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT3")); wxFont text1Font(8,wxFONTFAMILY_SWISS,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_BOLD,false,wxEmptyString,wxFONTENCODING_DEFAULT); text1->SetFont(text1Font); BoxSizer3->Add(text1, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer3->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer3, 0, wxBOTTOM|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer8 = new wxBoxSizer(wxHORIZONTAL); BoxSizer8->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); chProgrammFolder = new wxChoice(this, ID_CHOICE1, wxDefaultPosition, wxSize(214,21), 0, 0, 0, wxDefaultValidator, _T("ID_CHOICE1")); chProgrammFolder->SetSelection( chProgrammFolder->Append(_("program Files folder")) ); chProgrammFolder->Append(_("(custom)")); BoxSizer8->Add(chProgrammFolder, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer8->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer8, 0, wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer9 = new wxBoxSizer(wxHORIZONTAL); BoxSizer9->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); txtCustom = new wxTextCtrl(this, ID_TEXTCTRL1, wxEmptyString, wxDefaultPosition, wxSize(217,21), 0, wxDefaultValidator, _T("ID_TEXTCTRL1")); txtCustom->Disable(); BoxSizer9->Add(txtCustom, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer9->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer9, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer10 = new wxBoxSizer(wxHORIZONTAL); BoxSizer10->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); text2 = new wxStaticText(this, ID_STATICTEXT4, _("Application folder name:"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT4")); wxFont text2Font(8,wxFONTFAMILY_SWISS,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_BOLD,false,wxEmptyString,wxFONTENCODING_DEFAULT); text2->SetFont(text2Font); BoxSizer10->Add(text2, 1, wxTOP|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer10->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer10, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer11 = new wxBoxSizer(wxHORIZONTAL); BoxSizer11->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); txtAppFolderName = new wxTextCtrl(this, ID_TEXTCTRL2, wxEmptyString, wxDefaultPosition, wxSize(221,21), 0, wxDefaultValidator, _T("ID_TEXTCTRL2")); BoxSizer11->Add(txtAppFolderName, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer11->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer11, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer12 = new wxBoxSizer(wxHORIZONTAL); BoxSizer12->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); cbAppFolderName = new wxCheckBox(this, ID_CHECKBOX1, _("Allow user to change the application folder"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1")); cbAppFolderName->SetValue(true); BoxSizer12->Add(cbAppFolderName, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer12->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer12, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer13 = new wxBoxSizer(wxHORIZONTAL); BoxSizer13->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText5 = new wxStaticText(this, ID_STATICTEXT5, _("Otehr:"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT5")); BoxSizer13->Add(StaticText5, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer13->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer13, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer14 = new wxBoxSizer(wxHORIZONTAL); BoxSizer14->Add(75,20,0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); cbDoesntFolder = new wxCheckBox(this, ID_CHECKBOX2, _("The application doesn\'t need a folder"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX2")); cbDoesntFolder->SetValue(false); BoxSizer14->Add(cbDoesntFolder, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer14->Add(-1,-1,1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer2->Add(BoxSizer14, 0, wxTOP|wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer1->Add(BoxSizer2, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer19 = new wxBoxSizer(wxHORIZONTAL); BoxSizer19->Add(75,20,0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText7 = new wxStaticText(this, ID_STATICTEXT7, _("bold"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT7")); StaticText7->Disable(); wxFont StaticText7Font(8,wxFONTFAMILY_SWISS,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_BOLD,false,_T("Arial"),wxFONTENCODING_DEFAULT); StaticText7->SetFont(StaticText7Font); BoxSizer19->Add(StaticText7, 0, wxLEFT|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText8 = new wxStaticText(this, ID_STATICTEXT8, _("= required"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT8")); StaticText8->Disable(); BoxSizer19->Add(StaticText8, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); BoxSizer1->Add(BoxSizer19, 0, wxLEFT|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); SetSizer(BoxSizer1); SetSizer(BoxSizer1); Layout(); Connect(ID_CHOICE1,wxEVT_COMMAND_CHOICE_SELECTED,(wxObjectEventFunction)&ApplicationFolder::OnchProgrammFolderSelect); Connect(ID_CHECKBOX2,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&ApplicationFolder::OncbDoesntFolderClick); //*) SetSize( wxSize(480,320)); }
PrefsDialog::PrefsDialog (wxWindow * parent, const wxString &titlePrefix, Factories &factories) : wxDialog(parent, wxID_ANY, wxString(_("Audacity Preferences")), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER) , mFactories(factories) , mCategories(NULL) , mUniquePage(NULL) , mTitlePrefix(titlePrefix) { wxASSERT(factories.size() > 0); const bool uniquePage = (factories.size() == 1); ShuttleGui S(this, eIsCreating); S.StartVerticalLay(true); { wxASSERT(factories.size() > 0); if (!uniquePage) { mCategories = new wxTreebookExt(this, wxID_ANY, mTitlePrefix); S.StartHorizontalLay(wxALIGN_LEFT | wxEXPAND, true); { S.Prop(1); S.AddWindow(mCategories, wxEXPAND); { typedef std::pair<int, int> IntPair; std::vector<IntPair> stack; int iPage = 0; for (Factories::const_iterator it = factories.begin(), end = factories.end(); it != end; ++it, ++iPage) { const PrefsNode &node = *it; PrefsPanelFactory &factory = *node.pFactory; wxWindow *const w = factory.Create(mCategories); if (stack.empty()) // Parameters are: AddPage(page, name, IsSelected, imageId). mCategories->AddPage(w, w->GetName(), false, 0); else { IntPair &top = *stack.rbegin(); mCategories->InsertSubPage(top.first, w, w->GetName(), false, 0); if (--top.second == 0) { // Expand all nodes before the layout calculation mCategories->ExpandNode(top.first, true); stack.pop_back(); } } if (node.nChildren > 0) stack.push_back(IntPair(iPage, node.nChildren)); } } } S.EndHorizontalLay(); } else { // Unique page, don't show the factory const PrefsNode &node = factories[0]; PrefsPanelFactory &factory = *node.pFactory; mUniquePage = factory.Create(this); S.AddWindow(mUniquePage, wxEXPAND); } } S.EndVerticalLay(); S.AddStandardButtons(eOkButton | eCancelButton | eApplyButton); static_cast<wxButton*>(wxWindow::FindWindowById(wxID_OK, this))->SetDefault(); if (mUniquePage && !mUniquePage->ShowsApplyButton()) { wxWindow *const applyButton = wxWindow::FindWindowById(wxID_APPLY, GetParent()); applyButton->Show(false); } #if defined(__WXGTK__) if (mCategories) mCategories->GetTreeCtrl()->EnsureVisible(mCategories->GetTreeCtrl()->GetRootItem()); #endif // mCategories->SetSizeHints(-1, -1, 790, 600); // 790 = 800 - (border * 2) Layout(); Fit(); wxSize sz = GetSize(); // Collapse nodes only after layout so the tree is wide enough if (mCategories) { int iPage = 0; for (Factories::const_iterator it = factories.begin(), end = factories.end(); it != end; ++it, ++iPage) mCategories->ExpandNode(iPage, it->expanded); } // This ASSERT used to limit us to 800 x 600. // However, we think screens have got bigger now, and that was a bit too restrictive. // The impetus for increasing the limit (before we ASSERT) was that this ASSERT // was firing with wxWidgets 3.0, which has slightly different sizer behaviour. wxASSERT_MSG(sz.x <= 1000 && sz.y <= 750, wxT("Preferences dialog exceeds max size")); if (sz.x > 800) { sz.x = 800; } if (sz.y > 600) { sz.y = 600; } // Set the minimum height to be slightly bigger than default, as fix for bug 161. // The magic number 7 was determined by Ed's experimentation. // Frankly, this is a hack to work around a bug in wxTreebook, and // will have to be revisited if we add another category to mCategories. // JKC later added a category and 20 onto the 7. sz.y += 7 + 20; SetSize(sz); SetMinSize(sz); // Center after all that resizing, but make sure it doesn't end up // off-screen CentreOnParent(); }
bool Texture2D::SetData(Image* image, bool useAlpha) { if (!image) { URHO3D_LOGERROR("Null image, can not load texture"); return false; } // Use a shared ptr for managing the temporary mip images created during this function SharedPtr<Image> mipImage; unsigned memoryUse = sizeof(Texture2D); int quality = QUALITY_HIGH; Renderer* renderer = GetSubsystem<Renderer>(); if (renderer) quality = renderer->GetTextureQuality(); if (!image->IsCompressed()) { unsigned char* levelData = image->GetData(); int levelWidth = image->GetWidth(); int levelHeight = image->GetHeight(); unsigned components = image->GetComponents(); unsigned format = 0; // Discard unnecessary mip levels for (unsigned i = 0; i < mipsToSkip_[quality]; ++i) { mipImage = image->GetNextLevel(); image = mipImage; levelData = image->GetData(); levelWidth = image->GetWidth(); levelHeight = image->GetHeight(); } switch (components) { case 1: format = useAlpha ? Graphics::GetAlphaFormat() : Graphics::GetLuminanceFormat(); break; case 2: format = Graphics::GetLuminanceAlphaFormat(); break; case 3: format = Graphics::GetRGBFormat(); break; case 4: format = Graphics::GetRGBAFormat(); break; default: assert(false); // Should never reach here break; } // If image was previously compressed, reset number of requested levels to avoid error if level count is too high for new size if (IsCompressed() && requestedLevels_ > 1) requestedLevels_ = 0; SetSize(levelWidth, levelHeight, format); for (unsigned i = 0; i < levels_; ++i) { SetData(i, 0, 0, levelWidth, levelHeight, levelData); memoryUse += levelWidth * levelHeight * components; if (i < levels_ - 1) { mipImage = image->GetNextLevel(); image = mipImage; levelData = image->GetData(); levelWidth = image->GetWidth(); levelHeight = image->GetHeight(); } } } else { int width = image->GetWidth(); int height = image->GetHeight(); unsigned levels = image->GetNumCompressedLevels(); unsigned format = graphics_->GetFormat(image->GetCompressedFormat()); bool needDecompress = false; if (!format) { format = Graphics::GetRGBAFormat(); needDecompress = true; } unsigned mipsToSkip = mipsToSkip_[quality]; if (mipsToSkip >= levels) mipsToSkip = levels - 1; while (mipsToSkip && (width / (1 << mipsToSkip) < 4 || height / (1 << mipsToSkip) < 4)) --mipsToSkip; width /= (1 << mipsToSkip); height /= (1 << mipsToSkip); SetNumLevels(Max((levels - mipsToSkip), 1U)); SetSize(width, height, format); for (unsigned i = 0; i < levels_ && i < levels - mipsToSkip; ++i) { CompressedLevel level = image->GetCompressedLevel(i + mipsToSkip); if (!needDecompress) { SetData(i, 0, 0, level.width_, level.height_, level.data_); memoryUse += level.rows_ * level.rowSize_; } else { unsigned char* rgbaData = new unsigned char[level.width_ * level.height_ * 4]; level.Decompress(rgbaData); SetData(i, 0, 0, level.width_, level.height_, rgbaData); memoryUse += level.width_ * level.height_ * 4; delete[] rgbaData; } } } SetMemoryUse(memoryUse); return true; }
bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style ) { if (show == m_fsIsShowing) return false; // return what? if (show) { // Preserve menubar accelerators during full-screen operation wxFrame* frame = wxDynamicCast(this, wxFrame); if (frame) { if (frame->GetMenuBar()) { wxAcceleratorTable table(wxCreateAcceleratorTableForMenuBar(frame->GetMenuBar())); if (table.IsOk()) SetAcceleratorTable(table); } #if wxUSE_TOOLBAR if (frame->GetToolBar() && frame->GetToolBar()->IsShown()) { frame->GetToolBar()->Show(false); } #endif } } #if wxUSE_TOOLBAR else { // FIXME: we need to remember whether the toolbar was previously hidden wxFrame* frame = wxDynamicCast(this, wxFrame); if (frame && frame->GetToolBar()) { frame->GetToolBar()->Show(true); } } #endif m_fsIsShowing = show; wxX11FullScreenMethod method = wxGetFullScreenMethodX11((WXDisplay*)GDK_DISPLAY(), (WXWindow)GDK_ROOT_WINDOW()); #if GTK_CHECK_VERSION(2,2,0) // NB: gtk_window_fullscreen() uses freedesktop.org's WMspec extensions // to switch to fullscreen, which is not always available. We must // check if WM supports the spec and use legacy methods if it // doesn't. if ( (method == wxX11_FS_WMSPEC) && !gtk_check_version(2,2,0) ) { if (show) { m_fsSaveFlag = style; gtk_window_fullscreen( GTK_WINDOW( m_widget ) ); } else { m_fsSaveFlag = 0; gtk_window_unfullscreen( GTK_WINDOW( m_widget ) ); } } else #endif // GTK+ >= 2.2.0 { GdkWindow *window = m_widget->window; if (show) { m_fsSaveFlag = style; GetPosition( &m_fsSaveFrame.x, &m_fsSaveFrame.y ); GetSize( &m_fsSaveFrame.width, &m_fsSaveFrame.height ); int screen_width,screen_height; wxDisplaySize( &screen_width, &screen_height ); gint client_x, client_y, root_x, root_y; gint width, height; if (method != wxX11_FS_WMSPEC) { // don't do it always, Metacity hates it m_fsSaveGdkFunc = m_gdkFunc; m_fsSaveGdkDecor = m_gdkDecor; m_gdkFunc = m_gdkDecor = 0; gdk_window_set_decorations(window, (GdkWMDecoration)0); gdk_window_set_functions(window, (GdkWMFunction)0); } gdk_window_get_origin (m_widget->window, &root_x, &root_y); gdk_window_get_geometry (m_widget->window, &client_x, &client_y, &width, &height, NULL); gdk_window_move_resize (m_widget->window, -client_x, -client_y, screen_width + 1, screen_height + 1); wxSetFullScreenStateX11((WXDisplay*)GDK_DISPLAY(), (WXWindow)GDK_ROOT_WINDOW(), (WXWindow)GDK_WINDOW_XWINDOW(window), show, &m_fsSaveFrame, method); } else // hide { m_fsSaveFlag = 0; if (method != wxX11_FS_WMSPEC) { // don't do it always, Metacity hates it m_gdkFunc = m_fsSaveGdkFunc; m_gdkDecor = m_fsSaveGdkDecor; gdk_window_set_decorations(window, (GdkWMDecoration)m_gdkDecor); gdk_window_set_functions(window, (GdkWMFunction)m_gdkFunc); } wxSetFullScreenStateX11((WXDisplay*)GDK_DISPLAY(), (WXWindow)GDK_ROOT_WINDOW(), (WXWindow)GDK_WINDOW_XWINDOW(window), show, &m_fsSaveFrame, method); SetSize(m_fsSaveFrame.x, m_fsSaveFrame.y, m_fsSaveFrame.width, m_fsSaveFrame.height); } } // documented behaviour is to show the window if it's still hidden when // showing it full screen if ( show && !IsShown() ) Show(); return true; }
DialogCard::DialogCard(wxWindow* parent, unsigned controls, const CardDeck& cards, const FlashCardOptions& options) : m_cards(cards), m_cardIndex(0), m_panelConceal(NULL), m_panelAnswer(NULL), m_htmlQuestion(NULL), m_htmlAnswer(NULL), m_buttonYes(NULL), m_buttonPartially(NULL), m_buttonNo(NULL), m_buttonNext(NULL), m_buttonPrevious(NULL), m_checkboxLearned(NULL), m_checkboxEnabled(NULL), m_staticRemember(NULL) { wxXmlResource::Get()->LoadDialog(this, parent, wxT("DialogCard")); m_panelConceal = XRCCTRL(*this, "panelConceal", wxPanel); m_panelAnswer = XRCCTRL(*this, "panelAnswer", wxPanel); m_htmlQuestion = XRCCTRL(*this, "htmlQuestion", wxHtmlWindow); m_htmlAnswer = XRCCTRL(*this, "htmlAnswer", wxHtmlWindow); m_buttonYes = XRCCTRL(*this, "buttonYes", wxButton); m_buttonPartially = XRCCTRL(*this, "buttonPartially", wxButton); m_buttonNo = XRCCTRL(*this, "buttonNo", wxButton); m_buttonNext = XRCCTRL(*this, "buttonNext", wxButton); m_buttonPrevious = XRCCTRL(*this, "buttonPrevious", wxButton); m_checkboxLearned = XRCCTRL(*this, "checkboxLearned", wxCheckBox); m_checkboxEnabled = XRCCTRL(*this, "checkboxEnabled", wxCheckBox); m_staticRemember = XRCCTRL(*this, "staticRemember", wxStaticText); m_htmlQuestion->SetFonts(options.fontNameNormal, options.fontNameFixed, options.fontSizes); m_htmlQuestion->Connect(wxEVT_LEFT_DCLICK, wxMouseEventHandler(DialogCard::OnHtmlQuestionDblClick), NULL, this); m_htmlAnswer->SetFonts(options.fontNameNormal, options.fontNameFixed, options.fontSizes); m_htmlAnswer->Connect(wxEVT_LEFT_DCLICK, wxMouseEventHandler(DialogCard::OnHtmlAnswerDblClick), NULL, this); if (IS_TRUE(controls & BIT(CARD_CTRL_LEARNED))) { m_checkboxLearned->Show(); } if (IS_TRUE(controls & BIT(CARD_CTRL_ENABLED))) { m_checkboxEnabled->Show(); } if (IS_TRUE(controls & BIT(CARD_CTRL_NAVIGATE))) { m_buttonPrevious->Show(); m_buttonNext->Show(); } if (IS_TRUE(controls & BIT(CARD_CTRL_QUIZ))) { m_staticRemember->Show(); m_buttonYes->Show(); m_buttonPartially->Show(); m_buttonNo->Show(); HideAnswer(); } UpdateCard(); SetSize(640, 480); }
MyDialog::MyDialog( wxWindow *parent, const wxString& title, const wxPoint& pos, const wxSize& size, const long WXUNUSED(style) ) : wxDialog(parent, VALIDATE_DIALOG_ID, title, pos, size, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER) { // setup the flex grid sizer // ------------------------- wxFlexGridSizer *flexgridsizer = new wxFlexGridSizer(3, 2, 5, 5); // Create and add controls to sizers. Note that a member variable // of g_data is bound to each control upon construction. There is // currently no easy way to substitute a different validator or a // different transfer variable after a control has been constructed. // Pointers to some of these controls are saved in member variables // so that we can use them elsewhere, like this one. m_text = new wxTextCtrl(this, VALIDATE_TEXT, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxTextValidator(wxFILTER_ALPHA, &g_data.m_string)); m_text->SetToolTip("uses wxTextValidator with wxFILTER_ALPHA"); flexgridsizer->Add(m_text, 1, wxGROW); // Now set a wxTextValidator with an explicit list of characters NOT allowed: wxTextValidator textVal(wxFILTER_EMPTY|wxFILTER_EXCLUDE_LIST, &g_data.m_string2); textVal.SetCharExcludes("bcwyz"); wxTextCtrl* txt2 = new wxTextCtrl(this, VALIDATE_TEXT2, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, textVal); txt2->SetToolTip("uses wxTextValidator with wxFILTER_EMPTY|wxFILTER_EXCLUDE_LIST (to exclude 'bcwyz')"); flexgridsizer->Add(txt2, 1, wxGROW); flexgridsizer->Add(new wxListBox((wxWindow*)this, VALIDATE_LIST, wxDefaultPosition, wxDefaultSize, 3, g_listbox_choices, wxLB_MULTIPLE, wxGenericValidator(&g_data.m_listbox_choices)), 1, wxGROW); m_combobox = new wxComboBox(this, VALIDATE_COMBO, wxEmptyString, wxDefaultPosition, wxDefaultSize, 3, g_combobox_choices, 0L, MyComboBoxValidator(&g_data.m_combobox_choice)); m_combobox->SetToolTip("uses a custom validator (MyComboBoxValidator)"); flexgridsizer->Add(m_combobox, 1, wxALIGN_CENTER); // This wxCheckBox* doesn't need to be assigned to any pointer // because we don't use it elsewhere--it can be anonymous. // We don't need any such pointer to query its state, which // can be gotten directly from g_data. flexgridsizer->Add(new wxCheckBox(this, VALIDATE_CHECK, wxT("Sample checkbox"), wxDefaultPosition, wxDefaultSize, 0, wxGenericValidator(&g_data.m_checkbox_state)), 1, wxALIGN_CENTER|wxALL, 15); flexgridsizer->AddGrowableCol(0); flexgridsizer->AddGrowableCol(1); flexgridsizer->AddGrowableRow(1); // setup the button sizer // ---------------------- wxStdDialogButtonSizer *btn = new wxStdDialogButtonSizer(); btn->AddButton(new wxButton(this, wxID_OK)); btn->AddButton(new wxButton(this, wxID_CANCEL)); btn->Realize(); // setup the main sizer // -------------------- wxBoxSizer *mainsizer = new wxBoxSizer( wxVERTICAL ); mainsizer->Add(flexgridsizer, 1, wxGROW | wxALL, 10); mainsizer->Add(new wxRadioBox((wxWindow*)this, VALIDATE_RADIO, wxT("Pick a color"), wxDefaultPosition, wxDefaultSize, 3, g_radiobox_choices, 1, wxRA_SPECIFY_ROWS, wxGenericValidator(&g_data.m_radiobox_choice)), 0, wxGROW | wxLEFT|wxBOTTOM|wxRIGHT, 10); mainsizer->Add(btn, 0, wxGROW | wxALL, 10); SetSizer(mainsizer); mainsizer->SetSizeHints(this); // make the dialog a bit bigger than its minimal size: SetSize(GetBestSize()*1.5); }
bool VertexBuffer::SetSize(unsigned vertexCount, unsigned elementMask, bool dynamic) { return SetSize(vertexCount, GetElements(elementMask), dynamic); }
void wxAuiFloatingFrame::SetPaneWindow(const wxAuiPaneInfo& pane) { m_pane_window = pane.window; m_pane_window->Reparent(this); wxAuiPaneInfo contained_pane = pane; contained_pane.Dock().Center().Show(). CaptionVisible(false). PaneBorder(false). Layer(0).Row(0).Position(0); // Carry over the minimum size wxSize pane_min_size = pane.window->GetMinSize(); // if the frame window's max size is greater than the min size // then set the max size to the min size as well wxSize cur_max_size = GetMaxSize(); if (cur_max_size.IsFullySpecified() && (cur_max_size.x < pane.min_size.x || cur_max_size.y < pane.min_size.y) ) { SetMaxSize(pane_min_size); } SetMinSize(pane.window->GetMinSize()); m_mgr.AddPane(m_pane_window, contained_pane); m_mgr.Update(); if (pane.min_size.IsFullySpecified()) { // because SetSizeHints() calls Fit() too (which sets the window // size to its minimum allowed), we keep the size before calling // SetSizeHints() and reset it afterwards... wxSize tmp = GetSize(); GetSizer()->SetSizeHints(this); SetSize(tmp); } SetTitle(pane.caption); // This code is slightly awkward because we need to reset wxRESIZE_BORDER // before calling SetClientSize() below as doing it after setting the // client size would actually change it, at least under MSW, where the // total window size doesn't change and hence, as the borders size changes, // the client size does change. // // So we must call it first but doing it generates a size event and updates // pane.floating_size from inside it so we must also record its original // value before doing it. const bool hasFloatingSize = pane.floating_size != wxDefaultSize; if (pane.IsFixed()) { SetWindowStyleFlag(GetWindowStyleFlag() & ~wxRESIZE_BORDER); } if ( hasFloatingSize ) { SetSize(pane.floating_size); } else { wxSize size = pane.best_size; if (size == wxDefaultSize) size = pane.min_size; if (size == wxDefaultSize) size = m_pane_window->GetSize(); if (m_owner_mgr && pane.HasGripper()) { if (pane.HasGripperTop()) size.y += m_owner_mgr->m_art->GetMetric(wxAUI_DOCKART_GRIPPER_SIZE); else size.x += m_owner_mgr->m_art->GetMetric(wxAUI_DOCKART_GRIPPER_SIZE); } SetClientSize(size); } }
TiledSpriteObjectEditor::TiledSpriteObjectEditor( wxWindow* parent, gd::Project & game_, TiledSpriteObject & object_, gd::MainFrameWrapper & mainFrameWrapper_ ) : game(game_), mainFrameWrapper(mainFrameWrapper_), object(object_) { //(*Initialize(TiledSpriteObjectEditor) wxStaticBoxSizer* StaticBoxSizer2; wxFlexGridSizer* FlexGridSizer4; wxFlexGridSizer* FlexGridSizer3; wxFlexGridSizer* FlexGridSizer5; wxFlexGridSizer* FlexGridSizer2; wxFlexGridSizer* FlexGridSizer7; wxFlexGridSizer* FlexGridSizer6; wxStaticBoxSizer* StaticBoxSizer1; wxFlexGridSizer* FlexGridSizer1; Create(parent, wxID_ANY, _("Settings of the Tiled Sprite Object"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER, _T("wxID_ANY")); FlexGridSizer1 = new wxFlexGridSizer(0, 1, 0, 0); FlexGridSizer1->AddGrowableCol(0); FlexGridSizer1->AddGrowableRow(0); Core = new wxPanel(this, ID_PANEL1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL1")); FlexGridSizer2 = new wxFlexGridSizer(0, 1, 0, 0); FlexGridSizer2->AddGrowableCol(0); FlexGridSizer2->AddGrowableRow(0); FlexGridSizer4 = new wxFlexGridSizer(0, 1, 0, 0); FlexGridSizer4->AddGrowableCol(0); FlexGridSizer4->AddGrowableRow(0); FlexGridSizer5 = new wxFlexGridSizer(0, 3, 0, 0); FlexGridSizer5->AddGrowableCol(0); StaticBoxSizer2 = new wxStaticBoxSizer(wxHORIZONTAL, Core, _("Size")); FlexGridSizer6 = new wxFlexGridSizer(0, 2, 0, 0); FlexGridSizer6->AddGrowableCol(1); StaticText7 = new wxStaticText(Core, ID_STATICTEXT7, _("Width :"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT7")); FlexGridSizer6->Add(StaticText7, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5); widthEdit = new wxTextCtrl(Core, ID_TEXTCTRL7, _("32"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL7")); FlexGridSizer6->Add(widthEdit, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticText8 = new wxStaticText(Core, ID_STATICTEXT8, _("Height :"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT8")); FlexGridSizer6->Add(StaticText8, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5); heightEdit = new wxTextCtrl(Core, ID_TEXTCTRL8, _("32"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL8")); FlexGridSizer6->Add(heightEdit, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticBoxSizer2->Add(FlexGridSizer6, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); FlexGridSizer5->Add(StaticBoxSizer2, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); FlexGridSizer4->Add(FlexGridSizer5, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); StaticBoxSizer1 = new wxStaticBoxSizer(wxHORIZONTAL, Core, _("Textures")); FlexGridSizer3 = new wxFlexGridSizer(0, 2, 0, 0); FlexGridSizer3->AddGrowableCol(0); frontTextureEdit = new wxTextCtrl(Core, ID_TEXTCTRL1, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL1")); FlexGridSizer3->Add(frontTextureEdit, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); frontAddFromBt = new wxBitmapButton(Core, ID_BITMAPBUTTON1, wxBitmap(wxImage(_T("res/addfromimagebanque.png"))), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW, wxDefaultValidator, _T("ID_BITMAPBUTTON1")); FlexGridSizer3->Add(frontAddFromBt, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); smoothCheckBox = new wxCheckBox(Core, ID_CHECKBOX1, _("Smooth texture"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1")); smoothCheckBox->SetValue(false); FlexGridSizer3->Add(smoothCheckBox, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); StaticBoxSizer1->Add(FlexGridSizer3, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); FlexGridSizer4->Add(StaticBoxSizer1, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); FlexGridSizer2->Add(FlexGridSizer4, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); StaticLine1 = new wxStaticLine(Core, ID_STATICLINE1, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE1")); FlexGridSizer2->Add(StaticLine1, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); FlexGridSizer7 = new wxFlexGridSizer(0, 3, 0, 0); imageBankBt = new wxButton(Core, ID_BUTTON3, _("Show image bank\'s editor"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON3")); FlexGridSizer7->Add(imageBankBt, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); okBt = new wxButton(Core, ID_BUTTON1, _("Ok"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1")); FlexGridSizer7->Add(okBt, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); cancelBt = new wxButton(Core, ID_BUTTON2, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON2")); FlexGridSizer7->Add(cancelBt, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5); FlexGridSizer2->Add(FlexGridSizer7, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 0); Core->SetSizer(FlexGridSizer2); FlexGridSizer2->Fit(Core); FlexGridSizer2->SetSizeHints(Core); FlexGridSizer1->Add(Core, 1, wxALL|wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 0); SetSizer(FlexGridSizer1); FlexGridSizer1->Fit(this); FlexGridSizer1->SetSizeHints(this); Connect(ID_BITMAPBUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&TiledSpriteObjectEditor::OnfrontAddFromBtClick); Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&TiledSpriteObjectEditor::OnimageBankBtClick); Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&TiledSpriteObjectEditor::OnokBtClick); Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&TiledSpriteObjectEditor::OncancelBtClick); //*) frontTextureEdit->ChangeValue(object.textureName); widthEdit->ChangeValue(gd::String::From(object.GetWidth())); heightEdit->ChangeValue(gd::String::From(object.GetHeight())); //Init the image bank editor resourcesEditor = new ResourcesEditor( this, game, mainFrameWrapper ); resourcesEditor->Refresh(); //Init wxAuiManager with two pane : the editor and the image bank editor m_mgr.SetManagedWindow( this ); gd::SkinHelper::ApplyCurrentSkin(m_mgr); m_mgr.AddPane( Core, wxAuiPaneInfo().Name( wxT( "Core" ) ).Center().CaptionVisible(false) ); m_mgr.AddPane( resourcesEditor, wxAuiPaneInfo().Name( wxT( "EI" ) ).Left().Caption( _("Images Bank Editor") ).MaximizeButton( true ).MinimizeButton( false ).Show(true).MinSize(210, 100) ); m_mgr.SetFlags( wxAUI_MGR_ALLOW_FLOATING | wxAUI_MGR_ALLOW_ACTIVE_PANE | wxAUI_MGR_TRANSPARENT_HINT | wxAUI_MGR_TRANSPARENT_DRAG | wxAUI_MGR_HINT_FADE | wxAUI_MGR_NO_VENETIAN_BLINDS_FADE ); m_mgr.Update(); SetSize(800,640); resourcesEditor->toolbar->Realize(); //Mandatory on linux to display the toolbar. }
// --------------------------------------------------------- // CMsgBodyControlEditor::SetAndGetSizeL // // Calculates and sets the size of the control and returns new size as // reference aSize. // --------------------------------------------------------- // void CMsgBodyControlEditor::SetAndGetSizeL( TSize& aSize ) { // This may change the heigh if the content has changed SetSize( aSize ); aSize = iSize; }
void GuiList::Clear() { GuiComposite::Clear(); m_selset.clear(); SetSize(Vec2f(0, 0)); // this is so we can't scroll past the bottom }
ProjectSettings::ProjectSettings(wxWindow* parent, const cxProjectInfo& project, const cxProjectInfo& parentProject): wxDialog (parent, wxID_ANY, _("Project Settings"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER), m_projectInfo(project), m_parentProject(parentProject), m_envModified(false) { // Create the notebook wxBoxSizer* mainSizer = new wxBoxSizer(wxVERTICAL); wxNotebook* notebook = new wxNotebook(this, wxID_ANY); { // Create the filter page wxPanel* filterPage = new wxPanel(notebook, wxID_ANY); { m_inheritCheck = new wxCheckBox(filterPage, ID_INHERIT, _("Inherit from parent")); m_includeDirs = new wxTextCtrl(filterPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); m_includeFiles = new wxTextCtrl(filterPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); m_excludeDirs = new wxTextCtrl(filterPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); m_excludeFiles = new wxTextCtrl(filterPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); // Layout wxBoxSizer* pageSizer = new wxBoxSizer(wxVERTICAL); pageSizer->Add(m_inheritCheck, 0, wxALL, 5); if (project.IsRoot()) pageSizer->Hide(m_inheritCheck); wxFlexGridSizer* filterSizer = new wxFlexGridSizer(4, 2, 0, 0); filterSizer->AddGrowableCol(0); filterSizer->AddGrowableCol(1); filterSizer->AddGrowableRow(1); filterSizer->AddGrowableRow(3); filterSizer->Add(new wxStaticText(filterPage, wxID_ANY, _("Include Dirs:")), 0, wxALL, 5); filterSizer->Add(new wxStaticText(filterPage, wxID_ANY, _("Include Files:")), 0, wxALL, 5); filterSizer->Add(m_includeDirs, 1, wxEXPAND|wxALL, 5); filterSizer->Add(m_includeFiles, 1, wxEXPAND|wxALL, 5); filterSizer->Add(new wxStaticText(filterPage, wxID_ANY, _("Exclude Dirs:")), 0, wxALL, 5); filterSizer->Add(new wxStaticText(filterPage, wxID_ANY, _("Exclude Files:")), 0, wxALL, 5); filterSizer->Add(m_excludeDirs, 1, wxEXPAND|wxALL, 5); filterSizer->Add(m_excludeFiles, 1, wxEXPAND|wxALL, 5); pageSizer->Add(filterSizer, 1, wxEXPAND|wxALL, 5); filterPage->SetSizer(pageSizer); notebook->AddPage(filterPage, _("Filters"), true); } if (project.IsRoot()) { m_envPage = new EnvVarsPanel(notebook); notebook->AddPage(m_envPage, _("Environment"), true); } mainSizer->Add(notebook, 1, wxEXPAND|wxALL, 5); } // Buttons mainSizer->Add(CreateButtonSizer(wxOK|wxCANCEL), 0, wxEXPAND|wxALL, 5); // Load filters const cxProjectInfo *projectToLoad = NULL; if (project.HasFilters() || project.IsRoot()) { projectToLoad = &project; } else { projectToLoad = &parentProject; m_includeDirs->Disable(); m_excludeDirs->Disable(); m_includeFiles->Disable(); m_excludeFiles->Disable(); m_inheritCheck->SetValue(true); } if (projectToLoad) { const wxString ind = wxJoin(projectToLoad->includeDirs, wxT('\n'), wxT('\0')); m_includeDirs->SetValue(ind); const wxString inf = wxJoin(projectToLoad->includeFiles, wxT('\n'), wxT('\0')); m_includeFiles->SetValue(inf); const wxString exd = wxJoin(projectToLoad->excludeDirs, wxT('\n'), wxT('\0')); m_excludeDirs->SetValue(exd); const wxString exf = wxJoin(projectToLoad->excludeFiles, wxT('\n'), wxT('\0')); m_excludeFiles->SetValue(exf); } // Load env variables if (project.IsRoot()) { m_envPage->AddVars(project.env); } notebook->ChangeSelection(0); SetSizerAndFit(mainSizer); SetSize(350, 300); CentreOnParent(); }
Box::Box(float width, float height) { SetSize(width, height); }
ExportMixerDialog::ExportMixerDialog( TrackList *tracks, bool selectedOnly, int maxNumChannels, wxWindow *parent, wxWindowID id, const wxString &title, const wxPoint &position, const wxSize& size, long style ) : wxDialog( parent, id, title, position, size, style | wxRESIZE_BORDER ) { int numTracks = 0; TrackListIterator iter( tracks ); for( Track *t = iter.First(); t; t = iter.Next() ) { if( t->GetKind() == Track::Wave && ( t->GetSelected() || !selectedOnly ) ) { numTracks++; if( t->GetChannel() == Track::LeftChannel ) { mTrackNames.Add( t->GetName() + _( " - Left" ) ); mTrackNames.Add( t->GetName() + _( " - Right" ) ); t = iter.Next(); numTracks++; } else mTrackNames.Add( t->GetName() ); } } // JKC: This is an attempt to fix a 'watching brief' issue, where the slider is // sometimes not slidable. My suspicion is that a mixer may incorrectly // state the number of channels - so we assume there are always at least two. // The downside is that if someone is exporting to a mono device, the dialog // will allow them to output to two channels. Hmm. We may need to revisit this. if (maxNumChannels < 2 ) maxNumChannels = 2; if (maxNumChannels > 32) maxNumChannels = 32; mMixerSpec = new MixerSpec( numTracks, maxNumChannels ); wxBoxSizer *vertSizer = new wxBoxSizer( wxVERTICAL ); wxWindow *mixerPanel = new ExportMixerPanel( mMixerSpec, mTrackNames, this, ID_MIXERPANEL, wxDefaultPosition, wxSize( 400, -1 ) ); vertSizer->Add( mixerPanel, 1, wxEXPAND | wxALIGN_CENTRE | wxALL, 5 ); wxBoxSizer *horSizer = new wxBoxSizer( wxHORIZONTAL ); mChannelsText = new wxStaticText( this, -1, wxString::Format( _( "Output Channels: %2d" ), mMixerSpec->GetNumChannels() ) ); horSizer->Add( mChannelsText, 0, wxALIGN_LEFT | wxALL, 5 ); wxSlider *channels = new wxSlider( this, ID_SLIDER_CHANNEL, mMixerSpec->GetNumChannels(), 1, mMixerSpec->GetMaxNumChannels(), wxDefaultPosition, wxSize( 300, -1 ) ); horSizer->Add( channels, 0, wxEXPAND | wxALL, 5 ); vertSizer->Add( horSizer, 0, wxALIGN_CENTRE | wxALL, 5 ); vertSizer->Add( CreateStdButtonSizer(this, eCancelButton|eOkButton), 0, wxEXPAND ); SetAutoLayout( true ); SetSizer( vertSizer ); vertSizer->Fit( this ); vertSizer->SetSizeHints( this ); SetSizeHints( 640, 480, 20000, 20000 ); SetSize( 640, 480 ); }
void FrontEnd::InitProperties() { SetSize(wxSize(500,400)); Centre(wxBOTH); }
FGAFSize& FGAFSize::operator= (const FGAFSize& other) { SetSize(other.Width, other.Height); return *this; }
AccelTableBaseDlg::AccelTableBaseDlg(wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style) : wxDialog(parent, id, title, pos, size, style) { if ( !bBitmapLoaded ) { // We need to initialise the default bitmap handler wxXmlResource::Get()->AddHandler(new wxBitmapXmlHandler); wxCFD7DInitBitmapResources(); bBitmapLoaded = true; } wxBoxSizer* bSizer1 = new wxBoxSizer(wxVERTICAL); this->SetSizer(bSizer1); wxBoxSizer* bSizer5 = new wxBoxSizer(wxHORIZONTAL); bSizer1->Add(bSizer5, 0, wxEXPAND, WXC_FROM_DIP(5)); m_textCtrlFilter = new wxSearchCtrl(this, wxID_ANY, wxT(""), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1,-1)), wxTE_PROCESS_ENTER); m_textCtrlFilter->SetToolTip(_("Search for a keyboard shortcut either by its keyboard shortcut or by its description")); m_textCtrlFilter->SetFocus(); m_textCtrlFilter->ShowSearchButton(true); m_textCtrlFilter->ShowCancelButton(false); bSizer5->Add(m_textCtrlFilter, 1, wxALL, WXC_FROM_DIP(5)); wxBoxSizer* bSizer4 = new wxBoxSizer(wxHORIZONTAL); bSizer1->Add(bSizer4, 1, wxEXPAND, WXC_FROM_DIP(5)); m_dvListCtrl = new wxDataViewListCtrl(this, wxID_ANY, wxDefaultPosition, wxDLG_UNIT(this, wxSize(300,200)), wxDV_VERT_RULES|wxDV_ROW_LINES|wxDV_SINGLE); bSizer4->Add(m_dvListCtrl, 1, wxALL|wxEXPAND, WXC_FROM_DIP(5)); m_dvListCtrl->AppendTextColumn(_("Menu"), wxDATAVIEW_CELL_INERT, WXC_FROM_DIP(100), wxALIGN_LEFT); m_dvListCtrl->AppendTextColumn(_("Description"), wxDATAVIEW_CELL_INERT, WXC_FROM_DIP(200), wxALIGN_LEFT); m_dvListCtrl->AppendTextColumn(_("Keyboard Shortcut"), wxDATAVIEW_CELL_INERT, WXC_FROM_DIP(-2), wxALIGN_LEFT); m_dvListCtrl->SetMinSize(wxSize(300,200)); wxBoxSizer* bSizer3 = new wxBoxSizer(wxVERTICAL); bSizer4->Add(bSizer3, 0, 0, WXC_FROM_DIP(5)); m_buttonEdit = new wxButton(this, wxID_ANY, _("&Edit..."), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1, -1)), 0); bSizer3->Add(m_buttonEdit, 0, wxALL, WXC_FROM_DIP(5)); m_buttonDefault = new wxButton(this, wxID_ANY, _("&Defaults"), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1, -1)), 0); bSizer3->Add(m_buttonDefault, 0, wxALL, WXC_FROM_DIP(5)); m_stdBtnSizer6 = new wxStdDialogButtonSizer(); bSizer1->Add(m_stdBtnSizer6, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, WXC_FROM_DIP(5)); m_button8 = new wxButton(this, wxID_OK, wxT(""), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1, -1)), 0); m_button8->SetDefault(); m_stdBtnSizer6->AddButton(m_button8); m_button10 = new wxButton(this, wxID_CANCEL, wxT(""), wxDefaultPosition, wxDLG_UNIT(this, wxSize(-1, -1)), 0); m_stdBtnSizer6->AddButton(m_button10); m_stdBtnSizer6->Realize(); SetName(wxT("AccelTableBaseDlg")); SetSize(-1,-1); if (GetSizer()) { GetSizer()->Fit(this); } if(GetParent()) { CentreOnParent(wxBOTH); } else { CentreOnScreen(wxBOTH); } #if wxVERSION_NUMBER >= 2900 if(!wxPersistenceManager::Get().Find(this)) { wxPersistenceManager::Get().RegisterAndRestore(this); } else { wxPersistenceManager::Get().Restore(this); } #endif // Connect events m_textCtrlFilter->Connect(wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(AccelTableBaseDlg::OnText), NULL, this); m_dvListCtrl->Connect(wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED, wxDataViewEventHandler(AccelTableBaseDlg::OnDVItemActivated), NULL, this); m_buttonEdit->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(AccelTableBaseDlg::OnEditButton), NULL, this); m_buttonEdit->Connect(wxEVT_UPDATE_UI, wxUpdateUIEventHandler(AccelTableBaseDlg::OnEditUI), NULL, this); m_buttonDefault->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(AccelTableBaseDlg::OnButtonDefaults), NULL, this); m_button8->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(AccelTableBaseDlg::OnButtonOk), NULL, this); }
FGAFSize& FGAFSize::operator= (const FVector2D& point) { SetSize(point.X, point.Y); return *this; }
//------------------------------------------------------------------------------ void ShowSummaryDialog::Create() { Integer bsize = 2; // border size Integer w, h; // get the config object wxConfigBase *pConfig = wxConfigBase::Get(); // SetPath() understands ".." if (summaryForEntireMission) { pConfig->SetPath(wxT("/Mission Summary")); } else { pConfig->SetPath(wxT("/Command Summary")); } wxString text = "Summary not yet available for this panel"; // Find the height of a line of test, to use when sizing the text control GetTextExtent(text, &w, &h); // label for coordinate system wxStaticText *coordSysStaticText = new wxStaticText( this, ID_CS_TEXT, wxT(GUI_ACCEL_KEY"Coordinate System"), wxDefaultPosition, wxDefaultSize, 0 ); coordSysComboBox =theGuiManager->GetCoordSysComboBox(this, ID_COMBOBOX, wxSize(150,-1)); coordSysComboBox->SetToolTip(pConfig->Read(_T("CoordinateSystemHint"))); /// the coordinate system must have a celestial body as the origin and must /// not contain a reference to a spacecraft (e.g. primary, etc.) BuildValidCoordinateSystemList(); wxSize scriptPanelSize(500, 32); if (theObject != NULL) { theObject->SetupSummary("EarthMJ2000Eq", summaryForEntireMission, physicsBasedOnly); if (summaryForEntireMission) text = theObject->GetStringParameter("MissionSummary").c_str(); else text = theObject->GetStringParameter("Summary").c_str(); // This code is flaky -- text width is height dependent??? -- on Linux: // GetTextExtent(text, &w, &h); // w = (w + 200 > 1000 ? 1000 : w + 200); // h = (h > 700 ? 700 : h); #ifdef __WXMAC__ scriptPanelSize.Set(658, 735); #else scriptPanelSize.Set(775, 735); #endif SetSize(wxDefaultCoord, wxDefaultCoord, w, h); } wxFlexGridSizer *coordSizer = new wxFlexGridSizer(2); coordSizer->Add(coordSysStaticText, 0, wxALIGN_LEFT | wxALL, bsize ); coordSizer->Add(coordSysComboBox, 0, wxGROW|wxALIGN_LEFT | wxALL, bsize ); // Set additional style wxTE_RICH to Ctrl + mouse scroll wheel to decrease or // increase text size on Windows(loj: 2009.02.05) theSummary = new wxTextCtrl(this, -1, text, wxPoint(0,0), scriptPanelSize, wxTE_MULTILINE | wxTE_READONLY | wxHSCROLL | wxTE_RICH); theSummary->SetFont(GmatAppData::Instance()->GetFont() ); theMiddleSizer->Add(coordSizer, 0, wxGROW|wxALL, 3); theMiddleSizer->Add(theSummary, 1, wxGROW|wxALL, 3); }
void wxMoTimelineBandCtrl::OnMouseEvent( wxMouseEvent & event ) { //wxMessageBox("wxMoTimelineBandCtrl::Mouse event"); if ( event.Entering() ) { //SHINE!!! } if (event.LeftDown() && !m_bLeftSizeDragging) { m_bLeftSizeDragging = (-1<=event.GetX() && event.GetX()<=3); Refresh(); } if (event.LeftUp() && m_bLeftSizeDragging) { m_bLeftSizeDragging = false; Refresh(); } if (event.LeftDown() && !m_bRightSizeDragging) { m_bRightSizeDragging = ( (GetSize().GetX()-5)<event.GetX() && event.GetX()<=(GetSize().GetX()+2) ); Refresh(); } if (event.LeftUp() && m_bRightSizeDragging) { m_bRightSizeDragging = false; Refresh(); } if (event.LeftDown() && !m_bMovingDragging) { m_bMovingDragging = ( 3<event.GetX() && event.GetX()<=(GetSize().GetX()-3) ); Px = event.GetX(); Refresh(); } if (event.LeftUp() && m_bMovingDragging) { m_bMovingDragging = false; Refresh(); } if ((0<event.GetX() && event.GetX()<=3) || ( (GetSize().GetX()-3)<event.GetX() && event.GetX()<=(GetSize().GetX()+2) )) { // //m_bRightSizeDragging = false; //m_bLeftSizeDragging = true; this->SetCursor( wxCursor(wxCURSOR_SIZEWE) ); } else this->SetCursor( wxCursor() ); /* else if ( (GetSize().GetX()-3)<event.GetX() && event.GetX()<=GetSize().GetX() ) { m_bRightSizeDragging = true; m_bLeftSizeDragging = false; } else { m_bRightSizeDragging = false; m_bLeftSizeDragging = false; }*/ /*if ( m_bLeftSizeDragging || m_bRightSizeDragging ) { this->SetCursor( wxCursor(wxCURSOR_SIZEWE) ); } else this->SetCursor( wxCursor() ); */ if (event.Button(wxMOUSE_BTN_RIGHT )) { SetValue( SlideValue( event.GetX() ) ); Refresh(); } if (event.Button(wxMOUSE_BTN_LEFT )) { SetPlayValue( GetSlideValueToPlayValue( SlideValue( event.GetX() ) ) ); //moSetDuration( m_play_value ); //moAbstract::MODebug2->Push( IntToStr(m_play_value) ); Refresh(); } if (event.Dragging()) { if (event.RightIsDown()) { if (m_bStartDragging==false) { m_bStartDragging = true; wxWindow::CaptureMouse(); } SetValue( SlideValue( event.GetX() ) ); Refresh(); } if (event.LeftIsDown()) { if (m_bStartDragging==false) { m_bStartDragging = true; //m_bRightSizeDragging = ( (GetSize().GetX()-3)<event.GetX() && event.GetX()<=GetSize().GetX() ); wxWindow::CaptureMouse(); } wxPoint PW = GetPosition(); wxSize SW = GetSize(); if ( (SW.GetX()-event.GetX())>0 && m_bLeftSizeDragging) { SetSize( PW.x+event.GetX(), PW.y, SW.GetX()-event.GetX(), SW.GetY() ); } if ( event.GetX()>0 && m_bRightSizeDragging) { SetSize( PW.x, PW.y, event.GetX(), SW.GetY() ); } if ( m_bMovingDragging) { SetSize( GetParent()->ScreenToClient(wxGetMousePosition()).x-Px, PW.y, SW.GetX(), SW.GetY() ); } //SetPlayValue( GetSlideValueToPlayValue( SlideValue( event.GetX() ) ) ); //moSetDuration( m_play_value ); Refresh(); } } if (!event.Dragging()) { if (m_bStartDragging==true) { m_bStartDragging = false; wxWindow::ReleaseMouse(); } } event.Skip(); }
void GUI_Main_HTML::GUI_Resize() { SetSize(1, 1, GetParent()->GetClientSize().GetWidth()-1, GetParent()->GetClientSize().GetHeight()-1); }
void GameManager::Event(SDL_Event* event) { MessageData md; switch (event->type) { case SDL_VIDEORESIZE: SetSize(gui->Width(), gui->Height()); ResizeChildren(); break; case SDL_MOUSEBUTTONDOWN: if (mMap && mMap->HasMouseFocus()) { md.SetId("MAP_MOUSEDOWN"); md.WriteInt("id", event->button.button); messenger.Dispatch(md); } break; case SDL_MOUSEBUTTONUP: if (mMap && mMap->HasMouseFocus()) { md.SetId("MAP_MOUSEUP"); md.WriteInt("id", event->button.button); messenger.Dispatch(md); } break; case SDL_MOUSEMOTION: if (mMap && mMap->HasMouseFocus()) { md.SetId("MAP_MOUSEMOVE"); md.WriteInt("x", event->motion.x); md.WriteInt("y", event->motion.y); messenger.Dispatch(md); } break; case SDL_KEYDOWN: if (HasKeyFocusInTree()) { md.SetId("MAP_KEYDOWN"); md.WriteInt("id", event->key.keysym.sym); messenger.Dispatch(md); if (event->key.keysym.sym == SDLK_TAB && mGameMode != MODE_DUEL) { ToggleGameMode( (mGameMode == MODE_ACTION) ? MODE_CHAT : MODE_ACTION ); } } break; case SDL_KEYUP: if (HasKeyFocusInTree()) { /*if (event->key.keysym.sym == SDLK_RSHIFT || event->key.keysym.sym == SDLK_LSHIFT) { achievement_StickyKeys(); }*/ md.SetId("MAP_KEYUP"); md.WriteInt("id", event->key.keysym.sym); messenger.Dispatch(md); } break; default: break; } Frame::Event(event); if (!gui->hasKeyFocus || gui->hasKeyFocus == mMap) { if (mMap) { //TODO: Better redirection of mChat's focus if (mGameMode != MODE_ACTION) mMap->mChat->mInput->SetKeyFocus(); else if (mMap) mMap->SetKeyFocus(true); } } }
KICAD_MANAGER_FRAME::KICAD_MANAGER_FRAME( wxWindow* parent, const wxString& title, const wxPoint& pos, const wxSize& size ) : EDA_BASE_FRAME( parent, KICAD_MAIN_FRAME_T, title, pos, size, KICAD_DEFAULT_DRAWFRAME_STYLE, KICAD_MANAGER_FRAME_NAME ) { m_active_project = false; m_leftWinWidth = 60; m_manager_Hokeys_Descr = NULL; // Create the status line (bottom of the frame static const int dims[3] = { -1, -1, 100 }; CreateStatusBar( 3 ); SetStatusWidths( 3, dims ); // Give an icon wxIcon icon; icon.CopyFromBitmap( KiBitmap( icon_kicad_xpm ) ); SetIcon( icon ); // Give the last sise and pos to main window LoadSettings( config() ); SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); // Left window: is the box which display tree project m_LeftWin = new TREE_PROJECT_FRAME( this ); // Right top Window: buttons to launch applications m_Launcher = new LAUNCHER_PANEL( this ); // Add the wxTextCtrl showing all messages from KiCad: m_MessagesBox = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE | wxSUNKEN_BORDER | wxTE_READONLY ); RecreateBaseHToolbar(); ReCreateMenuBar(); m_auimgr.SetManagedWindow( this ); EDA_PANEINFO horiztb; horiztb.HorizontalToolbarPane(); EDA_PANEINFO info; info.InfoToolbarPane(); m_auimgr.AddPane( m_mainToolBar, wxAuiPaneInfo( horiztb ).Name( wxT( "m_mainToolBar" ) ).Top() ); m_auimgr.AddPane( m_LeftWin, wxAuiPaneInfo(info).Name( wxT( "m_LeftWin" ) ).Left(). BestSize( m_leftWinWidth, -1 ). Layer( 1 ) ); m_auimgr.AddPane( m_Launcher, wxTOP ); m_auimgr.GetPane( m_Launcher).CaptionVisible( false ).Row(1) .BestSize( -1, m_Launcher->GetPanelHeight() ).PaneBorder( false ).Resizable( false ); m_auimgr.AddPane( m_MessagesBox, wxAuiPaneInfo().Name( wxT( "m_MessagesBox" ) ).CentrePane().Layer( 2 ) ); m_auimgr.GetPane( m_LeftWin ).MinSize( wxSize( 80, -1) ); m_auimgr.GetPane( m_LeftWin ).BestSize(wxSize(m_leftWinWidth, -1) ); m_auimgr.Update(); }
CharMapEntry::CharMapEntry() { SetSize(-1.0f); SetEncoding(0); SetCode(0); }
/** * \brief Load the image(s), wraps LoadImage() */ bool MythUIImage::Load(bool allowLoadInBackground, bool forceStat) { d->m_UpdateLock.lockForRead(); QSize bForceSize = m_ForceSize; QString bFilename = m_Filename; bFilename.detach(); d->m_UpdateLock.unlock(); QString filename = bFilename; if (bFilename.isEmpty()) { Clear(); SetRedraw(); return false; } Clear(); // SetRedraw(); // if (!IsVisible(true)) // return false; int w = -1; int h = -1; if (!bForceSize.isNull()) { if (bForceSize.width() != -1) w = bForceSize.width(); if (bForceSize.height() != -1) h = bForceSize.height(); } QString imagelabel; int j = 0; for (int i = m_LowNum; i <= m_HighNum && !m_animatedImage; i++) { if (!m_animatedImage && m_HighNum != m_LowNum && bFilename.contains("%1")) filename = bFilename.arg(i); imagelabel = GenImageLabel(filename, w, h); // Only load in the background if allowed and the image is // not already in our mem cache ImageCacheMode cacheMode = kCacheCheckMemoryOnly; if (forceStat) cacheMode = (ImageCacheMode) ((int)kCacheCheckMemoryOnly | (int)kCacheForceStat); ImageCacheMode cacheMode2 = (!forceStat) ? kCacheNormal : (ImageCacheMode) ((int)kCacheNormal | (int)kCacheForceStat); if ((allowLoadInBackground) && (!GetMythUI()->LoadCacheImage(filename, imagelabel, GetPainter(), cacheMode)) && (!getenv("DISABLETHREADEDMYTHUIIMAGE"))) { VERBOSE(VB_GUI|VB_FILE|VB_EXTRA, LOC + QString( "Load(), spawning thread to load '%1'").arg(filename)); ImageLoadThread *bImgThread = new ImageLoadThread( this, bFilename, filename, i, bForceSize, cacheMode2); GetMythUI()->GetImageThreadPool()->start(bImgThread); } else { // Perform a blocking load VERBOSE(VB_GUI|VB_FILE|VB_EXTRA, LOC + QString( "Load(), loading '%1' in foreground").arg(filename)); QString tmpFilename; if ((filename.startsWith("/")) || (filename.startsWith("http://")) || (filename.startsWith("https://")) || (filename.startsWith("ftp://"))) tmpFilename = filename; MythImageReader imageReader(tmpFilename); if (imageReader.supportsAnimation()) { LoadAnimatedImage( imageReader, filename, bForceSize, cacheMode2); } else { MythImage *image = LoadImage( imageReader, filename, bForceSize, cacheMode2); if (image) { if (bForceSize.isNull()) SetSize(image->size()); m_ImagesLock.lock(); m_Images[j] = image; m_ImagesLock.unlock(); SetRedraw(); d->m_UpdateLock.lockForWrite(); m_LastDisplay = QTime::currentTime(); d->m_UpdateLock.unlock(); } else { m_ImagesLock.lock(); m_Images[j] = NULL; m_ImagesLock.unlock(); } } } ++j; } return true; }
Box::Box(const glm::vec2& size) { SetSize(size); }
bool wxComboBox::Create( wxWindow* pParent , wxWindowID vId , const wxString& rsValue , const wxPoint& rPos , const wxSize& rSize , int n , const wxString asChoices[] , long lStyle , const wxValidator& rValidator , const wxString& rsName ) { m_isShown = false; if (!CreateControl( pParent ,vId ,rPos ,rSize ,lStyle ,rValidator ,rsName )) return false; // // Get the right style // long lSstyle = 0L; lSstyle = WS_TABSTOP | WS_VISIBLE; // clipping siblings does not yet work // if (lStyle & wxCLIP_SIBLINGS ) // lSstyle |= WS_CLIPSIBLINGS; if (lStyle & wxCB_READONLY) lSstyle |= CBS_DROPDOWNLIST; else if (lStyle & wxCB_SIMPLE) lSstyle |= CBS_SIMPLE; // A list (shown always) and edit control else lSstyle |= CBS_DROPDOWN; if (!OS2CreateControl( wxT("COMBOBOX") ,lSstyle )) return false; // // A choice/combobox normally has a white background (or other, depending // on global settings) rather than inheriting the parent's background colour. // SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW)); for (int i = 0; i < n; i++) { Append(asChoices[i]); } SetSize( rPos.x ,rPos.y ,rSize.x ,rSize.y ); // Set height to use with sizers i.e. without the dropdown listbox wxFont vFont = GetFont(); int nEditHeight; wxGetCharSize( GetHWND(), NULL, &nEditHeight, &vFont ); nEditHeight = EDIT_HEIGHT_FROM_CHAR_HEIGHT(nEditHeight); SetInitialSize(wxSize(-1,nEditHeight+4)); // +2x2 for the border if (!rsValue.empty()) { SetValue(rsValue); } gfnWndprocEdit = (WXFARPROC)::WinSubclassWindow( (HWND)GetHwnd() ,(PFNWP)wxComboEditWndProc ); ::WinSetWindowULong(GetHwnd(), QWL_USER, (ULONG)this); Show(true); return true; } // end of wxComboBox::Create
GERBVIEW_FRAME::GERBVIEW_FRAME( wxWindow* aParent, const wxString& aTitle, const wxPoint& aPosition, const wxSize& aSize, long aStyle ) : EDA_DRAW_FRAME( aParent, GERBER_FRAME_TYPE, aTitle, aPosition, aSize, aStyle, GERBVIEW_FRAME_NAME ) { m_colorsSettings = &g_ColorsSettings; m_Layout = NULL; m_FrameName = GERBVIEW_FRAME_NAME; m_show_layer_manager_tools = true; m_showAxis = true; // true to show X and Y axis on screen m_showBorderAndTitleBlock = false; // true for reference drawings. m_HotkeysZoomAndGridList = s_Gerbview_Hokeys_Descr; m_SelLayerBox = NULL; m_DCodeSelector = NULL; m_displayMode = 0; m_drillFileHistory.SetBaseId( ID_GERBVIEW_DRILL_FILE1 ); if( m_canvas ) m_canvas->SetEnableBlockCommands( true ); // Give an icon wxIcon icon; icon.CopyFromBitmap( KiBitmap( icon_gerbview_xpm ) ); SetIcon( icon ); SetLayout( new GBR_LAYOUT() ); SetVisibleLayers( -1 ); // All 32 layers visible. SetScreen( new GBR_SCREEN( GetLayout()->GetPageSettings().GetSizeIU() ) ); // Create the PCB_LAYER_WIDGET *after* SetLayout(): wxFont font = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ); int pointSize = font.GetPointSize(); int screenHeight = wxSystemSettings::GetMetric( wxSYS_SCREEN_Y ); if( screenHeight <= 900 ) pointSize = (pointSize * 8) / 10; m_LayersManager = new GERBER_LAYER_WIDGET( this, m_canvas, pointSize ); // LoadSettings() *after* creating m_LayersManager, because LoadSettings() // initialize parameters in m_LayersManager LoadSettings(); SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y ); if( m_LastGridSizeId < ID_POPUP_GRID_LEVEL_1000 ) m_LastGridSizeId = m_LastGridSizeId; if( m_LastGridSizeId > ID_POPUP_GRID_LEVEL_0_0_1MM ) m_LastGridSizeId = ID_POPUP_GRID_LEVEL_0_0_1MM; GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId ); ReCreateMenuBar(); ReCreateHToolbar(); ReCreateOptToolbar(); m_auimgr.SetManagedWindow( this ); EDA_PANEINFO horiz; horiz.HorizontalToolbarPane(); EDA_PANEINFO vert; vert.VerticalToolbarPane(); EDA_PANEINFO mesg; mesg.MessageToolbarPane(); EDA_PANEINFO lyrs; lyrs.LayersToolbarPane(); lyrs.MinSize( m_LayersManager->GetBestSize() ); lyrs.BestSize( m_LayersManager->GetBestSize() ); lyrs.Caption( _( "Visibles" ) ); if( m_mainToolBar ) m_auimgr.AddPane( m_mainToolBar, wxAuiPaneInfo( horiz ).Name( wxT( "m_mainToolBar" ) ).Top().Row( 0 ) ); if( m_drawToolBar ) m_auimgr.AddPane( m_drawToolBar, wxAuiPaneInfo( vert ).Name( wxT( "m_drawToolBar" ) ).Right().Row( 1 ) ); m_auimgr.AddPane( m_LayersManager, lyrs.Name( wxT( "m_LayersManagerToolBar" ) ).Right().Layer( 0 ) ); if( m_optionsToolBar ) m_auimgr.AddPane( m_optionsToolBar, wxAuiPaneInfo( vert ).Name( wxT( "m_optionsToolBar" ) ).Left() ); if( m_canvas ) m_auimgr.AddPane( m_canvas, wxAuiPaneInfo().Name( wxT( "DrawFrame" ) ).CentrePane() ); if( m_messagePanel ) m_auimgr.AddPane( m_messagePanel, wxAuiPaneInfo( mesg ).Name( wxT( "MsgPanel" ) ).Bottom().Layer( 10 ) ); ReFillLayerWidget(); // this is near end because contents establish size m_LayersManager->ReFillRender(); // Update colors in Render after the config is read m_auimgr.Update(); }