Commit Graph

89 Commits

Author SHA1 Message Date
Garux c50c044a31 fix volatile text rendering artifacts with MSAA
a0a47640b0
2020-10-29 22:00:17 +03:00
Garux 35309c8c6c fix Gdk-CRITICAL **: IA__gdk_window_get_window_type: assertion 'GDK_IS_WINDOW (window)' failed 2020-06-05 23:49:04 +03:00
Garux 3e7ee32ded make extension_equal() check case insensitive in Unix
allows most of file types with non lowercase extension
known issue: textures with non lowercase extension in loose folders are visible now, but they aren't loaded, because it leads to fopen( filename.lowercase_extension )
2020-06-05 21:11:26 +03:00
Garux 4fdb720123 fix Gtk-CRITICAL **: gtk_widget_grab_default: assertion 'gtk_widget_get_can_default (widget)' failed 2020-06-05 21:04:18 +03:00
Garux 613cf37150 ensure, that opengl font glyph height >= width to prevent overruns 2020-06-05 21:02:09 +03:00
Garux e357564ff8 remove more of deprecated Gtk stuff 2020-06-05 20:40:12 +03:00
Garux 95809d79f5 use GtkToolItem in toolbars 2020-05-27 08:18:22 +03:00
Garux 495e90e6a9 gtk_notebook_set_page -> gtk_notebook_set_current_page
gtk_container_children -> gtk_container_get_children
gtk_notebook_set_page -> gtk_notebook_set_current_page
gtk_widget_hide_all -> gtk_widget_hide
gtk_check_menu_item_set_state -> gtk_check_menu_item_set_active
gtk_radio_menu_item_group -> gtk_radio_menu_item_get_group
2020-05-23 22:54:26 +03:00
Garux 64e0c125e8 replace gtk_toolbar_append_space() 2020-05-22 01:16:02 +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 e8998ab4a8 replace gtk_radio_button_group() 2020-05-21 16:27:26 +03:00
Garux 620fbffea7 only #include <gdk/gdk.h> <gdk/gdkwin32.h> <gdk/gdkx.h> <gdk/gdkkeysyms.h> 2020-05-21 16:27:19 +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 50e1af1a16 update GtkWidget allocation access method 2020-05-21 16:27:03 +03:00
Garux 065862627e update GtkAdjustment data access methods 2020-05-21 16:24:50 +03:00
Garux 12263f74d1 use gtk_widget_get_window() instead of widget->window 2020-05-21 16:24:40 +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 0831e0966d Replace GDK_<keyname> with GDK_KEY_<keyname> 2020-05-19 21:15:11 +03:00
Garux a0a47640b0 * new rendering system for volatile text
(symbols rendered to atlas texture)
deliver position via glRasterPos + glGet GL_CURRENT_RASTER_POSITION to avoid adding calculations of screen coords in many spots
solves problem: pango 1.44 switch freetype->harfbuzz = bitmap fonts aren't available, in particular no gdk_gl_font_use_pango_font()
text is rendered from font bottom (was from baseline)(latter is wanted less often)
wgl bitmap<->pango sizes do not match, thus realign all text positions, increase default font size
make 2D axes labels, view type text, sizing info adaptive to font size
#24
fixes #42
2020-05-14 07:51:34 +03:00
Garux 0f0b251e70 remove unnecessary gdk_pixbuf_add_alpha call 2020-05-03 23:30:10 +03:00
Garux 7ae79b263d minor refactoring 2020-04-28 08:30:25 +03:00
Garux 06cd1e98ff * Model Browser: default bind '/'
m1 = assign model to selected entity nodes (shift + e to select nodes of group entities)
		m1x2 = insert "misc_model" with given model
		m1 drag = rotate model
		Preferences.Model Browser: list of * separated folderToLoad/depth values, e.g. *models/mapobjects/99*maps/1*; */99* loads root
