mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-07-29 20:21:57 +08:00
Merge branch 'master' into fs_import_svg_SPE-1984
This commit is contained in:
commit
e043a04207
@ -1,4 +1,7 @@
|
|||||||
min_slic3r_version = 2.6.2-alpha0
|
min_slic3r_version = 2.6.2-alpha0
|
||||||
|
1.11.1-alpha2 Updated print speeds in "SOLUBLE" profiles. Updated filament settings (Prusa XL).
|
||||||
|
1.11.1-alpha1 Reduced nozzle temperature in selected filament profiles (Prusa XL 0.6mm nozzle).
|
||||||
|
1.11.1-alpha0 Added additional printer checks for Prusa XL Input Shaper (Alpha).
|
||||||
1.11.0-alpha9 Added printer profiles for Prusa XL Input Shaper (Alpha). Updated Prusa MINI Input Shaper profiles. Added profiles for "Filament PM" filaments.
|
1.11.0-alpha9 Added printer profiles for Prusa XL Input Shaper (Alpha). Updated Prusa MINI Input Shaper profiles. Added profiles for "Filament PM" filaments.
|
||||||
1.11.0-alpha8 Default file extension changed to bgcode also for other nozzle diameters (MK4IS/MK3.9).
|
1.11.0-alpha8 Default file extension changed to bgcode also for other nozzle diameters (MK4IS/MK3.9).
|
||||||
1.11.0-alpha7 Updated end g-code for XL Multi-Tool. Slightly decreased PETG bed temperature (XL).
|
1.11.0-alpha7 Updated end g-code for XL Multi-Tool. Slightly decreased PETG bed temperature (XL).
|
||||||
@ -10,6 +13,9 @@ min_slic3r_version = 2.6.2-alpha0
|
|||||||
1.11.0-alpha1 Updated ramming parameters. Updated start-gcode for XL Multi-Tool. Updated output filename format.
|
1.11.0-alpha1 Updated ramming parameters. Updated start-gcode for XL Multi-Tool. Updated output filename format.
|
||||||
1.11.0-alpha0 Binary g-code, arc fitting, QOI/PNG thumbnails, 90degree XL tower, XL specific filament variants.
|
1.11.0-alpha0 Binary g-code, arc fitting, QOI/PNG thumbnails, 90degree XL tower, XL specific filament variants.
|
||||||
min_slic3r_version = 2.6.1-rc2
|
min_slic3r_version = 2.6.1-rc2
|
||||||
|
1.10.4 Reduced nozzle temperature in selected filament profiles (Prusa XL 0.6mm nozzle).
|
||||||
|
1.10.3 Added additional printer checks for Prusa XL Input Shaper (Alpha).
|
||||||
|
1.10.2 Added printer profiles for Prusa XL Input Shaper (Alpha). Updated Prusa MINI Input Shaper profiles. Added profiles for "Filament PM" filaments.
|
||||||
1.10.1 Increased MBL temperature for PET filaments (MK4, XL). PETG V0 is now UL certified for MK4. Updated end g-code for XL Multi-Tool. Slightly decreased bed temperature for some PET filaments (XL).
|
1.10.1 Increased MBL temperature for PET filaments (MK4, XL). PETG V0 is now UL certified for MK4. Updated end g-code for XL Multi-Tool. Slightly decreased bed temperature for some PET filaments (XL).
|
||||||
1.10.0 Added new profiles for Prusa MINI Input Shaper (Alpha). Enabled XL ramming feature. Prusa XL users may need to re-enable filament profiles in configuration wizard.
|
1.10.0 Added new profiles for Prusa MINI Input Shaper (Alpha). Enabled XL ramming feature. Prusa XL users may need to re-enable filament profiles in configuration wizard.
|
||||||
min_slic3r_version = 2.6.0-beta2
|
min_slic3r_version = 2.6.0-beta2
|
||||||
|
File diff suppressed because one or more lines are too long
@ -2,6 +2,7 @@
|
|||||||
///|/
|
///|/
|
||||||
///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
|
///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
|
||||||
///|/
|
///|/
|
||||||
|
#include <numeric>
|
||||||
#include "Emboss.hpp"
|
#include "Emboss.hpp"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
@ -562,7 +563,7 @@ Duplicates collect_duplicit_indices(const ExPolygons &expoly)
|
|||||||
|
|
||||||
// initialize original index locations
|
// initialize original index locations
|
||||||
std::vector<uint32_t> idx(pts.size());
|
std::vector<uint32_t> idx(pts.size());
|
||||||
iota(idx.begin(), idx.end(), 0);
|
std::iota(idx.begin(), idx.end(), 0);
|
||||||
std::sort(idx.begin(), idx.end(),
|
std::sort(idx.begin(), idx.end(),
|
||||||
[&pts](uint32_t i1, uint32_t i2) { return pts[i1] < pts[i2]; });
|
[&pts](uint32_t i1, uint32_t i2) { return pts[i1] < pts[i2]; });
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#include <charconv> // to_chars
|
#include <charconv> // to_chars
|
||||||
|
|
||||||
#include <boost/nowide/iostream.hpp>
|
#include <boost/nowide/iostream.hpp>
|
||||||
|
#include <boost/nowide/fstream.hpp>
|
||||||
#include "ClipperUtils.hpp"
|
#include "ClipperUtils.hpp"
|
||||||
#include "Emboss.hpp" // heal for shape
|
#include "Emboss.hpp" // heal for shape
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@ static choice_ctrl* create_word_local_combo(wxWindow *parent)
|
|||||||
temp->SetTextCtrlStyle(wxTE_READONLY);
|
temp->SetTextCtrlStyle(wxTE_READONLY);
|
||||||
temp->Create(parent, wxID_ANY, wxString(""), wxDefaultPosition, size, 0, nullptr);
|
temp->Create(parent, wxID_ANY, wxString(""), wxDefaultPosition, size, 0, nullptr);
|
||||||
#else
|
#else
|
||||||
temp = new choice_ctrl(parent, wxID_ANY, wxString(""), wxDefaultPosition, size, 0, nullptr, wxCB_READONLY/* | wxBORDER_SIMPLE*/);
|
temp = new choice_ctrl(parent, wxID_ANY, wxString(""), wxDefaultPosition, size, 0, nullptr, wxCB_READONLY | DD_NO_CHECK_ICON);
|
||||||
#endif //__WXOSX__
|
#endif //__WXOSX__
|
||||||
|
|
||||||
temp->SetFont(Slic3r::GUI::wxGetApp().normal_font());
|
temp->SetFont(Slic3r::GUI::wxGetApp().normal_font());
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
#include "IconManager.hpp"
|
#include "IconManager.hpp"
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
#include <numeric>
|
||||||
#include <boost/log/trivial.hpp>
|
#include <boost/log/trivial.hpp>
|
||||||
|
#include <boost/nowide/cstdio.hpp>
|
||||||
|
#include <boost/filesystem/operations.hpp>
|
||||||
|
#include <boost/algorithm/string.hpp>
|
||||||
#include "nanosvg/nanosvg.h"
|
#include "nanosvg/nanosvg.h"
|
||||||
#include "nanosvg/nanosvgrast.h"
|
#include "nanosvg/nanosvgrast.h"
|
||||||
#include "libslic3r/Utils.hpp" // ScopeGuard
|
#include "libslic3r/Utils.hpp" // ScopeGuard
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
|
#include <boost/log/trivial.hpp>
|
||||||
|
|
||||||
#include <libslic3r/Model.hpp>
|
#include <libslic3r/Model.hpp>
|
||||||
#include <libslic3r/Format/OBJ.hpp> // load_obj for default mesh
|
#include <libslic3r/Format/OBJ.hpp> // load_obj for default mesh
|
||||||
|
@ -131,7 +131,14 @@ bool ComboBox::SetBackgroundColour(const wxColour& colour)
|
|||||||
TextInput::SetBackgroundColour(colour);
|
TextInput::SetBackgroundColour(colour);
|
||||||
|
|
||||||
drop.SetBackgroundColour(colour);
|
drop.SetBackgroundColour(colour);
|
||||||
drop.SetSelectorBackgroundColor(background_color);
|
StateColor selector_colors( std::make_pair(clr_background_focused, (int)StateColor::Checked),
|
||||||
|
Slic3r::GUI::wxGetApp().dark_mode() ?
|
||||||
|
std::make_pair(clr_background_disabled_dark, (int)StateColor::Disabled) :
|
||||||
|
std::make_pair(clr_background_disabled_light, (int)StateColor::Disabled),
|
||||||
|
Slic3r::GUI::wxGetApp().dark_mode() ?
|
||||||
|
std::make_pair(clr_background_normal_dark, (int)StateColor::Normal) :
|
||||||
|
std::make_pair(clr_background_normal_light, (int)StateColor::Normal));
|
||||||
|
drop.SetSelectorBackgroundColor(selector_colors);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -179,14 +186,9 @@ int ComboBox::Insert(const wxString& item,
|
|||||||
int ComboBox::Insert(const wxString& item, const wxBitmapBundle& bitmap,
|
int ComboBox::Insert(const wxString& item, const wxBitmapBundle& bitmap,
|
||||||
unsigned int pos, void* clientData)
|
unsigned int pos, void* clientData)
|
||||||
{
|
{
|
||||||
const int n = wxItemContainer::Insert(item, pos);
|
const int n = wxItemContainer::Insert(item, pos, clientData);
|
||||||
if (n != wxNOT_FOUND) {
|
if (n != wxNOT_FOUND)
|
||||||
texts.insert(texts.begin() + n, item);
|
icons[n] = bitmap;
|
||||||
icons.insert(icons.begin() + n, bitmap);
|
|
||||||
datas.insert(datas.begin() + n, clientData);
|
|
||||||
types.insert(types.begin() + n, wxClientData_None);
|
|
||||||
drop.Invalidate();
|
|
||||||
}
|
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -206,7 +208,9 @@ void ComboBox::DoDeleteOneItem(unsigned int pos)
|
|||||||
icons.erase(icons.begin() + pos);
|
icons.erase(icons.begin() + pos);
|
||||||
datas.erase(datas.begin() + pos);
|
datas.erase(datas.begin() + pos);
|
||||||
types.erase(types.begin() + pos);
|
types.erase(types.begin() + pos);
|
||||||
|
const int selection = drop.GetSelection();
|
||||||
drop.Invalidate(true);
|
drop.Invalidate(true);
|
||||||
|
drop.SetSelection(selection);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int ComboBox::GetCount() const { return texts.size(); }
|
unsigned int ComboBox::GetCount() const { return texts.size(); }
|
||||||
@ -242,7 +246,9 @@ int ComboBox::DoInsertItems(const wxArrayStringsAdapter &items,
|
|||||||
types.insert(types.begin() + pos, type);
|
types.insert(types.begin() + pos, type);
|
||||||
++pos;
|
++pos;
|
||||||
}
|
}
|
||||||
|
const int selection = drop.GetSelection();
|
||||||
drop.Invalidate(true);
|
drop.Invalidate(true);
|
||||||
|
drop.SetSelection(selection);
|
||||||
return int(pos) - 1;
|
return int(pos) - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -286,8 +292,6 @@ void ComboBox::keyDown(wxKeyEvent& event)
|
|||||||
switch (key_code) {
|
switch (key_code) {
|
||||||
#ifndef __WXOSX__
|
#ifndef __WXOSX__
|
||||||
case WXK_RETURN:
|
case WXK_RETURN:
|
||||||
#endif
|
|
||||||
case WXK_SPACE:
|
|
||||||
if (drop_down) {
|
if (drop_down) {
|
||||||
drop.DismissAndNotify();
|
drop.DismissAndNotify();
|
||||||
} else if (drop.HasDismissLongTime()) {
|
} else if (drop.HasDismissLongTime()) {
|
||||||
@ -298,6 +302,7 @@ void ComboBox::keyDown(wxKeyEvent& event)
|
|||||||
GetEventHandler()->ProcessEvent(e);
|
GetEventHandler()->ProcessEvent(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
#endif
|
||||||
case WXK_UP:
|
case WXK_UP:
|
||||||
case WXK_DOWN:
|
case WXK_DOWN:
|
||||||
case WXK_LEFT:
|
case WXK_LEFT:
|
||||||
|
@ -30,7 +30,7 @@ public:
|
|||||||
|
|
||||||
DropDown & GetDropDown() { return drop; }
|
DropDown & GetDropDown() { return drop; }
|
||||||
|
|
||||||
virtual bool SetFont(wxFont const & font) override;
|
bool SetFont(wxFont const & font) override;
|
||||||
|
|
||||||
bool SetBackgroundColour(const wxColour& colour) override;
|
bool SetBackgroundColour(const wxColour& colour) override;
|
||||||
bool SetForegroundColour(const wxColour& colour) override;
|
bool SetForegroundColour(const wxColour& colour) override;
|
||||||
@ -38,7 +38,6 @@ public:
|
|||||||
void SetBorderColor(StateColor const& color);
|
void SetBorderColor(StateColor const& color);
|
||||||
|
|
||||||
int Append(const wxString &item, const wxBitmapBundle &bitmap = wxNullBitmap);
|
int Append(const wxString &item, const wxBitmapBundle &bitmap = wxNullBitmap);
|
||||||
|
|
||||||
int Append(const wxString &item, const wxBitmapBundle &bitmap, void *clientData);
|
int Append(const wxString &item, const wxBitmapBundle &bitmap, void *clientData);
|
||||||
|
|
||||||
int Insert(const wxString& item, const wxBitmapBundle& bitmap, unsigned int pos);
|
int Insert(const wxString& item, const wxBitmapBundle& bitmap, unsigned int pos);
|
||||||
@ -72,7 +71,7 @@ protected:
|
|||||||
unsigned int pos,
|
unsigned int pos,
|
||||||
void ** clientData,
|
void ** clientData,
|
||||||
wxClientDataType type) override;
|
wxClientDataType type) override;
|
||||||
virtual void DoClear() override;
|
void DoClear() override;
|
||||||
|
|
||||||
void DoDeleteOneItem(unsigned int pos) override;
|
void DoDeleteOneItem(unsigned int pos) override;
|
||||||
|
|
||||||
|
@ -211,6 +211,10 @@ void DropDown::SetTransparentBG(wxDC& dc, wxWindow* win)
|
|||||||
#endif //__WXMSW__
|
#endif //__WXMSW__
|
||||||
}
|
}
|
||||||
|
|
||||||
|
constexpr int slider_width = 12;
|
||||||
|
constexpr int slider_step = 5;
|
||||||
|
constexpr int items_padding = 2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Here we do the actual rendering. I put it in a separate
|
* Here we do the actual rendering. I put it in a separate
|
||||||
* method so that it can work no matter what type of DC
|
* method so that it can work no matter what type of DC
|
||||||
@ -243,11 +247,17 @@ void DropDown::render(wxDC &dc)
|
|||||||
|
|
||||||
// draw hover rectangle
|
// draw hover rectangle
|
||||||
wxRect rcContent = {{0, offset.y}, rowSize};
|
wxRect rcContent = {{0, offset.y}, rowSize};
|
||||||
|
const int text_size = int(texts.size());
|
||||||
|
|
||||||
|
const bool has_bar = rowSize.y * text_size > size.y;
|
||||||
|
if (has_bar)
|
||||||
|
rcContent.width -= slider_width;
|
||||||
|
|
||||||
if (hover_item >= 0 && (states & StateColor::Hovered)) {
|
if (hover_item >= 0 && (states & StateColor::Hovered)) {
|
||||||
rcContent.y += rowSize.y * hover_item;
|
rcContent.y += rowSize.y * hover_item;
|
||||||
if (rcContent.GetBottom() > 0 && rcContent.y < size.y) {
|
if (rcContent.GetBottom() > 0 && rcContent.y < size.y) {
|
||||||
if (selection == hover_item)
|
if (selection == hover_item)
|
||||||
dc.SetBrush(wxBrush(selector_background_color.colorForStates(states | StateColor::Checked)));
|
dc.SetBrush(wxBrush(selector_background_color.colorForStates(StateColor::Disabled)));
|
||||||
dc.SetPen(wxPen(selector_border_color.colorForStates(states)));
|
dc.SetPen(wxPen(selector_border_color.colorForStates(states)));
|
||||||
rcContent.Deflate(4, 1);
|
rcContent.Deflate(4, 1);
|
||||||
dc.DrawRectangle(rcContent);
|
dc.DrawRectangle(rcContent);
|
||||||
@ -259,7 +269,7 @@ void DropDown::render(wxDC &dc)
|
|||||||
if (selection >= 0 && (selection != hover_item || (states & StateColor::Hovered) == 0)) {
|
if (selection >= 0 && (selection != hover_item || (states & StateColor::Hovered) == 0)) {
|
||||||
rcContent.y += rowSize.y * selection;
|
rcContent.y += rowSize.y * selection;
|
||||||
if (rcContent.GetBottom() > 0 && rcContent.y < size.y) {
|
if (rcContent.GetBottom() > 0 && rcContent.y < size.y) {
|
||||||
dc.SetBrush(wxBrush(selector_background_color.colorForStates(states | StateColor::Checked)));
|
dc.SetBrush(wxBrush(selector_background_color.colorForStates(StateColor::Disabled)));
|
||||||
dc.SetPen(wxPen(selector_background_color.colorForStates(states)));
|
dc.SetPen(wxPen(selector_background_color.colorForStates(states)));
|
||||||
rcContent.Deflate(4, 1);
|
rcContent.Deflate(4, 1);
|
||||||
dc.DrawRectangle(rcContent);
|
dc.DrawRectangle(rcContent);
|
||||||
@ -274,15 +284,13 @@ void DropDown::render(wxDC &dc)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// draw position bar
|
// draw position bar
|
||||||
const int text_size = int(texts.size());
|
if (has_bar) {
|
||||||
if (rowSize.y * text_size > size.y) {
|
|
||||||
int height = rowSize.y * text_size;
|
int height = rowSize.y * text_size;
|
||||||
wxRect rect = {size.x - 6, -offset.y * size.y / height, 4,
|
wxRect rect = {size.x - slider_width - 2, -offset.y * size.y / height + 2, slider_width,
|
||||||
size.y * size.y / height};
|
size.y * size.y / height - 3};
|
||||||
dc.SetPen(wxPen(border_color.defaultColor()));
|
dc.SetPen(wxPen(border_color.defaultColor()));
|
||||||
dc.SetBrush(wxBrush(*wxLIGHT_GREY));
|
dc.SetBrush(wxBrush(selector_background_color.colorForStates(states | StateColor::Checked)));
|
||||||
dc.DrawRoundedRectangle(rect, 2);
|
dc.DrawRoundedRectangle(rect, 2);
|
||||||
rcContent.width -= 6;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// draw check icon
|
// draw check icon
|
||||||
@ -373,7 +381,7 @@ void DropDown::messureSize()
|
|||||||
}
|
}
|
||||||
if (iconSize.x > 0) szContent.x += iconSize.x + (text_off ? 0 : 5);
|
if (iconSize.x > 0) szContent.x += iconSize.x + (text_off ? 0 : 5);
|
||||||
if (iconSize.y > szContent.y) szContent.y = iconSize.y;
|
if (iconSize.y > szContent.y) szContent.y = iconSize.y;
|
||||||
szContent.y += 10;
|
szContent.y += items_padding;
|
||||||
if (texts.size() > 15) szContent.x += 6;
|
if (texts.size() > 15) szContent.x += 6;
|
||||||
if (GetParent()) {
|
if (GetParent()) {
|
||||||
auto x = GetParent()->GetSize().x;
|
auto x = GetParent()->GetSize().x;
|
||||||
@ -432,6 +440,13 @@ void DropDown::mouseDown(wxMouseEvent& event)
|
|||||||
return;
|
return;
|
||||||
// force calc hover item again
|
// force calc hover item again
|
||||||
mouseMove(event);
|
mouseMove(event);
|
||||||
|
|
||||||
|
const wxSize size = GetSize();
|
||||||
|
const int height = rowSize.y * int(texts.size());
|
||||||
|
const wxRect rect = { size.x - slider_width, -offset.y * size.y / height, slider_width - 2,
|
||||||
|
size.y * size.y / height };
|
||||||
|
slider_grabbed = rect.Contains(event.GetPosition());
|
||||||
|
|
||||||
pressedDown = true;
|
pressedDown = true;
|
||||||
CaptureMouse();
|
CaptureMouse();
|
||||||
dragStart = event.GetPosition();
|
dragStart = event.GetPosition();
|
||||||
@ -442,6 +457,7 @@ void DropDown::mouseReleased(wxMouseEvent& event)
|
|||||||
if (pressedDown) {
|
if (pressedDown) {
|
||||||
dragStart = wxPoint();
|
dragStart = wxPoint();
|
||||||
pressedDown = false;
|
pressedDown = false;
|
||||||
|
slider_grabbed = false;
|
||||||
if (HasCapture())
|
if (HasCapture())
|
||||||
ReleaseMouse();
|
ReleaseMouse();
|
||||||
if (hover_item >= 0) { // not moved
|
if (hover_item >= 0) { // not moved
|
||||||
@ -462,7 +478,10 @@ void DropDown::mouseMove(wxMouseEvent &event)
|
|||||||
wxPoint pt = event.GetPosition();
|
wxPoint pt = event.GetPosition();
|
||||||
int text_size = int(texts.size());
|
int text_size = int(texts.size());
|
||||||
if (pressedDown) {
|
if (pressedDown) {
|
||||||
wxPoint pt2 = offset + pt - dragStart;
|
const int height = rowSize.y * text_size;
|
||||||
|
const int y_step = slider_grabbed ? -height / GetSize().y : 1;
|
||||||
|
|
||||||
|
wxPoint pt2 = offset + (pt - dragStart)*y_step;
|
||||||
dragStart = pt;
|
dragStart = pt;
|
||||||
if (pt2.y > 0)
|
if (pt2.y > 0)
|
||||||
pt2.y = 0;
|
pt2.y = 0;
|
||||||
@ -477,7 +496,7 @@ void DropDown::mouseMove(wxMouseEvent &event)
|
|||||||
}
|
}
|
||||||
if (!pressedDown || hover_item >= 0) {
|
if (!pressedDown || hover_item >= 0) {
|
||||||
int hover = (pt.y - offset.y) / rowSize.y;
|
int hover = (pt.y - offset.y) / rowSize.y;
|
||||||
if (hover >= text_size) hover = -1;
|
if (hover >= text_size || slider_grabbed) hover = -1;
|
||||||
if (hover == hover_item) return;
|
if (hover == hover_item) return;
|
||||||
hover_item = hover;
|
hover_item = hover;
|
||||||
if (hover >= 0)
|
if (hover >= 0)
|
||||||
@ -489,7 +508,7 @@ void DropDown::mouseMove(wxMouseEvent &event)
|
|||||||
void DropDown::mouseWheelMoved(wxMouseEvent &event)
|
void DropDown::mouseWheelMoved(wxMouseEvent &event)
|
||||||
{
|
{
|
||||||
auto delta = event.GetWheelRotation() > 0 ? rowSize.y : -rowSize.y;
|
auto delta = event.GetWheelRotation() > 0 ? rowSize.y : -rowSize.y;
|
||||||
wxPoint pt2 = offset + wxPoint{0, delta};
|
wxPoint pt2 = offset + wxPoint{0, slider_step * delta};
|
||||||
int text_size = int(texts.size());
|
int text_size = int(texts.size());
|
||||||
if (pt2.y > 0)
|
if (pt2.y > 0)
|
||||||
pt2.y = 0;
|
pt2.y = 0;
|
||||||
|
@ -41,6 +41,7 @@ class DropDown : public wxPopupTransientWindow
|
|||||||
ScalableBitmap check_bitmap;
|
ScalableBitmap check_bitmap;
|
||||||
|
|
||||||
bool pressedDown = false;
|
bool pressedDown = false;
|
||||||
|
bool slider_grabbed = false;
|
||||||
boost::posix_time::ptime dismissTime;
|
boost::posix_time::ptime dismissTime;
|
||||||
wxPoint offset; // x not used
|
wxPoint offset; // x not used
|
||||||
wxPoint dragStart;
|
wxPoint dragStart;
|
||||||
|
@ -24,10 +24,10 @@ StaticBox::StaticBox()
|
|||||||
{
|
{
|
||||||
border_color = StateColor(std::make_pair(clr_border_disabled, (int) StateColor::Disabled),
|
border_color = StateColor(std::make_pair(clr_border_disabled, (int) StateColor::Disabled),
|
||||||
#ifndef __WXMSW__
|
#ifndef __WXMSW__
|
||||||
std::make_pair(clr_border_nornal, (int) StateColor::Focused),
|
std::make_pair(clr_border_normal, (int) StateColor::Focused),
|
||||||
#endif
|
#endif
|
||||||
std::make_pair(clr_border_hovered, (int) StateColor::Hovered),
|
std::make_pair(clr_border_hovered, (int) StateColor::Hovered),
|
||||||
std::make_pair(clr_border_nornal, (int) StateColor::Normal));
|
std::make_pair(clr_border_normal, (int) StateColor::Normal));
|
||||||
#ifndef __WXMSW__
|
#ifndef __WXMSW__
|
||||||
border_color.setTakeFocusedAsHovered(false);
|
border_color.setTakeFocusedAsHovered(false);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
#ifndef slic3r_UI_Colors_hpp_
|
#ifndef slic3r_UI_Colors_hpp_
|
||||||
#define slic3r_UI_Colors_hpp_
|
#define slic3r_UI_Colors_hpp_
|
||||||
|
|
||||||
static const int clr_border_nornal = 0x646464;//0xDBDBDB;
|
static const int clr_border_normal = 0x646464;//0xDBDBDB;
|
||||||
static const int clr_border_hovered = 0xED6B21;//0x00AE42;
|
static const int clr_border_hovered = 0xED6B21;//0x00AE42;
|
||||||
static const int clr_border_disabled = 0x646464;//0xDBDBDB;
|
static const int clr_border_disabled = 0x646464;//0xDBDBDB;
|
||||||
|
|
||||||
static const int clr_background_nornal_light = 0xFFFFFF;
|
static const int clr_background_normal_light = 0xFFFFFF;
|
||||||
static const int clr_background_nornal_dark = 0x2B2B2B;//0x434343;
|
static const int clr_background_normal_dark = 0x2B2B2B;//0x434343;
|
||||||
static const int clr_background_focused = 0xED6B21;//0xEDFAF2;
|
static const int clr_background_focused = 0xED6B21;//0xEDFAF2;
|
||||||
static const int clr_background_disabled_dark = 0x404040;//0xF0F0F0;
|
static const int clr_background_disabled_dark = 0x404040;//0xF0F0F0;
|
||||||
static const int clr_background_disabled_light = 0xD9D9D9;//0xF0F0F0;
|
static const int clr_background_disabled_light = 0xD9D9D9;//0xF0F0F0;
|
||||||
|
|
||||||
static const int clr_foreground_nornal = 0x262E30;
|
static const int clr_foreground_normal = 0x262E30;
|
||||||
static const int clr_foreground_focused = 0x00AE42;
|
static const int clr_foreground_focused = 0x00AE42;
|
||||||
static const int clr_foreground_disabled = 0x909090;
|
static const int clr_foreground_disabled = 0x909090;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user