Commit Graph

66 Commits

Author SHA1 Message Date
Garux
a99892751b entity, surface inspectors: clear focus widget while showing to keep global shortcuts working 2023-02-02 19:39:39 +06:00
Garux
0678e842b2 improve Surface Inspector consistency
was showing shader of last selected brush, texdef of 1st
now shows properties of single primitive
at 1st tries to show last selected primitive to be responsible to selection
prefers brushes over patches as general rule
2022-10-28 21:00:55 +03:00
Garux
9d3d204018 Qt 2022-10-27 09:10:31 +03:00
Garux
6c129e546f store winding points in double precision 2021-11-23 14:48:00 +03:00
Garux
7be3cbda79 refactor PatchEdgeIter, Patch_getClosestTriangle 2021-11-22 12:27:55 +03:00
Garux
cf8e0e1501 handle more cases in seamless patch<>brush tex paste 2021-11-16 00:38:47 +03:00
Garux
da98e8fde3 various code cleanups 2021-10-30 16:04:31 +03:00
Garux
0c390241c8 fix formatting 2021-10-26 18:16:24 +03:00
Garux
8d71aea059 * Q2::surface inspector::brush face flags: add "Unset flags" button 2021-08-24 18:57:59 +03:00
Garux
a1daaa2946 remove commented out code 2021-07-02 17:19:56 +03:00
Garux
da55e8cbb4 * ctrl + m3/drag: also paste texture seamlessly from brush face to patch and vice versa, when face edje is adjacent to patch edje 2021-07-02 17:16:50 +03:00
Garux
da98f5f9d9 add and use Entity::getClassName(), Entity::hasKeyValue()
do not return default value from getKeyValue()
2021-05-16 10:13:42 +03:00
Garux
2222100316 indent classes, align by spaces 2021-03-24 00:25:15 +03:00
Garux
d734199601 manage path routines 2021-01-22 02:21:54 +03:00
Garux
f6bf97f27e gtk_spin_button_get_value_as_float -> gtk_spin_button_get_value 2020-05-22 01:16:01 +03:00
Garux
ab7eb468ec gtk_widget_set_usize -> gtk_widget_set_size_request
-2 in gtk_widget_set_usize() means 'don't change given dimension'
-2 in gtk_widget_set_size_request() = early quit function w/o an effect, thus change to -1
2020-05-21 16:27:33 +03:00
Garux
62603d25fb don't check equality to gboolean FALSE and TRUE 2020-05-21 16:27:31 +03:00
Garux
70cf8c4bdd gtk_widget_ref/gtk_widget_unref -> g_object_ref/g_object_unref 2020-05-21 16:27:28 +03:00
Garux
0140da6e72 only #include <gtk/gtk.h> 2020-05-21 16:27:17 +03:00
Garux
4f8e6e7ee5 fix the rest of errors with CFLAGS+="-DGSEAL_ENABLE" except accel_label->accel_string required hack 2020-05-21 16:27:14 +03:00
Garux
ff33df7d45 replace GTK_WIDGET_VISIBLE -> gtk_widget_get_visible() 2020-05-19 23:46:54 +03:00
Garux
112f66fb06 remove deprecated GTK_WIDGET_SET_FLAGS GTK_WIDGET_UNSET_FLAGS use 2020-05-19 22:08:00 +03:00
Garux
e1a145c234 remove excess (GdkModifierType) casts 2020-05-19 21:40:52 +03:00
Garux
13f877b7db forward path slashes entered in surface inspector, find/replace dialog::replace 2020-05-05 12:31:53 +03:00
Garux
71c63fbdc6 * fix alt + m1 indirect faces picking, when object is partially or fully out of camera view
refactor math functions
2019-04-28 20:54:29 +03:00
Garux
a1abcd8c83 * bindable commands TextureProjectAxial/Ortho/Cam, using default texdef, unlike surface inspector buttons 2019-03-08 12:52:19 +03:00
Garux
fb53d5094a some more sensible gui default sizes 2019-01-11 18:35:37 +03:00
Garux
3706e1131a binds...
* m3: copy texture name, alignment +new: color, light power, color
	* alt + m3/drag: paste texture name (to pointed and selected stuff)
	* shift + m3/drag: paste texture name, alignment +new: light power
	* ctrl + m3/drag: paste texture seamlessly between brush faces +new: light color
	* ctrl + shift + m3/drag: project texture from copied brush face +new: paste light power, color
	* alt + ctrl/shift/ctrl+shift + m3/drag: respective texture alignment paste w/o texture name
