本文整理汇总了C++中WindowRef::getSize方法的典型用法代码示例。如果您正苦于以下问题:C++ WindowRef::getSize方法的具体用法?C++ WindowRef::getSize怎么用?C++ WindowRef::getSize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WindowRef
的用法示例。
在下文中一共展示了WindowRef::getSize方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: connect
void TouchUi::connect( const WindowRef& window, int signalPriority )
{
mSignalPriority = signalPriority;
mWindow = window;
if ( window ) {
mConnectionTouchesBegan = window->getSignalTouchesBegan().connect( signalPriority,
[ this ]( app::TouchEvent &event ) { touchesBegan( event ); } );
mConnectionTouchesEnded = window->getSignalTouchesEnded().connect( signalPriority,
[ this ]( app::TouchEvent &event ) { touchesEnded( event ); } );
mConnectionTouchesMoved = window->getSignalTouchesMoved().connect( signalPriority,
[ this ]( app::TouchEvent &event ) { touchesMoved( event ); } );
mConnectionUpdate = app::App::get()->getSignalUpdate().connect( signalPriority,
[ this ]() { update(); } );
if ( mMask.empty() ) {
setMask( Area( ivec2( 0 ), window->getSize() ) );
}
} else {
disconnect();
}
}
示例2: Area
TouchUi::TouchUi( const WindowRef& window, int signalPriority )
{
mEnabled = true;
mEnabledConstrain = true;
mEnabledPan = true;
mEnabledRotation = true;
mEnabledScale = true;
mEnabledTap = true;
mInterpolationSpeed = 0.33f;
mNumTouchPointsMax = numeric_limits<int32_t>::max();
mNumTouchPointsMin = 1;
mPan = vec2( 0.0f );
mPanMax = vec2( numeric_limits<float>::max() );
mPanMin = vec2( -numeric_limits<float>::max() );
mPanSpeed = vec2( 1.0f );
mPanTarget = mPan;
mPanThreshold = vec2( 1.0f );
mRotationSpeed = -2.5f;
mRotationThreshold = 0.005f;
mScale = vec2( 1.0f );
mScaleMax = vec2( numeric_limits<float>::max() );
mScaleMin = vec2( 0.0f );
mScaleSpeed = vec2( 0.0067f );
mScaleSymmetry = true;
mScaleTarget = mScale;
mScaleThreshold = vec2( 1.0f );
mTapDelay = 0.07;
mTapPosition = vec2( numeric_limits<float>::min() );
mTapTime = 0.0;
mTapThreshold = 15.0f;
mTouchDelay = 0.07;
mTouchTime = 0.0;
if ( window != nullptr ) {
setMask( Area( ivec2( 0 ), window->getSize() ) );
}
connect( window, signalPriority );
}
示例3: create
void View::create (WindowRef & ciWindow)
{
try
{
initGraph (&fps, GRAPH_RENDER_FPS, "Frame Time");
initGraph (&cpuGraph, GRAPH_RENDER_MS, "CPU Time");
setSize (ciWindow->getSize());
nanogui::Window * window = new nanogui::Window (this, "Button demo");
window->setPosition (ivec2 (15, 15));
window->setLayout (new GroupLayout());
/* No need to store a pointer, the data structure will be automatically
freed when the parent window is deleted */
new Label (window, "Push buttons", "sans-bold");
Button * b = new Button (window, "Plain button");
b->setCallback ([] { cout << "pushed!" << endl; });
b = new Button (window, "Styled", ENTYPO_ICON_ROCKET);
b->setBackgroundColor (Colour (0, 0, 255, 25));
b->setCallback ([] { cout << "pushed!" << endl; });
new Label (window, "Toggle buttons", "sans-bold");
b = new Button (window, "Toggle me");
b->setFlags (Button::ToggleButton);
b->setChangeCallback ([] (bool state)
{
cout << "Toggle button state: " << state << endl;
});
new Label (window, "Radio buttons", "sans-bold");
b = new Button (window, "Radio button 1");
b->setFlags (Button::RadioButton);
b = new Button (window, "Radio button 2");
b->setFlags (Button::RadioButton);
new Label (window, "A tool palette", "sans-bold");
Widget * tools = new Widget (window);
tools->setLayout (new BoxLayout (Orientation::Horizontal,
Alignment::Middle, 0, 6));
b = new ToolButton (tools, ENTYPO_ICON_CLOUD);
b = new ToolButton (tools, ENTYPO_ICON_FF);
b = new ToolButton (tools, ENTYPO_ICON_COMPASS);
b = new ToolButton (tools, ENTYPO_ICON_INSTALL);
new Label (window, "Popup buttons", "sans-bold");
PopupButton * popupBtn = new PopupButton (window, "Popup", ENTYPO_ICON_EXPORT);
Popup * popup = popupBtn->popup();
popup->setLayout (new GroupLayout());
new Label (popup, "Arbitrary widgets can be placed here");
new CheckBox (popup, "A check box");
popupBtn = new PopupButton (popup, "Recursive popup", ENTYPO_ICON_FLASH);
popup = popupBtn->popup();
popup->setLayout (new GroupLayout());
new CheckBox (popup, "Another check box");
window = new nanogui::Window (this, "Basic widgets");
window->setPosition (ivec2 (200, 15));
window->setLayout (new GroupLayout());
new Label (window, "Message dialog", "sans-bold");
tools = new Widget (window);
tools->setLayout (new BoxLayout (Orientation::Horizontal,
Alignment::Middle, 0, 6));
b = new Button (tools, "Info");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Information, "Title", "This is an information message");
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
b = new Button (tools, "Warn");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Warning, "Title", "This is a warning message");
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
b = new Button (tools, "Ask");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Warning, "Title", "This is a question message", "Yes", "No", true);
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
std::string iconPath ("E:/Code4/nanofish/projects/qdemos/cinder/ciNanogui/assets/icons");
std::vector<std::pair<int, std::string>> icons = NanoUtil::loadImageDirectory (getContext(), iconPath);
new Label (window, "Image panel & scroll panel", "sans-bold");
PopupButton * imagePanelBtn = new PopupButton (window, "Image Panel");
imagePanelBtn->setIcon (ENTYPO_ICON_FOLDER);
popup = imagePanelBtn->popup();
VScrollPanel * vscroll = new VScrollPanel (popup);
ImagePanel * imgPanel = new ImagePanel (vscroll);
imgPanel->setImages (icons);
popup->setFixedSize (ivec2 (245, 150));
new Label (window, "Selected image", "sans-bold");
auto img = new ImageView (window);
img->setFixedSize (ivec2 (40, 40));
img->setImage (icons[0].first);
imgPanel->setCallback ([ &, img, imgPanel, imagePanelBtn] (int i)
{
//.........这里部分代码省略.........
示例4: create
void View::create (WindowRef & ciWindow, const fs::path & assetFolder)
{
try
{
initGraph (&fps, GRAPH_RENDER_FPS, "Frame Time");
initGraph (&cpuGraph, GRAPH_RENDER_MS, "CPU Time");
setSize (ciWindow->getSize());
nanogui::Window * window = new nanogui::Window (this, "Button demo");
window->setPosition (ivec2 (15, 15));
window->setLayout (new GroupLayout());
/* No need to store a pointer, the data structure will be automatically
freed when the parent window is deleted */
new Label (window, "Push buttons", "sans-bold");
Button * b = new Button (window, "Plain button");
b->setCallback ([] { cout << "pushed!" << endl; });
b = new Button (window, "Styled", ENTYPO_ICON_ROCKET);
b->setBackgroundColor (Colour (0, 0, 255, 25));
b->setCallback ([] { cout << "pushed!" << endl; });
new Label (window, "Toggle buttons", "sans-bold");
b = new Button (window, "Toggle me");
b->setFlags (Button::ToggleButton);
b->setChangeCallback ([] (bool state)
{
cout << "Toggle button state: " << state << endl;
});
new Label (window, "Radio buttons", "sans-bold");
b = new Button (window, "Radio button 1");
b->setFlags (Button::RadioButton);
b = new Button (window, "Radio button 2");
b->setFlags (Button::RadioButton);
new Label (window, "A tool palette", "sans-bold");
Widget * tools = new Widget (window);
tools->setLayout (new BoxLayout (Orientation::Horizontal,
Alignment::Middle, 0, 6));
b = new ToolButton (tools, ENTYPO_ICON_CLOUD);
b = new ToolButton (tools, ENTYPO_ICON_FF);
b = new ToolButton (tools, ENTYPO_ICON_COMPASS);
b = new ToolButton (tools, ENTYPO_ICON_INSTALL);
new Label (window, "Popup buttons", "sans-bold");
PopupButton * popupBtn = new PopupButton (window, "Popup", ENTYPO_ICON_EXPORT);
Popup * popup = popupBtn->popup();
popup->setLayout (new GroupLayout());
new Label (popup, "Arbitrary widgets can be placed here");
new CheckBox (popup, "A check box");
popupBtn = new PopupButton (popup, "Recursive popup", ENTYPO_ICON_FLASH);
popup = popupBtn->popup();
popup->setLayout (new GroupLayout());
new CheckBox (popup, "Another check box");
window = new nanogui::Window (this, "Basic widgets");
window->setPosition (ivec2 (200, 15));
window->setLayout (new GroupLayout());
new Label (window, "Message dialog", "sans-bold");
tools = new Widget (window);
tools->setLayout (new BoxLayout (Orientation::Horizontal,
Alignment::Middle, 0, 6));
b = new Button (tools, "Info");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Information, "Title", "This is an information message");
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
b = new Button (tools, "Warn");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Warning, "Title", "This is a warning message");
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
b = new Button (tools, "Ask");
b->setCallback ([&]
{
auto dlg = new MessageDialog (this, MessageDialog::Type::Warning, "Title", "This is a question message", "Yes", "No", true);
dlg->setCallback ([] (int result)
{
cout << "Dialog result: " << result << endl;
});
});
std::string iconPath = assetFolder.string();
iconPath += "/icons";
std::vector<std::pair<int, std::string>> icons = NanoUtil::loadImageDirectory (getContext(), iconPath);
new Label (window, "Image panel & scroll panel", "sans-bold");
PopupButton * imagePanelBtn = new PopupButton (window, "Image Panel");
imagePanelBtn->setIcon (ENTYPO_ICON_FOLDER);
popup = imagePanelBtn->popup();
VScrollPanel * vscroll = new VScrollPanel (popup);
ImagePanel * imgPanel = new ImagePanel (vscroll);
imgPanel->setImages (icons);
popup->setFixedSize (ivec2 (245, 150));
new Label (window, "Selected image", "sans-bold");
auto img = new ImageView (window);
img->setFixedSize (ivec2 (40, 40));
//.........这里部分代码省略.........