2020-04-26 07:28:23 +03:00
Garux 7d59736ed6 print info on gdk_pixbuf_new_from_file() error 2020-04-14 19:46:38 +03:00
Garux 4b2f9d6080 * open/save dialogs: use current file path, name, focus it, if present
brushexport plugin: case insensitive extension check
2020-03-01 19:38:27 +03:00
Garux e849c95216 * build menu.customize: ctrl + c / ctrl + insert = copy, ctrl + v / shift + insert = paste build presets and command lines 2019-10-09 15:05:13 +03:00
Garux 1a18246a1f * suggest to automatically restart editor on change of preferences, which require this
* suggest to restart after selected game preference change
import of https://gitlab.com/xonotic/netradiant/merge_requests/141 e2f605b12f
2019-09-06 11:22:28 +03:00
Garux 6c9870f941 * workaround gamma bug in 2D views and texture browser with fresh nvidia drivers 2019-08-31 12:22:47 +03:00
Garux 018380da0c try extra hardcoded font names to make gtkglext bitmap font to work on linux
#24
2019-07-05 19:22:46 +03:00
Garux 57865138b9 g_free after g_object_get 2019-04-23 18:22:24 +03:00
Garux 58eb6e61d2 simplify RENDER_TEXT logic
class RenderTextLabel for text rendering
* consider texture alpha channel during rendering of shaders with qer_trans
2019-04-23 11:31:52 +03:00
Garux eff4d4224c use hardcoded opengl font names in windows only 2019-04-12 20:54:23 +03:00
Garux 11724e3d58 handle "font for OpenGL rendering was not created" case better: don't crash, don't render bs, assert 2019-04-07 17:49:23 +03:00
Garux dabcad5088 * Shortcuts edit: fix "already assigned" check
rebase shortcuts logic on 'key is lower, modifiers are allowed in struct Accelerator' idea
2019-03-08 19:31:51 +03:00
Garux 5c48131eba * rectangular selector gestures, enabling select, deselect and toggle behaviors 2018-07-23 16:25:32 +03:00
Garux bbc691a07b * more robust open/save/import dialog path handling (could crash by opening file w/o extension or with illegal one)
likely fix for extensions in uppercase in OSes with case dependent FSes
2018-07-21 22:12:51 +03:00
Garux f83dc2e891 * use external textures mipmaps generation, draw NPoT textures correctly 2018-07-10 00:54:35 +03:00
Garux 446ab50511 really support mouse_moved_epsilon system in camera freelook
use FreezePointer chain for freelook selections/manipulaions instead of extra gtk motion handler (fixes one step latency in window observer aswell)
2018-04-17 14:26:49 +03:00
Garux cf580963c2 more globalWarningStream() globalErrorStream() use 2018-03-21 16:06:22 +03:00
Garux 0bf509dc1a * fix: FBO creation was random
* disable MSAA with samples = 0, even if more is forced via driver
2018-03-05 13:48:48 +03:00
Garux 618d31bc96 * fix: don't exclude worldspawn node on region() functions, so newly created brushes are visible afterwards
* fix: region() functions work for entities, having model, which is instantiated multiple times in a scene
	* warn on Map_RegionBrush with none selected
	* fix: 'region set brush' is deleting ultimateselected only (is using one to get bounds)
	* deselect components on any region() function: could be texturized or edited implicitly
	* allow 'region set selection' in components mode
	* Map_RegionXY: deselect anything (could leave stuff selected + invisible)
2017-11-05 22:58:59 +03:00
Garux 0dfdf77c18 rename 'supported formats' in open to 'all supported formats' 2017-10-02 18:37:40 +03:00
Garux fb4c1beb49 * fix FreezePointer in linux with custom input coordinate tranformation and in win10 2017-08-08 18:30:55 +03:00
Garux a28b531d84 Radiant:
misc...
	* entity inspector, entity list->'autofocus on selection' buttons: also do FocusAllViews() on clicking them
	* focus on preferences treeview on 2nd+ call to make text search to work
	* fixed WindowPositionTracker globally: minus many particular hacks, plus correct wnds positioning in Floating viewports layout
	* fixed ToggleShown functionality: shown/hidden wnds states are saved and loaded correctly in Floating viewports layout
	* also save/load XY and Cam viewports visibility states
	* new preferences->layout icons
	* fix: stop chaseMouseMotion on mouse button release
2017-08-02 09:54:33 +03:00
Garux 6eee961fcc Radiant:
binds...
	* shift + m3: apply texture name and alignment to selected primitives and faces (m3 was inconsistent + often required quite deep planning)
	* ctrl + shift + m3: also project tex from face to selection

misc...
	* lazy cursor updates in clipper mode
	* update cursor immediately on clipper mode toggles
	* fixes and optimizations of entity names rendering; for instance: don't prerender textures for unneeded names

	FBO overlay fixes
2017-08-02 09:53:07 +03:00
Garux e14027e117 Radiant:
misc...
	* render scene to FBO to get following options:
		preferences->camera->MSAA (def = 8 samples)
		preferences->orthographic->MSAA (def = 8 samples)
		coloured camera POV icon w/o rerendering the scene
		coloured rectangular selector box w/o rerendering the scene
	* fallback to glCopyTexImage2D (NPoT), if FBO isn't available
2017-08-02 09:52:30 +03:00
Garux 62ccd942e5 Radiant:
misc...
	* oranje names for group entities, having childrens selected (also no distance cull in cam for those)
2017-08-02 09:38:53 +03:00
Garux 43d4204697 Radiant:
misc...
	* new very fast entity names rendering system
	* render entity names in cam within < 512u dist or if selected
2017-08-02 09:36:47 +03:00