fix void NormalizeColor( Vector3& color )
fix: reset texture clipboard texdef on selection in texbro (was only resetting scales)
2018-08-11 23:36:50 +03:00
Garux
7908a2b593 simplify TextureBrowser_GetSelectedShader, TextureBrowser_SetSelectedShader usage
assuming, that we have only TextureBrowser
2018-08-03 17:32:57 +03:00
Garux
f0057a86f4 * bindable commands FitTextureWidth, FitTextureHeight, FitTextureWidthOnly, FitTextureHeightOnly 2018-06-24 13:14:54 +03:00
Garux
e1bc4a8ba9 fix quaternion_for_unit_vectors, quaternion_normalised
RotateFree got lower (realistic) sensitivity
2018-05-16 02:59:18 +03:00
Garux
a18a5d7c9b * snap Clipper points to brush planes, edges and vertices (in 3d camera) 2018-05-15 02:43:10 +03:00
Garux
48d75b777d * brush creation in camera; alt = modify height 2018-04-06 12:26:06 +03:00
Garux
b078ec3ad0 small cleaning 2018-04-04 13:34:12 +03:00
Garux
cf580963c2 more globalWarningStream() globalErrorStream() use 2018-03-21 16:06:22 +03:00
Garux
552d0ac083 bind * shift + n: brush texture reset + patch texture cap 2018-03-04 17:37:28 +03:00
Garux
2859ea7e9c * Valve220: fix uninitialized texture buffer basis 2018-03-04 13:52:34 +03:00
Garux
658cbe45ba * menu Brush->Copy/PasteFaceTexture: show contextual Copy/Paste commands (dependant on faces selected) 2018-03-04 12:46:45 +03:00
Garux
c878333c7b * m2 in Surface Inspector->fit width/height = fit width/height, keep height/width 2018-02-19 17:28:05 +03:00
Garux
c1b9b17635 * do 'project from face' in face2face seamless function for parallel faces 2018-02-19 13:09:10 +03:00
Garux
86a8aec283 * turn SI->project texture radiobuttons to label and 3 buttons to save clicks 2018-02-18 18:52:44 +03:00
Garux
6ac153f2f0 3 decimals precision for SI->fit hopefully will be enough 2018-02-18 16:08:19 +03:00
Garux
1f31e94aca undo 'numeric GtkSpinButtons in SI, arbitrary rotation dialog' (aint flexible enough for input) 2018-02-04 20:56:45 +03:00
Garux
2417ac196c * fix: reread values from SI on FitTexture command 2017-12-15 03:59:10 +03:00
Garux
1658f27ee6 * Valve220: keep basis on 'paintTexture&Projection' (shift+m3); 'projectTexture' (ctrl+shift+m3) performs basis copy 2017-11-10 14:56:35 +03:00
Garux
5761c6006b GtkSpinButtons are numeric only in SI, arbitrary rotation dialog, preferences
SI: fit: fewer trailing zeros
SI: rotate: page_increment = 45 (activatable by scroll click on arrows; RMB = min/max)
2017-10-19 21:51:22 +03:00
Garux
2adf7f8a4f improve textureProjectionSetSelected -rotation output in BP mode 2017-10-19 10:15:59 +03:00
Garux
097c1e8fc5 * Valve220: fix patch.CapTexture (patch had invalid control points: define basis)
* Curve->Simple patch mesh: CapTexture() instead of NaturalTexture() for convinience
2017-10-02 20:44:36 +03:00
Garux
f4149f1549 * Valve220: use face projection by default
* Valve220: Project {axial, ortho, cam, from face} functions
	* conversions between AP, BP and Valve220 brush types; conversions to Brush Primitives and Valve220 formats are lossless
	* detect brush format and automatically convert to current one on map Import and Paste
	* Valve220: fixed Reset function, implemented Rotate one
	* Valve220: fix overwriting basis on brush clone/map import ( in Face( Face ) constructor )
	* BP: fix: normalize shift values during import, arbitrary projections and face->fit
	* Valve220: fix texture lock for scaling, fix for negative texdef.scale
2017-10-02 18:11:43 +03:00
Garux
65e6d4a560 del douplicated code in seamless texturing->line 2017-09-17 11:52:23 +03:00